As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Criar um componente personalizado com o Image Builder
Depois de concluir o documento do componente, você pode usá-lo para criar um componente personalizado que suas fórmulas do Image Builder possam usar. Você pode criar um componente personalizado a partir do console do Image Builder SDKs, da API ou da linha de comando. Para obter mais informações sobre como criar um componente personalizado com parâmetros de entrada e usá-lo em suas fórmulas, consulte Tutorial: criar um componente personalizado com parâmetros de entrada.
As seções a seguir mostram como criar componentes com o console ou a AWS CLI.
Criar um componente personalizado com o console
Para criar um componente do AWSTOE aplicativo a partir do console do Image Builder, siga estas etapas:
-
Abra o console do EC2 Image Builder em https://console.aws.amazon.com/imagebuilder/.
-
Selecione Componentes no painel de navegação. Em seguida, selecione Criar componente.
-
Na página Criar componente, em Detalhes do componente, insira o seguinte:
-
Sistema operacional da imagem (OS). Especifique o sistema operacional com o qual o componente é compatível.
-
Categoria de componente. No menu suspenso, selecione o tipo de componente de compilação ou teste que você está criando.
-
Nome do componente. Insira um nome para o componente.
-
Versão do componente. Insira o número da versão do componente.
-
Descrição. Fornece uma descrição opcional para ajudá-lo a identificar o componente.
-
Descrição da alteração. Fornece uma descrição opcional para ajudá-lo a entender as alterações feitas nessa versão do componente.
-
Na seção Documento de definição, a opção padrão é Definir conteúdo do documento. O documento do componente define as ações que o Image Builder executa nas instâncias de construção e teste para criar sua imagem.
Na caixa Conteúdo, insira o conteúdo do documento do componente YAML. Para começar com um exemplo do Hello World para Linux, escolha a opção Usar exemplo. Para saber mais sobre como criar um documento do componente YAML ou copiar e colar o exemplo do UpdateOS dessa página, consulte. Criar um documento de componente YAML para componentes personalizados no Image Builder
-
Depois de inserir os detalhes do componente, selecione Criar componente.
Para ver seu novo componente ao criar ou atualizar uma fórmula, aplique o filtro De minha propriedade à lista de componentes da compilação ou teste. O filtro está localizado na parte superior da lista de componentes, ao lado da caixa de pesquisa.
-
Para excluir um componente, a partir da página Componentes, marque a caixa de seleção ao lado do componente que você deseja excluir. No menu suspenso Ações, selecione Excluir componente.
Atualizar um componente
Para criar uma nova versão do componente, siga estas etapas:
-
Dependendo de onde você começa:
-
Na página da lista de Componentes: marque a caixa de seleção ao lado do nome do componente e selecione Criar nova versão no menu Ações.
-
Na página de detalhes do componente: escolha o botão Criar nova versão no canto superior direito do cabeçalho.
-
As informações do componente já estão preenchidas com os valores atuais quando a página Criar componente é exibida. Siga as etapas de criação de um componente para atualizar o componente. Isso garante que você insira uma versão semântica exclusiva na versão do Componente. Para saber mais sobre o versionamento semântico dos recursos do Image Builder, consulte Versionamento semântico no Image Builder.
Crie um componente personalizado a partir do AWS CLI
Nesta seção, você aprenderá a configurar e usar os comandos do Image Builder no AWS CLI para criar um componente de AWSTOE aplicativo, da seguinte forma.
-
Carregue o documento do componente do YAML em um bucket do S3 que você possa referenciar a partir da linha de comandos.
-
Crie o componente do AWSTOE aplicativo com o create-component comando.
-
Liste as versões do componente com o comando list-components e um filtro de nome para ver quais versões já existem. Você pode usar a saída para determinar qual deve ser a próxima versão para atualizações.
Para criar um componente de AWSTOE aplicativo a partir de um documento YAML de entrada, siga as etapas que correspondem à sua plataforma de sistema operacional de imagem.
- Linux
-
Armazene seu documento do componente do aplicativo no Amazon S3
Você pode usar um bucket do S3 como repositório para o documento de origem do componente do AWSTOE aplicativo. Para armazenar seu documento do componente, siga estas etapas:
-
Carregue o documento no Amazon S3
Se seu documento for menor que 64 KB, você pode ignorar esta etapa. Documentos com 64 KB ou mais devem ser armazenados no Amazon S3.
aws s3 cp update-linux-os.yaml
s3://amzn-s3-demo-destination-bucket
/my-path
/update-linux-os.yaml
Crie um componente a partir do documento do YAML
Para simplificar o create-component comando que você usa no AWS CLI, crie um arquivo JSON que contenha todos os parâmetros do componente que você deseja passar para o comando. Inclua a localização do documento update-linux-os.yaml
que você criou anteriormente. O par de chave–valor uri
contém a referência do arquivo.
A convenção de nomenclatura para os valores de dados no arquivo JSON segue o padrão especificado para os parâmetros de solicitação de operação da API Image Builder. Para revisar os parâmetros da solicitação de comando da API, consulte o CreateComponentcomando na Referência da API EC2 Image Builder.
Para fornecer os valores dos dados como parâmetros da linha de comando, consulte os nomes dos parâmetros especificados na AWS CLI Referência de comando.
-
Criar um arquivo JSON de entrada da CLI
Use uma ferramenta de edição de arquivos para criar um arquivo chamado create-update-linux-os-component.json
. Inclua o seguinte conteúdo:
{
"name": "update-linux-os
",
"semanticVersion": "1.1.2",
"description": "An example component that updates the Linux operating system
",
"changeDescription": "Initial version.
",
"platform": "Linux",
"uri": "s3://amzn-s3-demo-destination-bucket
/my-path
/update-linux-os.yaml
",
"kmsKeyId": "arn:aws:kms:us-west-2:123456789012
:key/98765432-b123-456b-7f89-0123456f789c
",
"tags": {
"MyTagKey-purpose
": "security-updates
"
}
}
-
Criar o componente
Use o comando a seguir para criar o componente, fazendo referência ao nome do arquivo JSON que você criou na etapa anterior:
aws imagebuilder create-component --cli-input-json file://create-update-linux-os-component.json
-
É necessário incluir a notação file://
no início do caminho do arquivo JSON.
-
O caminho para o arquivo JSON deve seguir a convenção apropriada para o sistema operacional de base no qual você está executando o comando. Por exemplo, o Windows usa a barra invertida (\) para se referir ao caminho do diretório, enquanto o Linux e o macOS usam a barra (/).
- Windows
-
Armazene seu documento do componente do aplicativo no Amazon S3
Você pode usar um bucket do S3 como repositório para o documento de origem do componente do AWSTOE aplicativo. Para armazenar seu documento do componente, siga estas etapas:
-
Carregue o documento no Amazon S3
Se seu documento for menor que 64 KB, você pode ignorar esta etapa. Documentos com 64 KB ou mais devem ser armazenados no Amazon S3.
aws s3 cp update-windows-os.yaml
s3://amzn-s3-demo-destination-bucket
/my-path
/update-windows-os.yaml
Crie um componente a partir do documento do YAML
Para simplificar o create-component comando que você usa no AWS CLI, crie um arquivo JSON que contenha todos os parâmetros do componente que você deseja passar para o comando. Inclua a localização do documento update-windows-os.yaml
que você criou anteriormente. O par de chave–valor uri
contém a referência do arquivo.
A convenção de nomenclatura para os valores de dados no arquivo JSON segue o padrão especificado para os parâmetros de solicitação de operação da API Image Builder. Para revisar os parâmetros da solicitação de comando da API, consulte o CreateComponentcomando na Referência da API EC2 Image Builder.
Para fornecer os valores dos dados como parâmetros da linha de comando, consulte os nomes dos parâmetros especificados na AWS CLI Referência de comando..
-
Criar um arquivo JSON de entrada da CLI
Use uma ferramenta de edição de arquivos para criar um arquivo chamado create-update-windows-os-component.json
. Inclua o seguinte conteúdo:
{
"name": "update-windows-os
",
"semanticVersion": "1.1.2",
"description": "An example component that updates the Windows operating system.
",
"changeDescription": "Initial version.
",
"platform": "Windows",
"uri": "s3://amzn-s3-demo-destination-bucket
/my-path
/update-windows-os.yaml
",
"kmsKeyId": "arn:aws:kms:us-west-2:123456789012
:key/98765432-b123-456b-7f89-0123456f789c
",
"tags": {
"MyTagKey-purpose
": "security-updates
"
}
}
-
É necessário incluir a notação file://
no início do caminho do arquivo JSON.
-
O caminho para o arquivo JSON deve seguir a convenção apropriada para o sistema operacional de base no qual você está executando o comando. Por exemplo, o Windows usa a barra invertida (\) para se referir ao caminho do diretório, enquanto o Linux e o macOS usam a barra (/).
-
Criar o componente
Use o comando a seguir para criar o componente, fazendo referência ao nome do arquivo JSON que você criou na etapa anterior:
aws imagebuilder create-component --cli-input-json file://create-update-windows-os-component.json
-
É necessário incluir a notação file://
no início do caminho do arquivo JSON.
-
O caminho para o arquivo JSON deve seguir a convenção apropriada para o sistema operacional de base no qual você está executando o comando. Por exemplo, o Windows usa a barra invertida (\) para se referir ao caminho do diretório, enquanto o Linux e o macOS usam a barra (/).
- macOS
-
Armazene seu documento do componente do aplicativo no Amazon S3
Você pode usar um bucket do S3 como repositório para o documento de origem do componente do AWSTOE aplicativo. Para armazenar seu documento do componente, siga estas etapas:
-
Carregue o documento no Amazon S3
Se seu documento for menor que 64 KB, você pode ignorar esta etapa. Documentos com 64 KB ou mais devem ser armazenados no Amazon S3.
aws s3 cp wget-macos.yaml
s3://amzn-s3-demo-destination-bucket
/my-path
/wget-macos.yaml
Crie um componente a partir do documento do YAML
Para simplificar o create-component comando que você usa no AWS CLI, crie um arquivo JSON que contenha todos os parâmetros do componente que você deseja passar para o comando. Inclua a localização do documento wget-macos.yaml
que você criou anteriormente. O par de chave–valor uri
contém a referência do arquivo.
A convenção de nomenclatura para os valores de dados no arquivo JSON segue o padrão especificado para os parâmetros de solicitação de operação da API Image Builder. Para revisar os parâmetros da solicitação de comando da API, consulte o CreateComponentcomando na Referência da API EC2 Image Builder.
Para fornecer os valores dos dados como parâmetros da linha de comando, consulte os nomes dos parâmetros especificados na AWS CLI Referência de comando.
-
Criar um arquivo JSON de entrada da CLI
Use uma ferramenta de edição de arquivos para criar um arquivo chamado install-wget-macos-component.json
. Inclua o seguinte conteúdo:
{
"name": "install install-wget-macos-component
",
"semanticVersion": "1.1.2",
"description": "An example component that installs and verifies the wget utility on macOS.
",
"changeDescription": "Initial version.
",
"platform": "macOS",
"uri": "s3://amzn-s3-demo-destination-bucket
/my-path
/wget-macos.yaml
",
"kmsKeyId": "arn:aws:kms:us-west-2:123456789012
:key/98765432-b123-456b-7f89-0123456f789c
",
"tags": {
"MyTagKey-purpose
": "install-software
"
}
}
-
Criar o componente
Use o comando a seguir para criar o componente, fazendo referência ao nome do arquivo JSON que você criou na etapa anterior:
aws imagebuilder create-component --cli-input-json file://install-wget-macos-component.json
-
É necessário incluir a notação file://
no início do caminho do arquivo JSON.
-
O caminho para o arquivo JSON deve seguir a convenção apropriada para o sistema operacional de base no qual você está executando o comando. Por exemplo, o Windows usa a barra invertida (\) para se referir ao caminho do diretório, enquanto o Linux e o macOS usam a barra (/).
AWSTOE controle de versão de componentes para atualizações do AWS CLI
AWSTOE os nomes e versões dos componentes são incorporados no Amazon Resource Name (ARN) do componente, após o prefixo do componente. Cada nova versão de um componente tem seu próprio ARN exclusivo. As etapas para criar uma nova versão são exatamente iguais às etapas para criar um novo componente, desde que a versão semântica seja exclusiva para aquele nome de componente. Para saber mais sobre o versionamento semântico dos recursos do Image Builder, consulte Versionamento semântico no Image Builder.
Para garantir que você atribua a próxima versão lógica, primeiro obtenha uma lista das versões existentes do componente que você deseja alterar. Use o list-components comando com o AWS CLI, e filtre pelo nome.
Neste exemplo, você filtra pelo nome do componente que você criou nos exemplos anteriores do Linux. Para listar o componente que você criou, use o valor do parâmetro name
do arquivo JSON que você usou no comando create-component.
aws imagebuilder list-components --filters name="name",values="update-linux-os
"
{
"requestId": "123a4567-b890-123c-45d6-ef789ab0cd1e",
"componentVersionList": [
{
"arn": "arn:aws:imagebuilder:us-west-2:1234560087789012:component/update-linux-os/1.0.0",
"name": "update-linux-os",
"version": "1.0.0",
"platform": "Linux",
"type": "BUILD",
"owner": "123456789012",
"dateCreated": "2020-09-24T16:58:24.444Z"
},
{
"arn": "arn:aws:imagebuilder:us-west-2:1234560087789012:component/update-linux-os/1.0.1",
"name": "update-linux-os",
"version": "1.0.1",
"platform": "Linux",
"type": "BUILD",
"owner": "123456789012",
"dateCreated": "2021-07-10T03:38:46.091Z"
}
]
}
Com base nos resultados, você pode determinar qual deve ser a próxima versão.
Importe um script para criar um componente a partir do AWS CLI
Em alguns cenários, talvez seja mais fácil começar com um script preexistente. Para este cenário, você pode usar o exemplo a seguir.
Este exemplo pressupõe que você tem um arquivo chamado import-component.json
(conforme mostrado). Observe que o arquivo faz referência direta a um PowerShell script chamado AdminConfig.ps1
that já foi enviado paraamzn-s3-demo-source-bucket
. No momento, o SHELL
é compatível com o componente format
.
{
"name": "MyImportedComponent
",
"semanticVersion": "1.0.0",
"description": "An example of how to import a component
",
"changeDescription": "First commit message.
",
"format": "SHELL",
"platform": "Windows",
"type": "BUILD",
"uri": "s3://amzn-s3-demo-source-bucket
/AdminConfig.ps1
",
"kmsKeyId": "arn:aws:kms:us-west-2:123456789012
:key/60763706-b131-418b-8f85-3420912f020c
"
}
Para criar o componente usando um script importado, execute o comando a seguir.
aws imagebuilder import-component --cli-input-json file://import-component.json