使用自動化手冊升級 EC2 Windows 執行個體 - Amazon Elastic Compute Cloud

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用自動化手冊升級 EC2 Windows 執行個體

您可以 AWS 使用自動 AWS Systems Manager 化手冊在上執行 Windows 和SQL伺服器執行個體的自動升級。

自動升級程序會使用下列 AWS 服務:

  • AWS Systems Manager。 AWS Systems Manager 是一個功能強大的統一介面,可集中管理您的 AWS 資源。如需詳細資訊,請參閱《AWS Systems Manager 使用者指南》

  • AWS Systems Manager 代理程SSM式 (代理程式) 是可在 Amazon EC2 執行個體、現場部署伺服器或虛擬機器 (VM) 上安裝和設定的 Amazon 軟體。SSM代理程式可讓 Systems Manager 更新、管理及設定這些資源。此代理程式會處理 AWS Cloud 中來自 Systems Manager 服務的申請,然後依照要求中的指定執行。如需詳細資訊,請參閱《使用指南》中的〈AWS Systems Manager 使用SSM代理程式

  • AWS Systems Manager SSM手冊。R SSM unbook 會定義系統管理員在受管理的執行個體上執行的動作。SSMrunbook 使用 JavaScript 物件標記法 (JSON) 或YAML,它們包括您指定的步驟和參數。本主題使用兩個 Systems Manager 手SSM冊進行自動化。如需詳細資訊,請參閱 AWS Systems Manager 使用者指南中的 AWS Systems Manager Automation runbook 參考

執行選項

當您在 Systems Manager 主控台選取 Automation (自動化) 時,請選取 Execute (執行)。在您選取自動化文件後,系統會提示您選取自動化執行選項。請從以下選項中選擇。在本主題稍後所提供途徑的步驟中,我們使用 Simple execution (簡易執行) 選項。

簡易執行

如果您想要更新單一執行個體,但不想經歷每個自動化步驟來稽核結果,請選擇此選項。稍後的升級步驟中會進一步詳述此選項。

Rate control (比率控制)

如果您要對多個執行個體套用升級,請選擇此選項。請定義以下設定。

  • Parameter (參數)

    此設定 (也在 Multi-Account and Region (多帳戶和區域) 設定中) 定義自動化如何展開。

  • 目標

    選取您要套用自動化的目標。此設定也在 Multi-Account and Region (多帳戶和區域) 設定中。

  • Parameter Values (參數值)

    使用自動化文件參數中定義的值。

  • Resource Group (資源群組)

    在中 AWS,資源是您可以使用的實體。範例包括 Amazon EC2 執行個體、 AWS CloudFormation 堆疊或 Amazon S3 儲存貯體。如果您使用多個資源,則將它們作為一個組進行管理可能會很有用,而不是從一個服務移動到另一個 AWS 服務的每個任務。在某些情況下,您可能會想要管理大量相關資源,EC2例如組成應用程式層的執行個體。在此情況下,您在這些資源上可能需要一次執行大量動作。

  • Tags (標籤)

    標籤可協助您以不同的方式對 AWS 資源進行分類,例如,依目的、擁有者或環境。此分類在您擁有許多相同類型的資源時很有用。您可以使用指派的標籤快速識別特定資源。

  • Rate Control (比率控制)

    Rate Control (比率控制) 也在 Multi-Account and Region (多帳戶和區域) 設定中。當您設定比率控制參數時,請以目標計數或機群的百分比,定義機群中有多少要套用自動化。

Multi-Account and Region (多帳戶和區域)

除了 Rate Control (比率控制) 下指定的參數 (也用在 Multi-Account and Region (多帳戶和區域) 設定中),另外還有兩個設定:

  • 帳戶和組織單位 (OUs)

    指定您要執行自動化的多個帳戶。

  • AWS 區域

    指定您要 AWS 區域 在其中執行自動化操作的多個位置。

手動執行

此選項類似於 Simple execution (簡易執行),但可讓您逐步完成每個自動化步驟並稽核結果。

升級 Windows Server

該手AWSEC2-CloneInstanceAndUpgradeWindows冊從您的帳戶中的 Windows 服務器實例創建一個 Amazon 機器映像(AMI),並將其升級AMI到您選擇的支持版本。此多步驟程序需要最多兩個小時才會完成。

自動升級程序AMIs包含兩種:

  • 目前執行中的執行個體。第一個AMI是目前執行中的執行個體,未升級。這AMI是用來啟動另一個執行個體以執行就地升級。程序完成後,除非您明確要求保留原始執行個AMI體,否則系統會從您的帳戶中刪除此項目。此設定由參數處理 KeepPreUpgradeImageBackUp (預設值為false,表示AMI依預設會刪除)。

  • 升級AMI。這AMI是自動化過程的結果。

最終結果是一個AMI,也就是的升級執行個體AMI。

升級完成後,您可以AMI在 Amazon 中啟動新應用程式來測試應用程式功能VPC。測試後,在執行另一次升級前,請先安排應用程式停機時間,再完全切換至已升級的執行個體。

必要條件

若要使用自動 AWS Systems Manager 化文件自動化您的 Windows 伺服器升級,您必須執行下列工作:

  • 使用指定IAM政策建立IAM角色,以允許 Systems Manager 在 Amazon 執行個EC2體上執行自動化任務,並確認您符合使用 Systems Manager 的先決條件。如需詳細資訊,請參閱《AWS Identity and Access Management 使用指南》中的建立角色以將權限委派給 AWS 服務

  • 選取您希望如何執行自動化的選項。執行選項包括 Simple execution (簡易執行)Rate control (比率控制)Multi-account and Region (多帳戶和區域)Manual execution (手動執行)。如需關於這些選項的詳細資訊,請參閱 執行選項

  • 確認您的執行個體上已安裝 SSM Agent。如需詳細資訊,請參閱在 Windows 伺服器的 Amazon EC2 執行個體上安裝和設定SSM代理程式

  • 視窗 PowerShell 3.0 或更新版本必須安裝在您的執行個體上。

  • 對於加入 Microsoft Active Directory 網域的執行個體,建議您指定沒有連線到您的網域控制站的 SubnetId,以協助避免主機名稱衝突。

  • 執行個體子網路必須具有連線至網際網路的輸出連線,以提供 Amazon S3 AWS 服務 等存取權,以及從 Microsoft 下載修補程式的存取權。如果子網路是公用子網路且執行個體具有公用 IP 位址,或子網路是具有將網際網路流量傳送至公用NAT裝置的路由的私有子網路,則符合此需求。

  • 此自動化適用於執行 Windows Server 2008 R2、Windows Server 2012 R2、Windows Server 2016 和 Windows Server 2019 的執行個體。

  • 確認執行個體在開機磁碟中有 20 GB 的可用磁碟空間。

  • 如果執行個體未使用由提供的 Windows 授權 AWS,請指定包含 Windows 伺服器 2012 R2 安裝媒體的 Amazon EBS 快照識別碼。若要執行此作業:

    1. 確認 Amazon EC2 執行個體正在執行 Windows 伺服器 2012 或更新版本。

    2. 在執行執行個體的相同可用區域中建立 6 GB Amazon EBS 磁碟區。將磁碟區連結到執行個體。例如,將其掛載為 D 磁碟機。

    3. 以滑鼠右鍵按一下ISO並將其掛接至執行個體,例如磁碟機 E。

    4. 將驅動器 E:\ ISO 的內容複製到驅動器 D:\

    5. 為上述步驟 2 中建立的 6 GB 磁碟區建立 Amazon EBS 快照。

Windows Server 升級限制

此自動化不支援升級 Windows 網域控制站、叢集或 Windows 桌面作業系統。此外,此自動化操作不支援已安裝下列角色的 Windows 伺服器的 Amazon EC2 執行個體:

  • 遠端桌面工作階段主機 (RDSH)

  • 遠端桌面連線代理人 (RDCB)

  • 遠端桌面虛擬化主機 (RDVH)

  • 遠端桌面 Web 存取 (RDWA)

執行 Windows Server 自動升級的步驟

請按照以下步驟使用 AWSEC2-CloneInstanceAndUpgradeWindows 自動化手冊升級您的 Windows 服務器實例。

  1. AWS Management Console (AWS 管理主控台) 開啟 Systems Manager。

  2. 從左側導覽窗格中,在 Change Management (變更管理) 下選擇 Automation (自動化)。

  3. 選擇 Execute automation (執行自動化)

  4. 搜尋稱為 AWSEC2-CloneInstanceAndUpgradeWindows 的自動化文件。

  5. 當文件名稱出現時,請選取它。選取此文件時,將會出現文件詳細資訊。

  6. 選擇 Execute automation (執行自動化) 以輸入此文件的參數。在頁面頂端,保持選取 Simple execution (簡易執行)

  7. 根據下列指導,輸入所要求的參數。

    • InstanceID

      類型:字串

      (必要) 執行安裝SSM代理程式的執行個體視窗伺服器 2008 年 R2、2016 年或 2019 年。

    • InstanceProfile.

      類型:字串

      (必要) IAM 執行個體設定檔。這是用來針對 Amazon 執行個EC2體和執行 Systems Manager 自動化的IAM角色 AWS AMIs。如需詳細資訊,請參閱AWS Systems Manager 使用指南中的「為 Systems Manager 建立IAM執行個體設定檔」。

    • TargetWindowsVersion

      類型:字串

      (必要) 選取目標 Windows 版本。

    • SubnetId

      類型:字串

      (必要) 這是升級程序的子網路以及來源EC2執行個體所在的位置。確認子網路具有連線至 AWS 服務 (包括 Amazon S3) 以及 Microsoft 的輸出連線 (以便下載修補程式)。

    • KeepPreUpgradedBackUp

      類型:字串

      (選用) 如果此參數設為 true,自動化會保留從執行個體建立的映像。預設設定為 false

    • RebootInstanceBeforeTakingImage

      類型:字串

      (選用) 預設為 false (不重新啟動)。如果將此參數設定為true,Systems Manager 會先重新啟動執行個體,然後再建立升級AMI的執行個體。

  8. 輸入參數後,選擇 Execute (執行)。自動化開始時,您可以監控執行進度。

  9. 自動化操作完成後,您將看到 AMI ID。您可以啟動AMI以確認 Windows 作業系統是否已升級。

    注意

    自動化沒有必要執行所有步驟。這些步驟取決於自動化和執行個體的行為。Systems Manager 可能略過有些非必要的步驟。

    此外,某些步驟可能會逾時。Systems Manager 會嘗試升級和安裝所有最新的修補程式。不過,根據特定步驟可定義的逾時設定,修補程式有時會逾時。發生此情況時,Systems Manager 自動化會繼續下一個步驟,以確保內部作業系統升級到目標 Windows Server 版本。

  10. 自動化完成後,您可以使用 AMI ID 啟動 Amazon EC2 執行個體以檢閱您的升級。如需如何從建立 Amazon EC2 執行個體的詳細資訊 AWS AMI,請參閱如何從自訂啟動EC2執行個體AMI?

升級SQL伺服器

AWSEC2-CloneInstanceAndUpgradeSQLServer令碼會AMI從您帳戶中EC2執行SQL伺服器的 Amazon 執行個體建立一個,然後將伺服器升級AMI到較新版本的SQL伺服器。此多步驟程序需要最多兩個小時才會完成。

在此工作流程中,自動化操作會AMI從執行個體建立,然後在您提供的子網路AMI中啟動新項目。然後,自動化會執行SQL伺服器的就地升級。升級完成後,自動化會AMI在終止升級的執行個體之前建立新的執行個體。

自動升級程序AMIs包含兩種:

  • 目前執行中的執行個體。第一個AMI是目前執行中的執行個體,未升級。這AMI是用來啟動另一個執行個體以執行就地升級。程序完成後,除非您明確要求保留原始執行個AMI體,否則系統會從您的帳戶中刪除此項目。此設定由參數處理 KeepPreUpgradeImageBackUp (預設值為false,表示AMI依預設會刪除)。

  • 升級AMI。這AMI是自動化過程的結果。

最終結果是一個AMI,也就是的升級執行個體AMI。

升級完成後,您可以AMI在 Amazon 中啟動新應用程式來測試應用程式功能VPC。測試後,在執行另一次升級前,請先安排應用程式停機時間,再完全切換至已升級的執行個體。

必要條件

若要使用自動 AWS Systems Manager 化文件自動化您的SQL伺服器升級,您必須執行下列工作:

  • 使用指定IAM政策建立IAM角色,以允許 Systems Manager 在 Amazon 執行個EC2體上執行自動化任務,並確認您符合使用 Systems Manager 的先決條件。如需詳細資訊,請參閱《AWS Identity and Access Management 使用者指南》中的建立角色以委派許可給 AWS 服務

  • 選取您希望如何執行自動化的選項。執行選項包括 Simple execution (簡易執行)Rate control (比率控制)Multi-account and Region (多帳戶和區域)Manual execution (手動執行)。如需關於這些選項的詳細資訊,請參閱 執行選項

  • Amazon EC2 執行個體必須使用視窗伺服器 2008 R2 或更新版本,以及SQL伺服器 2008 或更新版本。

  • 確認您的執行個體上已安裝 SSM Agent。如需詳細資訊,請參閱在 Windows 伺服器的 Amazon EC2 執行個體上使用SSM代理程式

  • 確認執行個體具有足夠的可用磁碟空間:

    • 若您要從 Windows Server 2008 R2 升級至 2012 R2,或從 Windows Server 2012 R2 升級至更新版本的作業系統,請確認您的執行個體開機磁碟中有 20 GB 的可用磁碟空間。

    • 若您要從 Windows Server 2008 R2 升級至 2016 或更新版本,請確認執行個體開機磁碟中有 40 GB 的可用磁碟空間。

  • 對於使用「自攜授權」(BYOL) SQL 伺服器版本的執行個體,則適用下列其他先決條件:

    • 提供包含目標SQL伺服器安裝媒體的 Amazon EBS 快照 ID。若要執行此作業:

      1. 確認 Amazon EC2 執行個體正在執行視窗伺服器 2008 R2 或更新版本。

      2. 在執行執行個體的相同可用區域中建立 6 GB Amazon EBS 磁碟區。將磁碟區連結到執行個體。例如,將其掛載為 D 磁碟機。

      3. 以滑鼠右鍵按一下ISO並將其掛接至執行個體,例如磁碟機 E。

      4. 將驅動器 E:\ ISO 的內容複製到驅動器 D:\

      5. 為步驟 2 中建立的 6 GB 磁碟區建立 Amazon EBS 快照。

SQL伺服器自動升級限制

使用 AWSEC2-CloneInstanceAndUpgrade SQLServer runbook 執行自動升級時,下列限制適用:

  • 升級只能在使用 Windows 驗證的SQL伺服器上執行。

  • 確認執行個體上沒有待定的安全性修補程式更新。開啟 Control Panel (控制面板),接著選擇 Check for updates (檢查更新)

  • SQL不支援 HA 和鏡像模式下的伺服器部署。

執行SQL伺服器自動升級的步驟

請按照以下步驟使用升級您的SQL服務器 AWSEC2-CloneInstanceAndUpgrade SQLServer 自動化手冊。

  1. 如果您還沒有,請下載SQL伺服器 2016 .iso 檔案並將其掛載到來源伺服器。

  2. 掛載 .iso 檔案之後,將所有元件檔案複製到您選擇的任何磁碟區。

  3. 拍攝磁碟區的 Amazon EBS 快照,然後將快照 ID 複製到剪貼簿以供日後使用。如需詳細資訊,請參閱 Amazon EBS使用者指南中的建立 Amazon EBS 快照

  4. 將執行個體設定檔附加到 Amazon EC2 來源執行個體。這可讓 Systems Manager 與執行個EC2體通訊,並在執行個體新增至 AWS Systems Manager 服務後執行指令。在此範例中,我們將角色命名為 SSM-EC2-Profile-Role,並將 AmazonSSMManagedInstanceCore 政策連接到角色。請參閱使AWS Systems Manager 用指南中的為 Systems Manager 建立IAM執行個體設定檔

  5. 在 AWS Systems Manager 主控台的左側導覽窗格中,選擇 [受管執行個體]。確認您的EC2執行個體位於代管執行個體清單中。如果幾分鐘後沒有看見您的執行個體,請參閱 AWS Systems Manager 使用者指南中的我的執行個體在哪裡?

  6. 在左側導覽窗格中,在 Change Management (變更管理) 下選擇 Automation (自動化)。

  7. 選擇 Execute automation (執行自動化)

  8. 搜尋稱為 AWSEC2-CloneInstanceAndUpgradeSQLServer 的自動化文件。

  9. 選擇AWSEC2-CloneInstanceAndUpgradeSQLServerSSM文件,然後選擇 [下一步]。

  10. 確保選取 Simple execution (簡易執行) 選項。

  11. 根據下列指導,輸入所要求的參數。

    • InstanceId

      類型:字串

      (必要) 執行SQL伺服器 2008 R2 (或更新版本) 的執行個體。

    • IamInstanceProfile

      類型:字串

      (必要) IAM 執行個體設定檔。

    • SQLServerSnapshotId

      類型:字串

      (必要) 目標SQL伺服器安裝媒體的快照 ID。包含SQL伺服器授權的執行個體不需要此參數。

    • SubnetId

      類型:字串

      (必要) 這是升級程序的子網路以及來源EC2執行個體所在的位置。確認子網路具有連線至 AWS 服務 (包括 Amazon S3) 以及 Microsoft 的輸出連線 (以便下載修補程式)。

    • KeepPreUpgradedBackUp

      類型:字串

      (選用) 如果此參數設為 true,自動化會保留從執行個體建立的映像。預設設定為 false

    • RebootInstanceBeforeTakingImage

      類型:字串

      (選用) 預設為 false (不重新啟動)。如果將此參數設定為true,Systems Manager 會先重新啟動執行個體,然後再建立升級AMI的執行個體。

    • TargetSQLVersion

      類型:字串

      (選擇性) 目標SQL伺服器版本。預設值為 2016

  12. 輸入參數後,選擇 Execute (執行)。自動化開始時,您可以監控執行進度。

  13. 執行狀態顯示成功時,請展開輸出以檢視AMI資訊。您可以使用 AMI ID 來啟動您選擇VPC的SQL伺服器執行個體。

  14. 打開 Amazon EC2 控制台。在左側導覽窗格中,選擇AMIs。您應該會看到新的AMI。

  15. 若要確認已成功安裝新SQL伺服器版本,請選擇新AMI的伺服器版本,然後選擇 [啟動]。

  16. 選擇您想要的執行個體類型AMI、要部署的VPC和子網路,以及您要使用的儲存區。由於您要從啟動新執行個體AMI,因此磁碟區會顯示為包含在您要啟動的新EC2執行個體中的選項。您可以移除任何這些磁碟區,或新增磁碟區。

  17. 新增標籤以協助識別您的執行個體。

  18. 將一或多個安全群組新增至執行個體。

  19. 選擇 Launch Instance (啟動執行個體)

  20. 選取執行個體的標籤名稱,然後在 Actions (動作) 下拉式清單下,選取 Connect (連接)

  21. 確認新SQL伺服器版本是新執行個體上的資料庫引擎。