演練:從您的工作站註冊執行個體 - AWS OpsWorks

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

演練:從您的工作站註冊執行個體

重要

所以此 AWS OpsWorks Stacks 服務於 2024 年 5 月 26 日終止使用壽命,並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載移轉至其他解決方案。如果您對移轉有任何疑問,請聯絡 AWS Support 團隊上 AWS Re: 郵寄或透過 AWS 高級 Support

注意

只有 Linux 堆疊支援此功能。

註冊程序支援數種案例。本節將引導您完成一個案 end-to-end 例的範例:如何使用工作站註冊 Amazon EC2 執行個體。其他註冊案例使用類似的程序。如需詳細資訊,請參閱註冊 Amazon EC2 和現場部署執行個

注意

您通常想要註冊現有的 Amazon EC2 執行個體。不過,在本演練中,您可以直接建立新的執行個體和新的堆疊,並於完成時予以刪除。

步驟 1:建立堆疊和執行個體

若要開始使用,您需要在該堆疊中註冊一個堆疊和 Amazon EC2 執行個體。

建立堆疊和執行個體
  1. 使用 AWS OpsWorks 堆棧控制台創建一個名為的新堆棧EC2Register。針對其他堆疊設定,您可以接受預設值。

  2. Amazon EC2 主控台啟動新執行個體。請注意下列內容。

    • 執行個體必須位於與堆疊相VPC同的區域中。

      如果您使用的是VPC,請為本逐步解說挑選公用子網路。

    • 如果您需要建立SSH金鑰,請將私密金鑰檔案儲存到工作站,並記錄名稱和檔案位置。

      如果您使用現有的金鑰,請記錄名稱和私有金鑰檔案位置。您稍後需要這些值。

    • 執行個體必須以其中一個支援的 Linux 作業系統為基礎。例如,如果您的堆疊位於美國西部 (奧勒岡),您可以使ami-35501205用在該區域啟動 Ubuntu 14.04 LTS 執行個體。

    否則,請接受預設值。

在執行個體啟動期間,您可以繼續進行下一節。

步驟 2:安裝和配置 AWS CLI

註冊是通過使用 AWS CLI aws opsworks register指令。在註冊第一個執行個體之前,您必須執行的是 1.16.180 版 AWS CLI 或更新。安裝詳細資訊取決於您工作站的作業系統。有關安裝的更多信息 AWS CLI,請參閱〈安裝AWS指令行介面〉。若要檢查版本 AWS CLI 你正在運行,輸aws --version入一個 shell 會話。

注意

若要防止使用者或角色註冊執行個體,請更新執行個體設定檔以拒絕存取register指令。

強烈建議您不要略過此步驟,即使您已經在執行 AWS CLI 在您的工作站上。使用最新版本的 AWS CLI 是安全性最佳做法。

您必須提register供一組具有適當權限的AWS認證。建議您執行這項操作的方法 (避免直接在執行個體上安裝認證) 是註冊使用執行個體設定檔啟動的執行個體,然後將參數新增至您的命令。--use-instance-profile register如果您透過執行個體描述檔取得登入資料,則請跳到本主題中的步驟 3:在EC2Register堆疊中註冊執行個體。不過,如果您的執行個體並未使用執行個體設定檔啟動,您可以建立IAM使用者。下列程序會建立具有適當權限的新使用者,在工作站上安裝使用者的認證,然後將這些認證傳遞給register

警告

IAM使用者擁有長期認證,這會帶來安全性風險。為了減輕此風險,我們建議您僅向這些使用者提供執行工作所需的權限,並在不再需要這些使用者時移除這些使用者。

建立使用者
  1. IAM主控台上,選擇功能窗格中的 [使者],然後選擇 [新增使用者]。

  2. 新增名為 EC2Register 的使用者。

  3. 選擇 Next (下一步)

  4. 在 [設定權限] 頁面上,選擇 [直接附加原則]。

  5. OpsWorks在 [權限] 原則篩選方塊中輸入,以顯示 AWS OpsWorks 策略中,選取下列其中一個策略,然後選擇 [下一步:複查]。此政策會授予您的使用者執行 register 所需的許可。

    • 選擇AWSOpsWorksRegisterCLI_EC2允許使用者權限註冊使用EC2執行個體設定檔的執行個體。

    • 選擇 AWSOpsWorksRegisterCLI_OnPremises 以許可使用者註冊現場部署執行個體。

  6. 選擇 Next (下一步)

  7. Review (檢閱) 頁面上,選擇 Create user (建立使用者)。

  8. 現在為您的用戶創建訪問密鑰。從功能窗格中選擇 [使者],然後選擇您要建立存取金鑰的使用者。

  9. 選擇「安全認證」標籤,然後選擇「建立存取金鑰」。

  10. 選擇最適合您任務的 Access 密鑰最佳實踐和替代方案

  11. 選擇 Next (下一步)

  12. (選擇性) 輸入標籤以識別存取金鑰。

  13. 選擇 Next (下一步)

  14. 選擇 [下載 .csv 檔案],將認證檔案儲存到系統上方便的位置,然後選擇 [完成]。

您需要將IAM使用者的認證提供給register。本逐步解說會在工作站credentials檔案中安裝EC2Register認證來處理工作。如需管理認證的其他方式的相關資訊 AWS CLI,請參閱組態和認證檔案

安裝使用者的登入資料
  1. 建立或開啟您工作站的 credentials 檔案。該檔案位於 ~/.aws/credentials (Linux、Unix 和 OS X) 或 C:\Users\User_Name\.aws\credentials (Windows 系統) 中。

  2. 使用下列格式將使用EC2Register者的設定credentials檔新增至檔案。

    [ec2register] aws_access_key_id = access_key_id aws_secret_access_key = secret_access_key

    Replace (取代) access_key_id 以及 secret_access_key 使用您之前下載的EC2Register密鑰。

步驟 3:在EC2Register堆疊中註冊執行個體

您現在可以註冊執行個體。

註冊執行個體
  1. In (入) AWS OpsWorks 堆疊、返回EC2Register堆疊、在導覽窗格中選擇 [執行個體],然後選擇 [註冊實體]。

  2. 選取EC2執行個體,選擇下一步:選取執行個體,然後從清單中選取您的執行個體。

  3. 選擇下一步:安裝AWSCLI下一步:註冊執行個體。 AWS OpsWorks 堆疊會自動使用可用資訊 (例如堆疊 ID 和執行個體 ID) 來建立register命令範本,並顯示在 [註冊執行個體] 頁面上。在此範例中,您可register以使用金鑰登入執行個SSH體,並明確指定金鑰檔案,因此請將 [我使用SSH金鑰連線至執行個體] 設定為 [是]。此命令範本如下所示。

    aws opsworks register --infrastructure-class ec2 --region region endpoint ID --stack-id 247be7ea-3551-4177-9524-1ff804f453e3 --ssh-username [username] --ssh-private-key [key-file] i-f1245d10
    注意

    您必須將「區域」設定為 AWS OpsWorks 如果堆棧位於與地區端點關聯的傳統區域內,則堆棧服務的端點區域,而不是堆棧的區us-east-1域。 AWS OpsWorks 堆棧從堆棧 ID 確定堆棧的區域。

  4. 命令範本包含數個使用者特定的引數值,這些值會以括號表示且必須取代為適當的值。將命令範本複製到文字編輯器,並依照下列方式編輯。

    重要

    在註冊程序期間建立的IAM使用者在註冊執行個體的整個生命週期內都需要。刪除使用者會導致 AWS OpsWorks 堆疊代理程式無法與服務通訊。若要避免在意外刪除使用者時發生管理已註冊執行個體的問題,請將--use-instance-profile參數新增至您的register命令,以改用執行個體的內建執行個體設定檔。加入--use-instance-profile參數也可以防止在旋轉時發生錯誤 AWS 帳戶存取金鑰每 90 天 (建議的最佳作法),因為它可以防止存取金鑰之間的不相符 AWS OpsWorks 代理程式和所需IAM使用者。

    • Replace (取代) key file 使用您在建立執行個體時儲存的 Amazon EC2 key pair 私密金鑰檔案的完整路徑。

      如果您想要,也可以使用相對路徑。

    • Replace (取代) username 使用執行個體的使用者名稱。

      在此範例中,使用者名稱是 Ubuntu 執行個體ec2-user,或者是針對 RHEL (RHEL) 或 Amazon Linux 執行個體的使用者名稱。ubuntu

    • 新增 (Add) 會register與執行個體設定檔一起執行--use-instance-profile,以防止金鑰輪替期間或主參與IAM者使用者意外刪除時發生錯誤。

    您的命令應該如下所示。

    aws opsworks register --use-instance-profile --infrastructure-class ec2 \ --region us-west-2 --stack-id 247be7ea-3551-4177-9524-1ff804f453e3 --ssh-username ubuntu \ --ssh-private-key "./keys/mykeys.pem" i-f1245d10
  5. 在您的工作站上開啟終端機視窗,從您的編輯器貼上 register 命令,然後執行命令。

    註冊通常需要約 5 分鐘。完成後,返回 AWS OpsWorks 堆疊主控台並選擇「完成」。然後,在導覽窗格中選擇 Instances (執行個體)。您的執行個體應該會列於 Unassigned Instances (未指派的執行個體) 下。然後,您可以將執行個體指派給某 layer 或保持不變,端視您預計管理執行個體的方式而定。

  6. 當您完成時,請停止執行個體然後使用 AWS OpsWorks 堆棧控制台或命令。這會終止 Amazon EC2 執行個體,因此您不會產生任何其他費用。