

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Automatice las operaciones de AWS infraestructura con Amazon Bedrock
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock"></a>

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

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

En las soluciones nativas en la nube, la automatización de las operaciones de infraestructura comunes desempeña un papel fundamental a la hora de mantener entornos eficientes, seguros y rentables. La gestión manual de las operaciones lleva mucho tiempo y es propensa a errores humanos. Además, los miembros del equipo con distintos niveles de AWS experiencia deben realizar estas tareas y, al mismo tiempo, garantizar el cumplimiento de los protocolos de seguridad. Este patrón demuestra cómo usar Amazon Bedrock para automatizar las operaciones de AWS infraestructura comunes mediante el procesamiento del lenguaje natural (NLP).

Este patrón puede ayudar a las organizaciones a desarrollar código reutilizable, modular y seguro para implementar una infraestructura basada en IA generativa en varios entornos. Al centrarse en la infraestructura como código (IaC) y en la automatización, ofrece DevOps beneficios clave, como el control de versiones, las implementaciones coherentes, la reducción de los errores, el aprovisionamiento más rápido y la mejora de la colaboración.

El patrón implementa una arquitectura segura que permite a los equipos gestionar las operaciones relacionadas con aspectos clave, entre los que se incluyen: Servicios de AWS 
+ Administración del control de versiones para un bucket de Amazon Simple Storage Service (Amazon S3)
+ Creación de instantáneas de Amazon Relational Database Service (Amazon RDS)
+ Administración de instancias de Amazon Elastic Compute Cloud (Amazon EC2)

La arquitectura emplea puntos finales de Amazon Virtual Private Cloud (Amazon VPC) y redes privadas para una comunicación segura, con AWS Lambda funciones que funcionan como ejecutores de tareas dentro de subredes privadas. Amazon S3 proporciona administración de datos e implementa funciones y permisos integrales AWS Identity and Access Management (IAM) para garantizar los controles de acceso adecuados. Esta solución no incluye una característica de historial de chat y el chat no se almacena.

## Requisitos previos y limitaciones
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-prereqs"></a>
+ Un activo Cuenta de AWS.
+ Deben existir medidas de control de acceso adecuadas para proteger y controlar el acceso. Algunos ejemplos de control de acceso incluyen el uso AWS Systems Manager de modelos básicos de acceso, una función de IAM para la implementación y funciones basadas en servicios, la inhabilitación del acceso público a los buckets de Amazon S3 y la configuración de una cola de espera.
+ [Una () clave gestionada por el cliente. AWS Key Management ServiceAWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk)
+ AWS Command Line Interface (AWS CLI) versión 2 o posterior, [instalada](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) y [configurada](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html) en el entorno de implementación.
+ [Instalación](https://registry.terraform.io/providers/-/aws/latest/docs/guides/version-4-upgrade) y configuración de Terraform AWS Provider, versión 4 o posterior.
+ La versión 1.5.7 o posterior de Terraform [instalada](https://developer.hashicorp.com/terraform/install) y configurada.
+ Revise y [defina los esquemas de OpenAPI para los grupos de acciones del agente en Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-api-schema.html) para protegerse del acceso no autorizado y mantener la integridad de los datos.
+ [El [acceso está habilitado](https://docs.aws.amazon.com/bedrock/latest/userguide/model-access-modify.html) en su Cuenta de AWS dispositivo para los modelos Amazon Titan Text Embeddings v2 necesarios y para los modelos de base Claude 3.5 Sonnet o Claude 3 Haiku.](https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html) [Para evitar errores en la implementación, confirme que la implementación de destino es compatible con los modelos requeridos Región de AWS .](https://docs.aws.amazon.com/bedrock/latest/userguide/models-regions.html)
+ Una nube privada virtual (VPC) configurada que sigue las prácticas recomendadas de [AWS Well Architected Framework](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec-design.html).
+ Revisión completa de la [política de IA responsable de Amazon](https://aws.amazon.com/ai/responsible-ai/policy/).

**Versiones de producto**
+ Amazon Titan Text Embeddings V2
+ Anthropic Claude 3.5 Sonnet or Claude 3 Haiku
+ Terraform AWS Provider versión 4 o posterior
+ Terraform versión 1.5.7 o posterior

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

En el siguiente diagrama se muestran los componentes de la arquitectura y el flujo de trabajo de esta aplicación.

![\[Flujo de trabajo para automatizar operaciones comunes de infraestructura de AWS mediante Amazon Bedrock.\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/images/pattern-img/924e503f-bfc5-4452-abdf-d72a58d4d36f/images/bd56ad29-b435-4543-8ee8-dc4e1d38df18.png)


La arquitectura de la solución consta de varias capas que funcionan juntas para procesar las solicitudes en lenguaje natural y ejecutar las operaciones correspondientes AWS :

1. El usuario realiza solicitudes de operaciones a través de la consola de chat de Amazon Bedrock.

1. El chatbot utiliza las bases de conocimiento de Amazon Bedrock para procesar las solicitudes. Implementa el modelo Amazon Titan Text Embeddings v2 para el procesamiento del lenguaje natural.

1. Si la petición del usuario incluye una solicitud de acción, el grupo de acción de Amazon Bedrock utiliza el modelo Anthropic Claude 3 Haiku o Claude 3.5 Sonnet (según su elección) como lógica de ejecución y define las operaciones mediante un esquema OpenAPI.

1. El grupo de acción llega a los [puntos de conexión de Amazon VPC mediante](https://docs.aws.amazon.com/whitepapers/latest/aws-privatelink/what-are-vpc-endpoints.html) una comunicación AWS PrivateLink de servicio segura.

1. Se accede a la AWS Lambda función a través de los puntos de conexión de Amazon VPC para los servicios de Amazon Bedrock.

1. Las funciones de Lambda son el motor de ejecución principal. Según la solicitud, la función de Lambda llama a la API para realizar acciones en los Servicios de AWS. La función de Lambda también gestiona el enrutamiento y la ejecución de las operaciones.

1. Se Servicios de AWS realizan la solicitud de obtención de la API de la función Lambda y las operaciones correspondientes.

1. La función de Lambda calcula una carga útil de salida que Amazon Bedrock entiende.

1. Esta carga útil se envía a Amazon Bedrock mediante una comunicación PrivateLink de servicio segura. El modelo de lenguaje de gran tamaño (LLM) que usa Amazon Bedrock comprende esta carga útil y la convierte en un formato comprensible para las personas.

1. A continuación, el resultado se muestra al usuario en la consola de chat de Amazon Bedrock.

La solución permite las siguientes operaciones principales:
+ Amazon S3: permite habilitar el control de versiones en bucket.
+ Amazon RDS: permite crear instantáneas de bases de datos para realizar copias de seguridad.
+ Amazon EC2: permite enumerar las instancias y controlar el inicio y la parada de estas.

## Tools (Herramientas)
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-tools"></a>

**Servicios de AWS**
+ [Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-bedrock.html) es un servicio totalmente gestionado que pone a su disposición modelos básicos de alto rendimiento (FMs) de las principales empresas emergentes de IA y Amazon a través de una API unificada.
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) es una herramienta de código abierto que le ayuda a interactuar Servicios de AWS mediante comandos en su consola de línea de comandos.
+ [Amazon Elastic Compute Cloud (Amazon EC2)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html) brinda capacidad de computación escalable en la Nube de AWS. Puede lanzar tantos servidores virtuales como necesite y escalarlos o reducirlos con rapidez.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) le ayuda a administrar de forma segura el acceso a sus AWS recursos al controlar quién está autenticado y autorizado a usarlos.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) es un servicio de computación que ayuda a ejecutar código sin necesidad de aprovisionar ni administrar servidores. Ejecuta el código solo cuando es necesario y amplía la capacidad de manera automática, por lo que solo pagará por el tiempo de procesamiento que utilice.
+ [Amazon OpenSearch Serverless](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-overview.html) es una configuración sin servidor bajo demanda para Amazon OpenSearch Service.
+ [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/what-is-privatelink.html)le ayuda a crear conexiones unidireccionales y privadas desde sus nubes privadas virtuales (VPCs) a servicios externos a la VPC.
+ [Amazon Relational Database Service (Amazon RDS)](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html) lo ayuda a configurar, utilizar y escalar una base de datos relacional en la Nube de AWS.
+ [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) es un servicio de almacenamiento de objetos basado en la nube que lo ayuda a almacenar, proteger y recuperar cualquier cantidad de datos.
+ [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) lo ayuda a administrar las aplicaciones y la infraestructura que se ejecutan en la Nube de AWS. Simplifica la administración de aplicaciones y recursos, reduce el tiempo necesario para detectar y resolver problemas operativos y le ayuda a administrar sus AWS recursos de forma segura y a escala.
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) le ayuda a lanzar AWS recursos en una red virtual que haya definido. Esa red virtual es similar a la red tradicional que utiliza en su propio centro de datos, con los beneficios de usar la infraestructura escalable de AWS.

**Otras herramientas**
+ [Git](https://git-scm.com/docs) es un sistema de control de versiones distribuido y de código abierto.
+ [Terraform](https://www.terraform.io/) es una herramienta de infraestructura como código (IaC) HashiCorp que le ayuda a crear y administrar recursos locales y en la nube.

**Repositorio de código**

[El código de este patrón está disponible en el repositorio aws-samples/. GitHub infra-ops-orchestrator](https://github.com/aws-samples/infra-ops-orchestrator)

## Prácticas recomendadas
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-best-practices"></a>
+ Supervise los registros de ejecución de Lambda con regularidad. Para obtener más información, consulte [Supervisión y solución de problemas de funciones de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-monitoring.html). Para obtener más información sobre las prácticas recomendadas, consulte Prácticas recomendadas [para trabajar con funciones](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html). AWS Lambda 
+ Revise las configuraciones de seguridad periódicamente para garantizar la conformidad con los requisitos de su organización. Para más información, consulte [Prácticas recomendadas de seguridad](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec-bp.html).
+ Siga el principio de privilegio mínimo y conceda los permisos mínimos necesarios para llevar a cabo una tarea. Para obtener más información, consulte [Otorgar privilegio mínimo](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#grant-least-priv) y [Prácticas recomendadas de seguridad](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) en la documentación de IAM.

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

### Implementar la solución
<a name="deploy-the-solution"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Clonar el repositorio. | Para clonar un repositorio en su máquina local, ejecute el siguiente comando:<pre>git clone "git@github.com:aws-samples/infra-ops-orchestrator.git"<br />cd infra-ops-orchestrator</pre> | AWS DevOps, DevOps ingeniero | 
| Edite las variables de entorno. | Edite el archivo `terraform.tfvars` en el directorio raíz del repositorio clonado. Revise los marcadores de posición indicados por `[XXXXX]` y actualícelos según su entorno. | AWS DevOps, DevOps ingeniero | 
| Cree la infraestructura. | Para crear la infraestructura, ejecute los comandos siguientes:<pre>terraform init</pre><pre>terraform plan</pre>Revise el plan de ejecución detenidamente. Si los cambios planificados son aceptables, ejecute el comando siguiente:<pre>terraform apply --auto-approve</pre> | AWS DevOps, DevOps ingeniero | 

### Acceso a la solución
<a name="access-the-solution"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Acceda a la solución. | Tras una implementación correcta, siga estos pasos para utilizar la interfaz basada en el chat:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/automate-aws-infrastructure-operations-by-using-amazon-bedrock.html) | AWS DevOps, DevOps ingeniero | 

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


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Elimine los recursos creados. | Para eliminar toda la infraestructura creada por este patrón, ejecute el comando siguiente:<pre>terraform plan -destroy </pre>Revise el plan de eliminación detenidamente. Si las eliminaciones planificadas son aceptables, ejecute el comando siguiente:<pre>terraform destroy</pre>Nota: Este comando eliminará de forma permanente todos los recursos creados por este patrón. El comando solicitará una confirmación antes de eliminar cualquier recurso. | AWS DevOps, DevOps ingeniero | 

## Resolución de problemas
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-troubleshooting"></a>


| Problema | Solución | 
| --- | --- | 
| Comportamiento del agente  | Para obtener información sobre este problema, consulte [Prueba y solución de problemas del comportamiento de los agentes](https://docs.aws.amazon.com/lambda/latest/dg/troubleshooting-networking.html) en la documentación de Amazon Bedrock. | 
| Problemas de la red de Lambda | Para obtener información sobre estos problemas, consulte [Solución de problemas de red en Lambda](https://docs.aws.amazon.com/lambda/latest/dg/troubleshooting-networking.html) en la documentación de Lambda. | 
| Permisos de IAM | Para obtener información sobre estos problemas, consulte [Solución de problemas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot.html) en la documentación de IAM. | 

## Recursos relacionados
<a name="automate-aws-infrastructure-operations-by-using-amazon-bedrock-resources"></a>
+ [Creación de una instantánea de base de datos para una instancia de base de datos Single-AZ para Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html)
+ [Definición de los esquemas de OpenAPI para los grupos de acciones del agente en Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-api-schema.html)
+ [Habilitar el control de versiones en buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/manage-versioning-examples.html)
+ [Cómo funciona Amazon Bedrock Agents](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-how.html)
+ [Recuperación de datos y generación de respuestas de IA con bases de conocimientos de Amazon Bedrock](https://docs.aws.amazon.com/whitepapers/latest/aws-privatelink/aws-privatelink.html)
+ [Acceda de forma segura a Services Over AWS PrivateLink](https://docs.aws.amazon.com/whitepapers/latest/aws-privatelink/aws-privatelink.html)
+ [Detención e iniciación de una instancia de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html)
+ [Utilice grupos de acciones para definir las acciones que debe realizar su agente](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-action-create.html)