建立基礎架構組態 - EC2 映像建置器

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

建立基礎架構組態

本節說明如何使用 中的 Image Builder 主控台或imagebuilder命令 AWS CLI 來建立基礎設施組態,

Console

若要從 Image Builder 主控台建立基礎設施組態資源,請遵循下列步驟:

  1. 在 開啟 EC2 Image Builder 主控台https://console.aws.amazon.com/imagebuilder/

  2. 從導覽窗格中,選擇基礎設施組態

  3. 選擇建立基礎設施組態

  4. 一般區段中,輸入下列必要資訊:

    • 輸入基礎設施組態資源的名稱

    • 選取您要與執行個體設定檔相關聯的IAM角色,以便在建置和測試執行個體上取得元件許可。Image Builder 使用這些許可來下載和執行元件、將日誌上傳至 CloudWatch,以及執行配方中元件指定的任何其他動作。

  5. AWS 基礎設施面板中,您可以設定可用的其餘基礎設施設定。輸入下列必要資訊:

    • 執行個體類型 – 您可以指定用於此建置的一或多個執行個體類型。服務會根據可用性挑選其中一個執行個體類型。

    • SNS 主題 (選用) – 選取要從 EC2 Image Builder 接收通知和提醒SNS的主題。

    如果您未為下列設定提供值,它們會在適用時使用服務特定的預設值。

    • VPC、子網路和安全群組 – Image Builder 使用您的預設 VPC和子網路。如需設定VPC介面端點的詳細資訊,請參閱 Image Builder 和 AWS PrivateLink 介面VPC端點

    • 疑難排解設定區段中,您可以設定下列值:

      • 根據預設,會選取在失敗時終止執行個體核取方塊。不過,當建置失敗時,您可以登入EC2執行個體進行疑難排解。如果您希望執行個體在建置失敗後繼續執行,請清除核取方塊。

      • 金鑰對 – 如果您的EC2執行個體在建置失敗後繼續執行,您可以建立金鑰對,或使用現有的金鑰對登入執行個體並進行故障診斷。

      • 日誌 – 您可以指定 S3 儲存貯體,讓 Image Builder 撰寫應用程式日誌,以協助疑難排解建置和測試。如果您未指定 S3 儲存貯體,Image Builder 會將應用程式日誌寫入執行個體。

    • 執行個體中繼資料設定區段中,您可以設定下列值,以套用至 Image Builder 用於建置和測試映像的EC2執行個體:

      • 選取中繼資料版本,判斷 EC2是否需要執行個體中繼資料擷取請求的已簽署權杖標頭。

        • V1 和 V2 (金鑰選用) – 如果您未選取任何項目,則預設值為 。

        • V2 (需要金鑰)

        注意

        我們建議您設定映像建置器從管道建置啟動的所有EC2執行個體,IMDSv2以便執行個體中繼資料擷取請求需要簽署權杖標頭。

      • 中繼資料權杖回應躍點限制 – 中繼資料權杖可以移動的網路躍點數量。最小躍點:1,最大躍點:64,預設為一個躍點。

  6. 基礎設施標籤區段 (選用) 中,您可以將中繼資料標籤指派給 Image Builder 在建置程序中啟動的 Amazon EC2執行個體。標籤會輸入為索引鍵值對。

  7. 標籤區段 (選用) 中,您可以將中繼資料標籤指派給 Image Builder 建立為輸出的基礎設施組態資源。標籤會輸入為索引鍵值對。

AWS CLI

下列範例顯示如何使用 中的 Image Builder create-infrastructure-configuration命令來設定映像的基礎設施 AWS CLI。

  1. 建立CLI輸入JSON檔案

    此基礎設施組態範例會指定兩種執行個體類型 m5.largem5.xlarge。我們建議您指定多個執行個體類型,因為這可讓 Image Builder 從具有足夠容量的集區啟動執行個體。這可減少暫時性建置失敗。

    instanceProfileName 指定執行個體設定檔,為執行個體提供執行自訂活動所需的許可。例如,如果您的元件從 Amazon S3 擷取資源,執行個體設定檔需要存取這些檔案的許可。執行個體設定檔也需要一組最低許可,EC2Image 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" }
  2. 當您執行下列命令時,請使用您建立作為輸入的檔案。
    aws imagebuilder create-infrastructure-configuration --cli-input-json file://create-infrastructure-configuration.json