

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

# Automatize as operações de AWS infraestrutura usando o Amazon Bedrock
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock"></a>

*Ishwar Chauthaiwale e Anand Bukkapatnam Tirumala, Amazon Web Services*

## Resumo
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-summary"></a>

Em soluções nativas da nuvem, automatizar operações comuns de infraestrutura desempenha um papel fundamental na manutenção de ambientes eficientes, seguros e econômicos. Realizar operações de forma manual é um processo demorado e propenso a erros por parte dos humanos. Além disso, membros da equipe com diferentes níveis de AWS especialização precisam realizar essas tarefas e, ao mesmo tempo, garantir a conformidade com os protocolos de segurança. Esse padrão demonstra como usar o Amazon Bedrock para automatizar operações comuns de AWS infraestrutura por meio do processamento de linguagem natural (NLP).

Com este padrão, as organizações podem desenvolver código modular, reutilizável e seguro para a implantação de infraestrutura baseada em IA generativa em diversos ambientes. Por meio de seu foco na infraestrutura como código (IaC) e na automação, ela oferece DevOps os principais benefícios, incluindo controle de versão, implantações consistentes, redução de erros, provisionamento mais rápido e colaboração aprimorada.

O padrão implementa uma arquitetura segura que permite que as equipes gerenciem operações relacionadas à chave Serviços da AWS , incluindo:
+ Gerenciamento de versionamento de buckets do Amazon Simple Storage Service (Amazon S3)
+ Criação de snapshots do Amazon Relational Database Service (Amazon RDS)
+ Gerenciamento de instâncias do Amazon Elastic Compute Cloud (Amazon EC2)

A arquitetura emprega endpoints e redes privadas da Amazon Virtual Private Cloud (Amazon VPC) para comunicação segura, AWS Lambda com funções operando como executores de tarefas em sub-redes privadas. O Amazon S3 fornece gerenciamento de dados e implementa funções e permissões abrangentes AWS Identity and Access Management (IAM) para garantir controles de acesso adequados. Esta solução não inclui um recurso de histórico para chat, e as conversas não são armazenadas.

## Pré-requisitos e limitações
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-prereqs"></a>
+ Um ativo Conta da AWS.
+ Medidas adequadas de controle de acesso devem estar implementadas para ajudar a proteger e a gerenciar o acesso. Exemplos de controle de acesso incluem o uso de acesso a modelos básicos AWS Systems Manager, uma função do IAM para implantação e funções baseadas em serviços, a desativação do acesso público aos buckets do Amazon S3 e a configuração de uma fila de mensagens mortas.
+ Uma [chave AWS Key Management Service (AWS KMS) gerenciada pelo cliente](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk).
+ AWS Command Line Interface (AWS CLI) versão 2 ou posterior, [instalada](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) e [configurada](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html) no ambiente de implantação.
+ Terraform AWS Provider versão 4 ou posterior [instalado](https://registry.terraform.io/providers/-/aws/latest/docs/guides/version-4-upgrade) e configurado.
+ O Terraform, na versão 1.5.7 ou em versões posteriores, [instalado](https://developer.hashicorp.com/terraform/install) e configurado.
+ Analise e [defina os esquemas da OpenAPI para os grupos de ação do seu agente no Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-api-schema.html), com o objetivo de prevenir acessos não autorizados e garantir a integridade dos dados.
+ [Acesso habilitado](https://docs.aws.amazon.com/bedrock/latest/userguide/model-access-modify.html) [em seu Conta da AWS para os modelos Amazon Titan Text Embeddings v2 necessários e para os modelos Claude 3.5 Sonnet ou Claude 3 Haiku Foundation.](https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html) Para evitar falhas na implantação, confirme se a implantação de destino é Região da AWS [compatível com os modelos necessários](https://docs.aws.amazon.com/bedrock/latest/userguide/models-regions.html).
+ Uma nuvem privada virtual (VPC) configurada com base nas práticas recomendadas do [AWS Well Architected Framework](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec-design.html).
+ Análise da [política de uso responsável de IA da Amazon](https://aws.amazon.com/ai/responsible-ai/policy/) concluída.

**Versões do produto**
+ Incorporador de Texto do Amazon Titan v2
+ Claude 3.5 Sonnet ou Claude 3 Haiku da Anthropic
+ Terraform AWS Provider versão 4 ou posterior
+ Terraform versão 1.5.7 ou posterior

## Arquitetura
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-architecture"></a>

O diagrama a seguir mostra o fluxo de trabalho e os componentes da arquitetura desse padrão.

![\[Fluxo de trabalho para automatizar operações conhecidas de infraestrutura da AWS usando o Amazon Bedrock.\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/images/pattern-img/924e503f-bfc5-4452-abdf-d72a58d4d36f/images/bd56ad29-b435-4543-8ee8-dc4e1d38df18.png)


A arquitetura da solução consiste em várias camadas que trabalham juntas para processar solicitações de linguagem natural e executar AWS as operações correspondentes:

1. O usuário realiza solicitações de operações por meio do console de chat do Amazon Bedrock.

1. O chatbot usa as Bases de Conhecimento para Amazon Bedrock para o processamento das solicitações. Esse chatbot implementa o modelo Incorporador de Texto do Amazon Titan v2 para o processamento da linguagem natural.

1. Se o prompt fornecido pelo usuário incluir uma solicitação de ação, o grupo de ações do Amazon Bedrock usará o modelo Claude 3 Haiku ou Claude 3.5 Sonnet da Anthropic, com base na sua escolha, para determinar a lógica de execução e definir as operações por meio de um esquema da OpenAPI.

1. O grupo de ação alcança os [endpoints](https://docs.aws.amazon.com/whitepapers/latest/aws-privatelink/what-are-vpc-endpoints.html) da Amazon VPC usando AWS PrivateLink para comunicação segura de serviços.

1. A AWS Lambda função é alcançada por meio de endpoints Amazon VPC para serviços Amazon Bedrock.

1. As funções do Lambda são o principal mecanismo de execução. Com base na solicitação, a função do Lambda chama a API para executar ações nos serviços da Serviços da AWS. Além disso, a função do Lambda gerencia o roteamento e a execução das operações.

1. A solicitação Serviços da AWS get the API da função Lambda e as operações correspondentes são executadas.

1. A função do Lambda gera uma carga útil de saída que é compreendida pelo Amazon Bedrock.

1. Essa carga é enviada para o Amazon Bedrock usando PrivateLink para comunicação segura de serviços. O grande modelo de linguagem (LLM) empregado pelo Amazon Bedrock compreende essa carga útil e a converte em um formato compreensível por humanos.

1. Em seguida, a saída é apresentada ao usuário no console de chat do Amazon Bedrock.

A solução possibilita as seguintes operações principais:
+ Amazon S3: habilitar o versionamento de buckets para controle de versões.
+ Amazon RDS: criar snapshots de bancos de dados para backup.
+ Amazon EC2: listar instâncias e controlar o início e a interrupção das instâncias.

## Ferramentas
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-tools"></a>

**Serviços da AWS**
+ [O Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-bedrock.html) é um serviço totalmente gerenciado que disponibiliza modelos básicos de alto desempenho (FMs) das principais startups de IA e da Amazon para seu uso por meio de uma API unificada.
+ [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 ajuda você a interagir Serviços da AWS por meio de comandos em seu shell de linha de comando.
+ O [Amazon Elastic Compute Cloud (Amazon EC2)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html) oferece capacidade de computação escalável na Nuvem AWS. Você poderá iniciar quantos servidores virtuais precisar e escalá-los na vertical rapidamente.
+ [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 AWS recursos 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 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 Amazon OpenSearch Serverless](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-overview.html) é uma configuração sem servidor sob demanda para o Amazon Service. OpenSearch 
+ [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/what-is-privatelink.html)ajuda você a criar conexões unidirecionais e privadas de suas nuvens privadas virtuais (VPCs) para serviços fora da VPC.
+ O [Amazon Relational Database Service (Amazon RDS)](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html) ajuda você a configurar, operar e escalar um banco de dados relacional na Nuvem AWS.
+ O [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) é um serviço de armazenamento de objetos baseado na nuvem que ajuda você a armazenar, proteger e recuperar qualquer quantidade de dados.
+ O [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) ajuda você a gerenciar suas aplicações e infraestrutura em execução na Nuvem AWS. Ele simplifica o gerenciamento de aplicativos e recursos, reduz o tempo para detectar e resolver problemas operacionais e ajuda você a gerenciar seus AWS recursos com segurança em grande escala.
+ [A Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) ajuda você a lançar AWS recursos em uma rede virtual que você definiu. Essa rede virtual é semelhante a uma rede tradicional que você operaria no próprio datacenter, com os benefícios de usar a infraestrutura escalável da AWS.

**Outras ferramentas**
+ O [Git](https://git-scm.com/docs) é um sistema de controle de versão distribuído e de código aberto.
+ [O Terraform](https://www.terraform.io/) é uma ferramenta de infraestrutura como código (IaC) HashiCorp que ajuda você a criar e gerenciar recursos na nuvem e no local.

**Repositório de código**

O código desse padrão está disponível no repositório GitHub [infra-ops-orchestratoraws-samples/](https://github.com/aws-samples/infra-ops-orchestrator).

## Práticas recomendadas
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-best-practices"></a>
+ Monitore regularmente os logs de execução do Lambda. Para obter mais informações, consulte [Monitorar e solucionar problemas de funções do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-monitoring.html). Para obter mais informações sobre as melhores práticas, consulte [Práticas recomendadas para trabalhar com AWS Lambda funções](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html).
+ Analise periodicamente as configurações de segurança para garantir a conformidade com os requisitos da sua organização. Para obter mais informações, consulte [Security best practices](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec-bp.html).
+ Respeite o princípio de privilégio mínimo, garantindo somente as permissões estritamente necessárias para a execução de uma tarefa. Para obter mais informações, consulte [Concessão de privilégio mínimo](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#grant-least-priv) e [Práticas recomendadas de segurança](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) na documentação do IAM.

## Épicos
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-epics"></a>

### Implante a solução
<a name="deploy-the-solution"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Clonar o repositório. | Para clonar o repositório em sua máquina local, execute o seguinte comando:<pre>git clone "git@github.com:aws-samples/infra-ops-orchestrator.git"<br />cd infra-ops-orchestrator</pre> | AWS DevOps, DevOps engenheiro | 
| Edite as variáveis de ambiente. | Edite o arquivo `terraform.tfvars` no diretório raiz do repositório clonado. Analise os espaços reservados indicados por `[XXXXX]` e atualize-os de acordo com o seu ambiente. | AWS DevOps, DevOps engenheiro | 
| Crie a infraestrutura. | Para criar a infraestrutura, execute os seguintes comandos:<pre>terraform init</pre><pre>terraform plan</pre>Analise cuidadosamente o plano de execução. Se as alterações propostas estiverem adequadas, execute o seguinte comando:<pre>terraform apply --auto-approve</pre> | AWS DevOps, DevOps engenheiro | 

### Acesso à solução
<a name="access-the-solution"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Acesse a solução. | Após a implantação com êxito, siga estas etapas para usar a interface baseada em chat:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/automate-aws-infrastructure-operations-by-using-amazon-bedrock.html) | AWS DevOps, DevOps engenheiro | 

### Limpar os recursos
<a name="clean-up-resources"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Exclua os recursos criados. | Para excluir toda a infraestrutura criada por este padrão, execute o seguinte comando:<pre>terraform plan -destroy </pre>Analise cuidadosamente o plano de exclusão. Se as exclusões propostas estiverem adequadas, execute o seguinte comando:<pre>terraform destroy</pre>Observação: este comando excluirá permanentemente todos os recursos criados por este padrão. O comando solicitará confirmação antes de remover quaisquer recursos. | AWS DevOps, DevOps engenheiro | 

## Solução de problemas
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-troubleshooting"></a>


| Problema | Solução | 
| --- | --- | 
| Comportamento do agente  | Para obter informações sobre este problema, consulte [Test and troubleshoot agent behavior](https://docs.aws.amazon.com/lambda/latest/dg/troubleshooting-networking.html) na documentação do Amazon Bedrock. | 
| Problemas de rede relacionados ao Lambda | Para obter informações sobre estes problemas, consulte [Solucionar problemas de redes no Lambda](https://docs.aws.amazon.com/lambda/latest/dg/troubleshooting-networking.html) na documentação do Lambda. | 
| permissões do IAM | Para obter informações sobre estes problemas, consulte [Solucionar problemas do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot.html) na documentação do IAM. | 

## Recursos relacionados
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-resources"></a>
+ [Criação de um DB snapshot para uma instância de banco de dados Single-AZ para o Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html)
+ [Define OpenAPI schemas for your agent's action groups in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-api-schema.html)
+ [Ativando o controle de versão em buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/manage-versioning-examples.html)
+ [Como o Amazon Bedrock Agents funciona](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-how.html)
+ [Retrieve data and generate AI responses with Amazon Bedrock Knowledge Bases](https://docs.aws.amazon.com/whitepapers/latest/aws-privatelink/aws-privatelink.html)
+ [Acesse com segurança os serviços em AWS PrivateLink](https://docs.aws.amazon.com/whitepapers/latest/aws-privatelink/aws-privatelink.html)
+ [Pare e inicie instâncias do Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html)
+ [Use grupos de ação para definir ações para seu agente realizar](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-action-create.html)