

Aviso de fim do suporte: em 7 de outubro de 2026, AWS encerrará o suporte para AWS Proton. Depois de 7 de outubro de 2026, você não poderá mais acessar o AWS Proton console ou os AWS Proton recursos. Sua infraestrutura implantada permanecerá intacta. Para obter mais informações, consulte o Guia [AWS Proton de descontinuação e migração de serviços](https://docs.aws.amazon.com/proton/latest/userguide/proton-end-of-support.html).

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 ambiente
<a name="ag-create-env"></a>

Aprenda a criar AWS Proton ambientes.

**Você pode criar um AWS Proton ambiente de duas maneiras:**
+ Crie, gerencie e provisione um ambiente padrão usando um *modelo de ambiente padrão*. AWS Proton provisiona a infraestrutura para seu ambiente.
+ Conecte-se AWS Proton à infraestrutura gerenciada pelo cliente usando um modelo de ambiente gerenciado pelo *cliente*. Você provisiona seus próprios recursos compartilhados fora do e AWS Proton, em seguida, fornece saídas de provisionamento que AWS Proton podem ser usadas.

**Você pode escolher uma das várias abordagens de provisionamento ao criar um ambiente.**
+ *AWS provisionamento gerenciado* — crie, gerencie e provisione um ambiente em uma única conta. AWS Proton provisiona seu ambiente.

  Esse método só oferece suporte a modelos de código de CloudFormation infraestrutura (IaC).
+ *AWS provisionamento gerenciado para outra conta* — Em uma única conta de gerenciamento, crie e gerencie um ambiente provisionado em outra conta com conexões de conta de ambiente. AWS Proton provisiona seu ambiente na outra conta. Para obter mais informações, consulte [Criar um ambiente em uma conta e provisionar em outra conta](#ag-create-env-deploy-other) e [Conexões de conta de ambiente](ag-env-account-connections.md).

  Esse método suporta apenas modelos de CloudFormation IaC.
+ *Provisionamento autogerenciado* — AWS Proton envia pull requests de provisionamento para um repositório vinculado com sua própria infraestrutura de provisionamento.

  Esse método oferece suporte somente a modelos do Terraform IaC.
+ *CodeBuild provisionamento* — AWS Proton usa AWS CodeBuild para executar comandos de shell fornecidos por você. Seus comandos podem ler as entradas que AWS Proton fornecem e são responsáveis por provisionar ou desprovisionar a infraestrutura e gerar valores de saída. Um pacote de modelos para esse método inclui seus comandos em um arquivo de manifesto e quaisquer programas, scripts ou outros arquivos que esses comandos possam precisar.

  Como exemplo do uso do CodeBuild provisionamento, você pode incluir um código que usa o AWS Cloud Development Kit (AWS CDK) para provisionar AWS recursos e um manifesto que instala o CDK e executa seu código CDK.

  Para obter mais informações, consulte [CodeBuild pacote de modelos de provisionamento](ag-infrastructure-tmp-files-codebuild.md).
**nota**  
Você pode usar o CodeBuild provisionamento com ambientes e serviços. No momento, você não pode provisionar componentes dessa forma.

Com o provisionamento AWS gerenciado (na mesma conta e em outra conta), AWS Proton faz chamadas diretas para provisionar seus recursos.

Com o provisionamento autogerenciado, AWS Proton faz pull requests para fornecer arquivos IaC compilados que seu mecanismo de IaC usa para provisionar recursos.

Para obter mais informações, consulte [Como AWS Proton provisiona a infraestrutura](ag-works-prov-methods.md), [Pacotes de modelos](ag-template-authoring.md#ag-template-bundles) e [Requisitos de esquema para pacotes de modelos de ambiente](ag-schema.md#schema-req-env).

**Topics**
+ [Crie e provisione um ambiente padrão na mesma conta](#ag-create-env-same-account)
+ [Criar um ambiente em uma conta e provisionar em outra conta](#ag-create-env-deploy-other)
+ [Crie e provisione um ambiente usando o provisionamento autogerenciado](#ag-create-env-pull-request)

## Crie e provisione um ambiente padrão na mesma conta
<a name="ag-create-env-same-account"></a>

Use o console ou AWS CLI para criar e provisionar um ambiente em uma única conta. O provisionamento é gerenciado por. AWS

------
#### [ Console de gerenciamento da AWS ]

**Use o console para criar e provisionar um ambiente em uma única conta.**

1. No [console do AWS Proton](https://console.aws.amazon.com//proton/), escolha **Ambientes**.

1. Selecione **Criar ambiente**.

1. Na página **Escolher um modelo de ambiente**, selecione um modelo e escolha **Configurar**.

1. Na página **Configurar ambiente**, na seção **Provisionamento**, escolha **Provisionamento gerenciado pela AWS **.

1. Na seção **Conta de implantação**, escolha **Esta Conta da AWS**.

1. Na página **Configurar ambiente**, na seção **Configurações do ambiente**, insira um **Nome de ambiente**.

1. (Opcional) Insira uma descrição do ambiente.

1. Na seção **Perfis de ambiente**, selecione o perfil de serviço do AWS Proton que você criou como parte de [Configurando funções AWS Proton de serviço](ag-setting-up-iam.md#setting-up-cicd).

1. (Opcional) Na seção **Perfil do componente**, selecione um perfil de serviço que permita que componentes diretamente definidos sejam executados no ambiente e defina o escopo dos recursos que eles podem provisionar. Para obter mais informações, consulte [AWS Proton componentes](ag-components.md).

1. (Opcional) Na seção **Tags**, escolha **Adicionar nova tag** e insira uma chave e um valor para criar uma tag gerenciada pelo cliente.

1. Escolha **Próximo**.

1. Na página **Definir configurações personalizadas do ambiente**, você deve inserir valores para os parâmetros `required`. Você pode inserir valores para os parâmetros `optional` ou usar os padrões quando fornecidos.

1. Escolha **Avançar** e revise suas entradas.

1. Escolha **Criar**.

   Visualize os detalhes e o status do ambiente, bem como as tags gerenciadas pela AWS e as tags gerenciadas pelo cliente para seu ambiente.

1. No painel de navegação, escolha **Ambientes**.

   Uma nova página exibe uma lista de seus ambientes junto com o status e outros detalhes do ambiente.

------
#### [ AWS CLI ]

**Use o AWS CLI para criar e provisionar um ambiente em uma única conta.**

Para criar um ambiente, você especifica o ARN do [perfil de serviço](security_iam_service-role-policy-examples.md#proton-svc-role) do AWS Proton , o caminho para o arquivo de especificação, o nome do ambiente, o ARN do modelo de ambiente, as versões principal e secundária e a descrição (opcional).

Os próximos exemplos mostram um arquivo de especificação formatado YAML que especifica valores para duas entradas definidas no arquivo de esquema do modelo de ambiente. Você pode usar o comando `get-environment-template-minor-version` para visualizar o esquema de modelo do ambiente.

```
proton: EnvironmentSpec
spec:
  my_sample_input: "the first"
  my_other_sample_input: "the second"
```

Crie um ambiente executando o comando a seguir.



```
$ aws proton create-environment \
    --name "MySimpleEnv" \
    --template-name simple-env \
    --template-major-version 1 \
    --proton-service-role-arn "arn:aws:iam::123456789012:role/AWS ProtonServiceRole" \
    --spec "file://env-spec.yaml"
```

Resposta:

```
{
    "environment": {
        "arn": "arn:aws:proton:region-id:123456789012:environment/MySimpleEnv",
        "createdAt": "2020-11-11T23:03:05.405000+00:00",
        "deploymentStatus": "IN_PROGRESS",
        "lastDeploymentAttemptedAt": "2020-11-11T23:03:05.405000+00:00",
        "name": "MySimpleEnv",
        "protonServiceRoleArn": "arn:aws:iam::123456789012:role/ProtonServiceRole",
        "templateName": "simple-env"
    }
}
```

Depois de criar um novo ambiente, você pode ver uma lista de AWS tags gerenciadas pelo cliente, conforme mostrado no exemplo de comando a seguir. AWS Proton gera automaticamente tags AWS gerenciadas para você. Você também pode modificar e criar etiquetas gerenciadas pelo cliente usando o AWS CLI. Para obter mais informações, consulte [AWS Proton recursos e marcação](resources.md).

Comando:

```
$ aws proton list-tags-for-resource \
    --resource-arn "arn:aws:proton:region-id:123456789012:environment/MySimpleEnv"
```

------

## Criar um ambiente em uma conta e provisionar em outra conta
<a name="ag-create-env-deploy-other"></a>

Use o console ou AWS CLI crie um ambiente padrão em uma conta de gerenciamento que provisione a infraestrutura do ambiente em outra conta. O provisionamento é gerenciado pelo AWS. 

**Antes de usar o console ou a CLI, conclua as seguintes etapas.**

1. Identifique-os Conta da AWS IDs para a conta de gerenciamento e ambiente e copie-os para uso posterior.

1. Na conta do ambiente, crie uma função AWS Proton de serviço com permissões mínimas para o ambiente criar. Para obter mais informações, consulte [AWS Proton função de serviço para provisionamento usando CloudFormation](security_iam_service-role-policy-examples.md#proton-svc-role).

------
#### [ Console de gerenciamento da AWS ]

**Use o console para um ambiente em uma conta e provisionar em outra.**

1. 

**Na conta de ambiente, crie uma conexão de conta de ambiente e use-a para enviar uma solicitação de conexão com a conta de gerenciamento.**

   1. No [console do AWS Proton](https://console.aws.amazon.com//proton/), escolha **Conexões de conta de ambiente** no painel de navegação.

   1. Na página **Conexões da conta de ambiente**, escolha **Solicitar conexão**.
**nota**  
Verifique se a ID da conta listada no título da página de **Conexão da conta de ambiente** corresponde à sua ID de conta de ambiente pré-identificada.

   1. Na página **Solicitação de conexão**, na seção **Perfil do ambiente**, selecione **Perfil de serviço existente** e o nome do perfil de serviço que você criou para o ambiente.

   1. Na seção **Conectar à conta de gerenciamento**, insira o **ID da conta de gerenciamento** e um **nome de ambiente** para seu AWS Proton ambiente. Copie o nome para uso posterior.

   1. Escolha **Solicitar conexão** no canto inferior direito da página.

   1. Sua solicitação aparece como pendente na tabela de **conexões de ambiente enviadas para contas de gerenciamento** e um modal mostra como aceitar a solicitação da conta de gerenciamento.

1. 

**Na conta de gerenciamento, aceite uma solicitação para se conectar a partir da conta do ambiente.**

   1. Faça login na sua conta de gerenciamento e escolha **Conexões da conta de ambiente** no AWS Proton console.

   1. Na página **Conexões da conta de ambiente**, na tabela **Solicitações de conexão de conta de ambiente**, selecione a conexão da conta de ambiente com a ID da conta de ambiente que corresponde à sua ID de conta de ambiente pré-identificada.
**nota**  
Verifique se a ID da conta listada no título da página de **Conexão da conta de ambiente** corresponde à sua ID de conta de gerenciamento pré-identificada.

   1. Escolha **Accept (Aceitar)**. O status muda de PENDENTE para CONECTADO.

1. 

**Na conta de gerenciamento, crie um ambiente.**

   1. No painel de navegação, escolha **Modelos de ambiente**.

   1. Na página **Modelos de ambiente**, escolha **Criar modelo de ambiente**.

   1. Na página **Escolher um modelo de ambiente**, escolha um modelo de ambiente.

   1. Na página **Configurar ambiente**, na seção **Provisionamento**, escolha **Provisionamento gerenciado pela AWS **.

   1. Na seção **Conta de implantação**, escolha **Outra AWS conta;**.

   1. Na seção **Detalhes do ambiente**, selecione a **Conexão da conta do ambiente** e o **Nome do ambiente**.

   1. Escolha **Próximo**.

   1. Preencha os formulários e escolha **Avançar** até chegar à página **Revisar e criar**.

   1. Revise e escolha **Criar ambiente**.

------
#### [ AWS CLI ]

**Use o AWS CLI para criar um ambiente em uma conta e provisionar em outra.**

Na conta de ambiente, crie uma conexão de conta de ambiente e solicite a conexão executando o comando a seguir.

```
$ aws proton create-environment-account-connection \
    --environment-name "simple-env-connected" \
    --role-arn "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role" \
    --management-account-id "111111111111"
```

Resposta:

```
{
    "environmentAccountConnection": {
        "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "environmentName": "simple-env-connected",
        "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "lastModifiedAt": "2021-04-28T23:13:50.847000+00:00",
        "managementAccountId": "111111111111",
        "requestedAt": "2021-04-28T23:13:50.847000+00:00",
        "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role",
        "status": "PENDING"
    }
}
```

Na conta de gerenciamento, aceite o pedido de conexão de conta de ambiente conexão executando o comando a seguir.

```
$ aws proton accept-environment-account-connection \
    --id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
```

Resposta:

```
{
    "environmentAccountConnection": {
        "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "environmentName": "simple-env-connected",
        "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "lastModifiedAt": "2021-04-28T23:15:33.486000+00:00",
        "managementAccountId": "111111111111",
        "requestedAt": "2021-04-28T23:13:50.847000+00:00",
        "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role",
        "status": "CONNECTED"
    }
}
```

Visualize a conexão da sua conta de ambiente executando o comando a seguir.

```
$ aws proton get-environment-account-connection \
    --id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
```

Resposta:

```
{
    "environmentAccountConnection": {
        "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "environmentName": "simple-env-connected",
        "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "lastModifiedAt": "2021-04-28T23:15:33.486000+00:00",
        "managementAccountId": "111111111111",
        "requestedAt": "2021-04-28T23:13:50.847000+00:00",
        "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role",
        "status": "CONNECTED"
    }
}
```

Na conta de gerenciamento, crie um ambiente executando o comando a seguir.

```
$ aws proton create-environment \
    --name "simple-env-connected" \
    --template-name simple-env-template \
    --template-major-version "1" \
    --template-minor-version "1" \
    --spec "file://simple-env-template/specs/original.yaml" \
    --environment-account-connection-id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
```

Resposta:

```
{
    "environment": {
        "arn": "arn:aws:proton:region-id:111111111111:environment/simple-env-connected",
        "createdAt": "2021-04-28T23:02:57.944000+00:00",
        "deploymentStatus": "IN_PROGRESS",
        "environmentAccountConnectionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "lastDeploymentAttemptedAt": "2021-04-28T23:02:57.944000+00:00",
        "name": "simple-env-connected",
        "templateName": "simple-env-template"
    }
}
```

------

## Crie e provisione um ambiente usando o provisionamento autogerenciado
<a name="ag-create-env-pull-request"></a>

Quando você usa o provisionamento autogerenciado, AWS Proton envia pull requests de provisionamento para um repositório vinculado com sua própria infraestrutura de provisionamento. As pull requests iniciam seu próprio fluxo de trabalho, que chama AWS serviços; para provisionar a infraestrutura.

**Considerações sobre provisionamento autogerenciado:**
+ Antes de criar um ambiente, configure um diretório de recursos do repositório para provisionamento autogerenciado. Para obter mais informações, consulte [AWS Proton infraestrutura como arquivos de código](ag-infrastructure-tmp-files.md).
+ Depois de criar o ambiente, AWS Proton espera receber notificações assíncronas sobre o status do provisionamento da sua infraestrutura. Seu código de provisionamento deve usar a AWS Proton `NotifyResourceStateChange` API para enviar essas notificações assíncronas para o. AWS Proton

Você pode usar o provisionamento autogerenciado no console ou com a AWS CLI. Os exemplos a seguir mostram como você pode usar o provisionamento autogerenciado com o Terraform.

------
#### [ Console de gerenciamento da AWS ]

**Use o console para criar um ambiente do Terraform usando provisionamento autogerenciado.**

1. No [console do AWS Proton](https://console.aws.amazon.com//proton/), escolha **Ambientes**.

1. Selecione **Criar ambiente**.

1. Na página **Escolher um modelo de ambiente**, selecione um modelo do Terraform e escolha **Configurar**.

1. Na página **Configurar ambiente**, na seção **Provisionamento**, escolha **Provisionamento autogerenciado**.

1. Na seção **Detalhes do repositório de provisionamento**:

   1. Se você ainda não [vinculou seu repositório de aprovisionamento AWS Proton](ag-create-repo.md), escolha **Novo repositório**, escolha um dos provedores de repositório e, em seguida, para **CodeStarconexão**, escolha uma de suas conexões.
**nota**  
Se você ainda não tiver uma conexão com a conta do provedor de repositório relevante, escolha **Adicionar uma nova CodeStar conexão**. Em seguida, crie uma conexão e escolha o botão Atualizar ao lado do menu de **CodeStar conexão**. Agora você deve ser capaz de escolher sua nova conexão no menu.

      Se você já vinculou seu repositório ao AWS Proton, escolha **Repositório existente**.

   1. Em **Nome do repositório**, escolha um repositório. O menu suspenso mostra os repositórios vinculados para o **Repositório existente** ou a lista de repositórios na conta do provedor para o **Novo repositório.**

   1. Em **Nome da ramificação**, escolha uma das ramificações do repositório.

1. Na seção **Configurações do ambiente**, insira um **Nome de ambiente**.

1. (Opcional) Insira uma descrição do ambiente.

1. (Opcional) Na seção **Tags**, escolha **Adicionar nova tag** e insira uma chave e um valor para criar uma tag gerenciada pelo cliente.

1. Escolha **Próximo**.

1. Na página **Definir configurações personalizadas do ambiente**, você deve inserir valores para os parâmetros `required`. Você pode inserir valores para os parâmetros `optional` ou usar os padrões quando fornecidos.

1. Escolha **Avançar** e revise suas entradas.

1. Escolha **Criar** para enviar uma pull request.
   + Se você aprovar a pull request, a implantação está em andamento.
   + Se você rejeitar a pull request, a criação do ambiente será cancelada.
   + Se o tempo limite do pull request expirar, a criação do ambiente *não será* concluída.

1. Visualize os detalhes e o status do ambiente, bem como as tags AWS gerenciadas e as tags gerenciadas pelo cliente do seu ambiente.

1. No painel de navegação, escolha **Ambientes**.

   Uma nova página exibe uma lista de seus ambientes junto com o status e outros detalhes do ambiente.

------
#### [ AWS CLI ]

Ao criar um ambiente usando o provisionamento autogerenciado, você *adiciona* o parâmetro `provisioningRepository` e omite os parâmetros `ProtonServiceRoleArn` e `environmentAccountConnectionId`.

**Use o AWS CLI para criar um ambiente Terraform com provisionamento autogerenciado.**

1. Crie um ambiente e envie uma pull request ao repositório para análise e aprovação.

   Os próximos exemplos mostram um arquivo de especificação formatado pelo YAML que define os valores para duas entradas com base no arquivo de esquema do modelo de ambiente. Você pode usar o comando `get-environment-template-minor-version` para visualizar o esquema de modelo do ambiente.

   Especificação:

   ```
   proton: EnvironmentSpec
   spec:
     ssm_parameter_value: "test"
   ```

   Crie um ambiente executando o comando a seguir.

   ```
   $ aws proton create-environment \
       --name "pr-environment" \
       --template-name "pr-env-template" \
       --template-major-version "1" \
       --provisioning-repository="branch=main,name=myrepos/env-repo,provider=GITHUB" \
       --spec "file://env-spec.yaml"
   ```

   Response:>

   ```
   {
       "environment": {
           "arn": "arn:aws:proton:region-id:123456789012:environment/pr-environment",
           "createdAt": "2021-11-18T17:06:58.679000+00:00",
           "deploymentStatus": "IN_PROGRESS",
           "lastDeploymentAttemptedAt": "2021-11-18T17:06:58.679000+00:00",
           "name": "pr-environment",
           "provisioningRepository": {
               "arn": "arn:aws:proton:region-id:123456789012:repository/github:myrepos/env-repo",
               "branch": "main",
               "name": "myrepos/env-repo",
               "provider": "GITHUB"
           },
           "templateName": "pr-env-template"
       }
   ```

1. Revisar a solicitação
   + Se você aprovar a solicitação, o provisionamento está em andamento.
   + Se você rejeitar a solicitação, a criação do ambiente será cancelada.
   + Se o tempo limite do pull request expirar, a criação do ambiente *não será* concluída.

1. Forneça de forma assíncrona o status de provisionamento para. AWS Proton O exemplo a seguir notifica sobre AWS Proton um provisionamento bem-sucedido.

   ```
   $ aws proton notify-resource-deployment-status-change \
       --resource-arn "arn:aws:proton:region-id:123456789012:environment/pr-environment" \
       --status "SUCCEEDED"
   ```

------