本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
演練:從您的工作站註冊執行個體
重要
該 AWS OpsWorks Stacks 服務於 2024 年 5 月 26 日終止使用壽命,並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載移轉至其他解決方案。如果您對移轉有任何疑問,請透過 AWS Re: post
注意
只有 Linux 堆疊支援此功能。
註冊程序支援數種案例。本節將引導您完成一個案 end-to-end 例的範例:如何使用工作站註冊 Amazon EC2 執行個體。其他註冊案例使用類似的程序。如需詳細資訊,請參閱 註冊 Amazon EC2 和現場部署執行個體。
注意
您通常想要註冊現有的 Amazon EC2 執行個體。不過,在本演練中,您可以直接建立新的執行個體和新的堆疊,並於完成時予以刪除。
步驟 1:建立堆疊和執行個體
若要開始使用,您需要在該堆疊中註冊一個堆疊和一個 Amazon EC2 執行個體。
建立堆疊和執行個體
-
使用 AWS OpsWorks Stacks 主控台
來建立新的堆疊,並命名為 EC2Register
。針對其他堆疊設定,您可以接受預設值。 -
從 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
版本,請在 shell 工作階段中輸入 aws --version
。
注意
若要防止使用者或角色註冊執行個體,請更新執行個體設定檔以拒絕存取register指令。
強烈建議您不要略過此步驟,即使您已經在工作站 AWS CLI 上執行。使用最新版 AWS CLI 是安全最佳實務。
您必須提供 register
一組具備適當許可的 AWS 登入資料。建議您執行這項操作的方式 (避免直接在執行個體上安裝認證) 是註冊使用執行個體設定檔啟動的執行個體,然後將參數新增至您的命令。--use-instance-profile
register
如果您透過執行個體描述檔取得登入資料,則請跳到本主題中的步驟 3:向 EC2Register 堆疊註冊執行個體。不過,如果未使用執行個體描述檔啟動您的執行個體,則可以建立 IAM 使用者。下列程序會建立具有適當權限的新使用者,在工作站上安裝使用者的認證,然後將這些認證傳遞給register
。
警告
IAM 使用者擁有長期登入資料,這會帶來安全風險。為了減輕此風險,我們建議您僅向這些使用者提供執行工作所需的權限,並在不再需要這些使用者時移除這些使用者。
建立使用者
-
在 IAM 主控台
的導覽窗格中,選擇 Users (使用者),然後選擇 Add user (新增使用者)。 -
新增名為
EC2Register
的使用者。 -
選擇下一步。
-
在 [設定權限] 頁面上,選擇 [直接附加原則]。
-
OpsWorks
在 [權限] 原則篩選方塊中輸入以顯示原 AWS OpsWorks 則、選取下列其中一個原則,然後選擇 [下一步:檢閱]。此政策會授予您的使用者執行register
所需的許可。-
選擇
AWSOpsWorksRegisterCLI_EC2
以許可使用者註冊使用執行個體設定檔的 EC2 執行個體。 -
選擇
AWSOpsWorksRegisterCLI_OnPremises
以許可使用者註冊現場部署執行個體。
-
-
選擇下一步。
-
在 Review (檢閱) 頁面上,選擇 Create user (建立使用者)。
-
現在為您的用戶創建訪問密鑰。從功能窗格中選擇 [使用者],然後選擇您要建立存取金鑰的使用者。
-
選擇「安全認證」標籤,然後選擇「建立存取金鑰」。
-
選擇最適合您任務的 Access 密鑰最佳實踐和替代方案。
-
選擇下一步。
-
(選擇性) 輸入標籤以識別存取金鑰。
-
選擇下一步。
-
選擇 [下載 .csv 檔案],將認證檔案儲存到系統上方便的位置,然後選擇 [完成]。
您需要將 IAM 使用者的登入資料提供給 register
。本演練會透過安裝您工作站之 credentials
檔案中的 EC2Register 登入資料,來處理此任務。如需管理認證的其他方式的相關資訊 AWS CLI,請參閱組態和認證檔案。
安裝使用者的登入資料
-
建立或開啟您工作站的
credentials
檔案。該檔案位於~/.aws/credentials
(Linux、Unix 和 OS X) 或C:\Users\
(Windows 系統) 中。User_Name
\.aws\credentials -
使用下列格式,將 EC2Register 使用者的描述檔新增至
credentials
檔案。[ec2register] aws_access_key_id =
access_key_id
aws_secret_access_key =secret_access_key
將
access_key_id
和secret_access_key
取代為您稍早下載的 EC2Register 金鑰。
步驟 3:向 EC2Register 堆疊註冊執行個體
您現在可以註冊執行個體。
註冊執行個體
-
在「堆 AWS OpsWorks 疊」中,返回 EC2Register 堆疊,在導覽窗格中選擇「實例」,然後選擇「註冊實體」。
-
選取 EC2 Instances (EC2 執行個體),並選擇 Next: Select Instances (下一步:選取執行個體),然後從清單中選取您的執行個體。
-
選擇下一步:安裝 AWS CLI,然後下一步:註冊執行個體。 AWS OpsWorks 堆疊會自動使用可用資訊 (例如堆疊 ID 和執行個體 ID) 來建立
register
命令範本,並顯示在 [註冊執行個體] 頁面上。在此範例中,您使用register
透過 SSH 金鑰登入執行個體,並明確指定金鑰檔案,因此,請將 I use SSH keys to connect to my instances (我使用 SSH 金鑰連線到我的執行個體) 設為 Yes (是)。此命令範本如下所示。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 Stacks 服務的端點區域,而不是堆疊的「區
us-east-1
域」。 AWS OpsWorks 堆棧從堆棧 ID 確定堆棧的區域。 -
命令範本包含數個使用者特定的引數值,這些值會以括號表示且必須取代為適當的值。將命令範本複製到文字編輯器,並依照下列方式編輯。
重要
在註冊執行個體的整個生命週期中,都需要在註冊程序期間建立的 IAM 使用者。刪除使用者會導致 AWS OpsWorks 堆疊代理程式無法與服務通訊。若要避免在意外刪除使用者時發生管理已註冊執行個體的問題,請將
--use-instance-profile
參數新增至您的register
命令,以改用執行個體的內建執行個體設定檔。新增--use-instance-profile
參數也可以防止每 90 天輪換 AWS 帳戶存取金鑰時發生錯誤 (建議的最佳做法),因為它可以防止 AWS OpsWorks 代理程式可用的存取金鑰與必要 IAM 使用者之間不相符。-
將
金鑰檔案
取代為您在建立執行個體時儲存之 Amazon EC2 key pair 的私密金鑰檔案的完整路徑。如果您想要,也可以使用相對路徑。
-
將
username
取代為執行個體的使用者名稱。在此範例中,使用者名稱是
ubuntu
(若是 Ubuntu 執行個體) 或ec2-user
(若是 Red Hat Enterprise Linux (RHEL) 或 Amazon Linux 執行個體)。 -
Add
--use-instance-profile
,它會register
與執行個體設定檔一起執行,以防止金鑰輪替期間或主要 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
-
-
在您的工作站上開啟終端機視窗,從您的編輯器貼上
register
命令,然後執行命令。註冊通常需要約 5 分鐘。完成後,返回「 AWS OpsWorks 堆疊」主控台並選擇「完成」。然後,在導覽窗格中選擇 Instances (執行個體)。您的執行個體應該會列於 Unassigned Instances (未指派的執行個體) 下。然後,您可以將執行個體指派給某 layer 或保持不變,端視您預計管理執行個體的方式而定。
-
完成後,請停止執行個體,然後使用 AWS OpsWorks Stack 主控台或指令將其刪除。這會終止 Amazon EC2 執行個體,因此您不會產生任何其他費用。