Amazon-Ec2

如何通過在兩個實例之間切換來自動更新 EC2 Linux 實例而不停機?

  • April 12, 2022

簡而言之 - 作業系統 Amazon Linux 或 Ubuntu。一個 EC2 實例(或 OpsWorks 實例?)正在執行。每天啟動第二個實例,用最新的安全更新更新它,安裝我的應用程序。關閉第一個實例。每天重複…

AWS文件指出

預設情況下,AWS OpsWorks 會在設置過程中自動安裝最新更新… 我們建議您… 創建並啟動新實例以替換您目前的線上實例。然後刪除目前實例。新實例將在安裝過程中安裝最新的安全更新檔集。

如何自動化這個過程?

我知道,我可以通過 CLI 啟動一個微實例來管理這個過程,但我更喜歡使用一些 AWS 內置工具,這樣我就可以獲得失敗通知,添加一些冗餘(如果 CLI 實例失敗),一切都會繼續處理新的 CLI / AWS API 版本等。

我錯過了一些優雅的方法嗎?

更新:能夠使用現有的彈性 IP 是首選。

在 ELB 後面使用 EC2 實例。

啟動後,您的節點應下載並安裝最新的安全更新,並進行任何其他必要的配置以使您的應用程序執行。

至於循環出您的實例,每天一次:

  1. 創建第二個 EC2 節點
  2. 等待它自行配置並變得可用
  3. 將第二個節點添加到 ELB
  4. 從 ELB 中移除舊節點
  5. 拍攝頭部的舊節點

以上所有內容都可以使用各種 AWS API 輕鬆實現自動化,甚至可以作為 Lambda 作業。

引用自:https://serverfault.com/questions/787419