簡體   English   中英

如何使用打包程序並與自動縮放組集成來更新自定義AMI?

[英]How to update custom AMIs using packer and integrated with auto-scaling group?

目標:保持最短的啟動時間,以使實例達到負載平衡並減少故障排除時間。

方法:

  1. 為ec2實例創建基本的定制AMI
  2. 在每個發行版和軟件補丁(與正常運行的實例相關的代碼和軟件更新)上更新/重新捆綁自定義AMI。 2.a. Packer /任何CI使用情況都可以更新嗎? 如果是這樣,怎么辦? (無法在軟件包的文檔中找到分步方法)
  3. 使用廚師自動執行步驟1和步驟2。
  4. 將此AMI集成到“自動縮放”組中(對此進行了實驗)。
  5. 將負載均衡器映射到ASG [完成]。
  6. 發生故障時,通過從具有LB的ASG中的更新的AMI調出實例來維護所需的實例數。

症結:終止不健康的實例並通過ami asap提出健康的實例。

-PS:我看過[ http://blog.kik.com/2016/03/09/using-packer-io-to-optimize-and-manage-ami-creation/]https: //alestic.com/

討論將不再使用docker。

但是仍然無法找到一種清晰的方法。

在現有ASG中換出新AMI的最簡單方法是更新啟動配置,然后使用舊AMI ID一步一步殺死任何實例。 ASG將根據需要啟動新實例,該實例應使用新的AMI。 如果您想變得更高級(例如使舊實例保持活動狀態以便快速回滾),請使用Spinnaker之類的工具,它可以將每個新的AMI作為新的對應ASG啟用,然后在未檢測到問題的情況下重新映射ELB以交換流量,然后再進行更新當您確定部署良好時,它將殺死舊的ASG和所有關聯的實例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM