

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á.

# Copie os produtos do AWS Service Catalog em diferentes contas e regiões da AWS
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions"></a>

*Sachin Vighe e Santosh Kale, Amazon Web Services*

## Resumo
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-summary"></a>

O AWS Service Catalog é um serviço regional e isso significa que os [portfólios e produtos](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/what-is_concepts.html) do AWS Service Catalog só são visíveis na região da AWS em que foram criados. Se você configurar um [hub do AWS Service Catalog](https://aws.amazon.com/about-aws/whats-new/2020/06/aws-service-catalog-now-supports-sharing-portfolios-across-an-organization-from-a-delegated-member-account/) em uma nova região, deverá recriar seus produtos existentes e isso pode ser um processo demorado.

A abordagem desse padrão ajuda a simplificar esse processo, descrevendo como copiar produtos de um hub do AWS Service Catalog em uma conta ou região da AWS de origem para um novo hub em uma conta ou região de destino. Para obter mais informações sobre o modelo hub e spoke do AWS Service Catalog, consulte o modelo [hub and spoke do AWS Service Catalog: Como automatizar a implantação e o gerenciamento do AWS Service Catalog em várias contas](https://aws.amazon.com/blogs/mt/aws-service-catalog-hub-and-spoke-model-how-to-automate-the-deployment-and-management-of-service-catalog-to-many-accounts/) no blog de gerenciamento e governança da AWS. 

O padrão também fornece os pacotes de códigos separados necessários para copiar os produtos do AWS Service Catalog entre contas ou para outras regiões. Ao usar esse padrão, sua organização pode economizar tempo, disponibilizar versões de produtos existentes e anteriores em um novo hub do AWS Service Catalog, minimizar o risco de erros manuais e escalar a abordagem em várias contas ou regiões.

**nota**  
A seção *Épicos* deste padrão oferece duas opções para copiar produtos. Você pode usar a Opção 1 para copiar produtos entre contas ou escolher a Opção 2 para copiar produtos entre regiões.

## Pré-requisitos e limitações
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-prereqs"></a>

**Pré-requisitos **
+ Uma conta AWS ativa
+ Produtos existentes do AWS Service Catalog em uma conta ou região de origem.
+ Um hub existente do AWS Service Catalog em uma conta ou região de destino.
+ Se quiser copiar produtos entre contas, você deve compartilhar e depois importar o portfólio do AWS Service Catalog contendo os produtos em sua conta de destino. Para obter mais informações sobre isso, consulte [Compartilhamento e importação de portfólios](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/catalogs_portfolios_sharing.html) na documentação do AWS Service Catalog.

**Limitações**
+ Os produtos do AWS Service Catalog que você deseja copiar entre regiões ou contas não podem pertencer a mais de um portfólio.

## Arquitetura
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-architecture"></a>

O diagrama a seguir mostra a cópia dos produtos do AWS Service Catalog de uma conta de origem para uma conta de destino.

![\[Um perfil entre contas na Região 1, um perfil de execução do Lambda e uma função do Lambda na Região 2.\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/images/pattern-img/7ede5d17-89eb-4455-928f-6953d145ac9f/images/26738220-1ed2-4f84-911b-3c88e954b60e.png)


 O diagrama a seguir mostra a cópia dos produtos do AWS Service Catalog de uma região de origem para uma região de destino.

![\[Produtos copiados usando a função scProductCopy Lambda na Região 2.\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/images/pattern-img/7ede5d17-89eb-4455-928f-6953d145ac9f/images/0a936792-3bdc-45c2-ba05-17e828615061.png)


**Pilha de tecnologia**
+ Amazon CloudWatch
+ AWS Identity and Access Management (IAM)
+ AWS Lambda
+ AWS Service Catalog

**Automação e escala**

Você pode escalar a abordagem desse padrão usando uma função do Lambda que pode ser escalada dependendo do número de solicitações recebidas ou de quantos produtos do AWS Service Catalog você precisa copiar. Para obter mais informações sobre isso, consulte [Escalabilidade da função do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/invocation-scaling.html) na documentação do AWS Lambda.

## Ferramentas
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-tools"></a>
+ A [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) é uma ferramenta de código aberto que permite que você interaja com serviços da AWS usando comandos no shell da linha de comando.
+ O [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) ajuda você a gerenciar com segurança o acesso aos seus recursos da AWS, controlando quem está autenticado e autorizado a usá-los.
+ O [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) é um serviço de computação que ajuda você a executar código sem exigir provisionamento ou gerenciamento de servidores. Ele executa o código somente quando necessário e dimensiona automaticamente, assim, você paga apenas pelo tempo de computação usado.
+ O [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html) ajuda você a gerenciar de modo centralizado os catálogos de serviços de TI aprovados para a AWS. Os usuários finais podem implantar rapidamente somente os serviços de TI aprovados de que precisam, seguindo as restrições definidas pela organização.

**Código **

Você pode usar o pacote ` cross-account-copy` (anexado) para copiar produtos do AWS Service Catalog entre contas ou o pacote `cross-region-copy` (anexado) para copiar produtos entre regiões.

O pacote `cross-account-copy` contém os seguintes arquivos:
+ `copyconf.properties`: o arquivo de configuração que contém os parâmetros de ID de conta da região e da AWS para copiar produtos entre contas.
+ `scProductCopyLambda.py`: a função Python para copiar produtos entre contas.
+ `createDestAccountRole.sh`: o script para criar um perfil do IAM na conta de destino.
+ `createSrcAccountRole.sh`: o script para criar um perfil do IAM na conta de origem.
+ `copyProduct.sh`: o script para criar e invocar a função do Lambda para copiar produtos entre contas.

O pacote `cross-region-copy` contém os seguintes arquivos:
+ `copyconf.properties`: o arquivo de configuração que contém os parâmetros de ID de conta da região e da AWS para copiar produtos entre regiões.
+ `scProductCopyLambda.py`: a função Python para copiar produtos entre regiões.
+ `copyProduct.sh`: o script para criar um perfil do IAM e criar e invocar a função do Lambda para copiar produtos entre regiões.

## Épicos
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-epics"></a>

### Opção 1 – Copiar os produtos do AWS Service Catalog entre contas
<a name="option-1-ndash-copy-aws-service-catalog-products-across-accounts"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Atualizar o arquivo de configuração. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Administrador da AWS, administrador de sistemas da AWS, administrador da nuvem | 
| Configure suas credenciais para a AWS CLI na conta de destino. | Configure suas credenciais para acessar a AWS CLI em sua conta de destino executando o comando `aws configure` e fornecendo os seguintes valores:<pre>$aws configure <br />AWS Access Key ID [None]: <your_access_key_id> <br />AWS Secret Access Key [None]: <your_secret_access_key> <br />Default region name [None]: Region<br />Default output format [None]:</pre>Para obter mais informações sobre isso, consulte [Princípios básicos](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html) da configuração na documentação da interface da linha de comando da AWS.  | Administrador da AWS, administrador de sistemas da AWS, administrador da nuvem | 
| Configure suas credenciais para a AWS CLI na conta de origem. | Configure suas credenciais para acessar a AWS CLI em sua conta de origem executando o comando `aws configure` e fornecendo os seguintes valores: <pre>$aws configure<br />AWS Access Key ID [None]: <your_access_key_id><br />AWS Secret Access Key [None]: <your_secret_access_key><br />Default region name [None]: Region<br />Default output format [None]:</pre>Para obter mais informações sobre isso, consulte [Princípios básicos](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html) da configuração na documentação da interface da linha de comando da AWS.  | Administrador da AWS, administrador de sistemas da AWS, administrador da nuvem | 
| Crie uma função de execução do Lambda na sua conta de destino. | Execute o script `createDestAccountRole.sh ` na sua conta de destino. O script implementa as seguintes ações:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Administrador da AWS, administrador de sistemas da AWS, administrador da nuvem | 
| Crie o perfil do IAM entre contas na sua conta de origem. | Execute o script `createSrcAccountRole.sh ` na sua conta de origem. O script implementa as seguintes ações:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Administrador da AWS, administrador de sistemas da AWS, administrador da nuvem | 
| Execute o script copyProduct na sua conta de destino. | Execute o script `copyProduct.sh ` na sua conta de destino. O script implementa as seguintes ações:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Administrador da AWS, administrador de sistemas da AWS, administrador da nuvem | 

### Opção 2 – Copiar produtos do AWS Service Catalog de uma região de origem para uma região de destino
<a name="option-2-ndash-copy-aws-service-catalog-products-from-a-source-region-to-a-destination-region"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Atualizar o arquivo de configuração. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Administrador de sistemas da AWS, administrador da nuvem, administrador da AWS | 
| Configurar as suas credenciais para a CLI da AWS | Configure suas credenciais para acessar a CLI da AWS em seu ambiente executando o comando `aws configure` e fornecendo os seguintes valores:<pre>$aws configure<br />AWS Access Key ID [None]: <your_access_key_id><br />AWS Secret Access Key [None]: <your_secret_access_key><br />Default region name [None]: Region<br />Default output format [None]:</pre>Para obter mais informações sobre isso, consulte [Princípios básicos](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html) da configuração na documentação da interface da linha de comando da AWS.  | Administrador da AWS, administrador de sistemas da AWS, administrador da nuvem | 
| Execute o script CopyProduct. | Execute o script `copyProduct.sh` na sua região de destino. O script implementa as seguintes ações:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Administrador da AWS, administrador de sistemas da AWS, administrador da nuvem | 

## Recursos relacionados
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-resources"></a>
+ [Criar uma função de execução do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html) (documentação do AWS Lambda)
+ [Criar uma função do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-awscli.html) (documentação do AWS Lambda)
+ [Referência da API do AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/dg/API_Operations_AWS_Service_Catalog.html)
+ [Documentação do AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/what-is_concepts.html)

## Anexos
<a name="attachments-7ede5d17-89eb-4455-928f-6953d145ac9f"></a>

Para acessar o conteúdo adicional associado a este documento, descompacte o seguinte arquivo: [ attachment.zip](samples/p-attach/7ede5d17-89eb-4455-928f-6953d145ac9f/attachments/attachment.zip)