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
Ishwar Chauthaiwale y Anand Bukkapatnam Tirumala, Amazon Web Services
Resumen
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
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
AWS Command Line Interface (AWS CLI) versión 2 o posterior, instalada y configurada en el entorno de implementación.
Instalación
y configuración de Terraform AWS Provider, versión 4 o posterior. La versión 1.5.7 o posterior de Terraform instalada
y configurada. Revise y defina los esquemas de OpenAPI para los grupos de acciones del agente en Amazon Bedrock para protegerse del acceso no autorizado y mantener la integridad de los datos.
El acceso está habilitado 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. Para evitar errores en la implementación, confirme que la implementación de destino es compatible con los modelos requeridos Región de AWS .
Una nube privada virtual (VPC) configurada que sigue las prácticas recomendadas de AWS Well Architected Framework.
Revisión completa de la política de IA responsable de Amazon
.
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
En el siguiente diagrama se muestran los componentes de la arquitectura y el flujo de trabajo de esta aplicación.

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 :
El usuario realiza solicitudes de operaciones a través de la consola de chat de Amazon Bedrock.
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.
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.
El grupo de acción llega a los puntos de conexión de Amazon VPC mediante una comunicación AWS PrivateLink de servicio segura.
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.
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.
Se Servicios de AWS realizan la solicitud de obtención de la API de la función Lambda y las operaciones correspondientes.
La función de Lambda calcula una carga útil de salida que Amazon Bedrock entiende.
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.
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)
Servicios de AWS
Amazon Bedrock 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) 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) 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) 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 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 es una configuración sin servidor bajo demanda para Amazon OpenSearch Service.
AWS PrivateLinkle 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) lo ayuda a configurar, utilizar y escalar una base de datos relacional en la Nube de AWS.
Amazon Simple Storage Service (Amazon S3) 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 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) 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
Repositorio de código
Prácticas recomendadas
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. Para obtener más información sobre las prácticas recomendadas, consulte Prácticas recomendadas para trabajar con funciones. 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.
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 y Prácticas recomendadas de seguridad en la documentación de IAM.
Epics
| Tarea | Descripción | Habilidades requeridas |
|---|---|---|
Clonar el repositorio. | Para clonar un repositorio en su máquina local, ejecute el siguiente comando:
| AWS DevOps, DevOps ingeniero |
Edite las variables de entorno. | Edite el archivo | AWS DevOps, DevOps ingeniero |
Cree la infraestructura. | Para crear la infraestructura, ejecute los comandos siguientes:
Revise el plan de ejecución detenidamente. Si los cambios planificados son aceptables, ejecute el comando siguiente:
| AWS DevOps, DevOps ingeniero |
| 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:
| AWS DevOps, DevOps ingeniero |
| Tarea | Descripción | Habilidades requeridas |
|---|---|---|
Elimine los recursos creados. | Para eliminar toda la infraestructura creada por este patrón, ejecute el comando siguiente:
Revise el plan de eliminación detenidamente. Si las eliminaciones planificadas son aceptables, ejecute el comando siguiente:
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
| 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 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 en la documentación de Lambda. |
Permisos de IAM | Para obtener información sobre estos problemas, consulte Solución de problemas de IAM en la documentación de IAM. |