本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立基礎架構組態
本節說明如何使用 Image Builder 主控台或中的imagebuilder命令 AWS CLI 來建立基礎結構組態。
- Console
-
若要從 Image Builder 主控台建立基礎結構組態資源,請依照下列步驟執行:
-
開啟 EC2 Image Builder 主控台,位於 https://console.aws.amazon.com/imagebuilder/
。 -
在瀏覽窗格中,選擇 [基礎結構設定]。
-
選擇建立基礎結構組態。
-
在「一般」段落中,輸入下列必要資訊:
-
輸入基礎結構組態資源的名稱。
-
針對建置和測試執行個體上的元件許可,選取您要與執行個體設定檔建立關聯的 IAM 角色。Image Builder 會使用這些權限來下載和執行元件、將記錄檔上傳至 CloudWatch,以及執行方案中元件指定的任何其他動作。
-
-
在AWS 基礎結構面板中,您可以設定可用的剩餘基礎結構設定。輸入下列必要資訊:
-
執行個體類型 — 您可以指定要用於此組建的一或多個執行個體類型。服務會根據可用性挑選其中一種執行個體類型。
-
SNS 主題 (選用) — 選取要接收來自 EC2 Image Builder 的通知和警示的 SNS 主題。
如果您未提供下列設定的值,則這些設定會在適用情況下使用服務特定的預設值。
-
VPC、子網路和安全群組 — Image Builder 使用您的預設 VPC 和子網路。如需設定 VPC 介面端點的詳細資訊,請參閱EC2 Image Builder 和 AWS PrivateLink 介面 VPC 端點。
-
在疑難排解設定區段中,您可以設定下列值:
-
依預設,會選取「失敗時終止執行處理」核取方塊。不過,當組建失敗時,您可以登入 EC2 執行個體進行疑難排解。如果您希望執行個體在建置失敗後繼續執行,請清除核取方塊。
-
key pair — 如果 EC2 執行個體在建置失敗後繼續執行,您可以建立 key pair 組或使用現有金鑰組登入執行個體並進行疑難排解。
-
日誌 — 您可以指定 S3 儲存貯體,Image Builder 可在其中撰寫應用程式日誌,以協助疑難排解您的建置和測試。如果您未指定 S3 儲存貯體,Image Builder 會將應用程式日誌寫入執行個體。
-
-
在執行個體中繼資料設定區段中,您可以設定下列值,以套用至 Image Builder 用來建立和測試映像的 EC2 執行個體:
-
選取中繼資料版本,以判斷 EC2 是否需要簽署的權杖標頭來執行個體中繼資料擷取要求。
-
V1 和 V2(令牌可選)-默認值,如果你沒有選擇任何東西。
-
V2(需要令牌)
注意
我們建議您將 Image Builder 從管線組建啟動的所有 EC2 執行個體設定為使用 IMDSv2,以便執行個體中繼資料擷取請求需要已簽署的權杖標頭。
-
-
中繼資料權杖回應躍點限制 — 中繼資料權杖可傳遞的網路躍點數目。最小躍點:1,最大躍點:64,預設為一個躍點。
-
-
-
在基礎設施標籤區段 (選用) 中,您可以將中繼資料標籤指派給 Image Builder 在建置程序期間啟動的 Amazon EC2 執行個體。標籤作為鍵值對輸入。
-
在 [標記] 區段 (選用) 中,您可以將中繼資料標記指派給 Image Builder 建立為輸出的基礎結構組態資源。標籤作為鍵值對輸入。
-
- AWS CLI
-
下列範例顯示如何使用中的映像產生器create-infrastructure-configuration
命令來設定映像的基礎結構 AWS CLI。 -
建立 CLI 輸入 JSON 文件
此基礎結構組態範例會指定兩種執行個體類型,
m5.large
以及m5.xlarge
建議您指定多個執行個體類型,因為這可讓 Image Builder 從具有足夠容量的集區啟動執行個體。這可以減少暫時性的建置失敗。instanceProfileName
指定執行個體設定檔,為執行個體提供設定檔執行自訂活動所需的權限。例如,如果您有一個從 Amazon S3 擷取資源的元件,則執行個體設定檔需要存取這些檔案的許可。執行個體設定檔還需要一組最低限度的許可,EC2 Image Builder 才能成功與執行個體通訊。如需詳細資訊,請參閱 使用 Image Builder 構建圖像之前。使用檔案編輯工具建立 JSON 檔案,其中包含下列範例所示的金鑰,以及適用於您環境的值。此範例使用名為
create-infrastructure-configuration.json
的檔案:{ "name": "
MyExampleInfrastructure
", "description": "An example that will retain instances of failed builds
", "instanceTypes": [ "m5.large", "m5.xlarge" ], "instanceProfileName": "myIAMInstanceProfileName
", "securityGroupIds": [ "sg-12345678
" ], "subnetId": "sub-12345678
", "logging": { "s3Logs": { "s3BucketName": "my-logging-bucket
", "s3KeyPrefix": "my-path
" } }, "keyPair": "myKeyPairName
", "terminateInstanceOnFailure": false, "snsTopicArn": "arn:aws:sns:us-west-2:123456789012
:MyTopic
" } -
當您執行下列命令時,請使用您建立的檔案做為輸入。
aws imagebuilder create-infrastructure-configuration --cli-input-json file://
create-infrastructure-configuration.json
-