Los equipos de TI enfrentan desafíos crecientes a medida que gestionan infraestructura y aplicaciones cada vez más complejas, a menudo pasan innumerables horas identificando manualmente problemas operativos, problemas de solución de problemas y realizando tareas de mantenimiento repetitivas. Esta carga operativa desvía los valiosos recursos técnicos de la innovación y las iniciativas estratégicas. La inteligencia artificial para las operaciones de TI (AIOPS) presenta una solución transformadora, utilizando AI para automatizar los flujos de trabajo operativos, detectar anomalías y resolver incidentes con una intervención humana mínima. Las organizaciones pueden optimizar su eficiencia operativa mientras mantienen la seguridad a medida que administran su infraestructura y aplicaciones.
Puedes usar Amazon Q Developer CLI y Protocolo de contexto modelo (MCP) Servidores para construir potentes soluciones de AIOP que puedan reducir el esfuerzo manual a través de las interacciones del lenguaje natural. Desarrollador de Amazon Q Puede ayudar a los desarrolladores y profesionales de TI con muchas de sus tareas: desde la codificación, las pruebas y la implementación, hasta la resolución de problemas, realizar escaneo y correcciones de seguridad, modernizar aplicaciones, optimizar los recursos de AWS y crear tuberías de ingeniería de datos. El MCP extiende estas capacidades al permitir que Amazon Q se conecte con herramientas y servicios personalizados a través de una interfaz estandarizada, lo que permite automatizaciones operativas más sofisticadas.
En esta publicación, discutimos cómo implementar una solución AIOP sin código de código bajo que ayude a las organizaciones a monitorear, identificar y solucionar los eventos operativos mientras mantiene su postura de seguridad. Mostramos cómo estas tecnologías funcionan juntas para automatizar tareas repetitivas, optimizar la respuesta de incidentes y mejorar la eficiencia operativa en toda su organización.
Esta es la tercera publicación de una serie sobre AIOPS usando Servicios generativos de IA en AWS. Consulte las siguientes dos publicaciones para construir AIOPS utilizando Roca madre de Amazon y Amazon Q Business:
Descripción general de la solución
Los servidores MCP actúan como un conector universal para los modelos AI, lo que les permite interactuar con sistemas externos, obtener datos en vivo e integrarse con varias herramientas sin problemas. Esto ayuda a Amazon Q a proporcionar una asistencia más contextualmente relevante al acceder a la información que necesita en tiempo real. El siguiente diagrama de arquitectura ilustra cómo puede usar un solo archivo de configuración, mcp.jsonpara configurar los servidores MCP en Amazon Q Developer CLI para conectarse a sistemas externos.
El flujo de trabajo consta de los siguientes pasos:
- El usuario configura un cliente MCP en Amazon Q Developer CLI utilizando el
mcp.jsonarchivo. - El usuario inicia sesión en Amazon Q Developer CLI y pregunta consultas operativas en lenguaje natural.
- Dependiendo de su consulta, Amazon Q decide qué servidores MCP configuró o las herramientas existentes para invocar para realizar la tarea.
- El servidor MCP interactúa con el sistema externo respectivo para obtener los datos en vivo que Amazon Q utiliza para realizar la tarea requerida.
En esta publicación, mostramos cómo usar Amazon Q Developer CLI para abordar los siguientes problemas operativos:
Requisitos previos
Complete los siguientes requisitos previos antes de comenzar a configurar la demostración:
Configurar MCP en Amazon Q Developer CLI
Configuración de MCP En Amazon Q Developer CLI se administra a través de archivos JSON. Configurarás el Servidor MCP de la base de conocimiento de Amazon Bedrock. Al momento de escribir, solo el transporte Stdio es compatible con el desarrollador de Amazon Q CLI.
Admite el desarrollador de Amazon Q CLI Dos niveles de configuración de MCP:
- Configuración global – usa
~/.aws/amazonq/mcp.jsony se aplica a todos los espacios de trabajo - Configuración del espacio de trabajo – usa
.amazonq/mcp.jsony es específico del espacio de trabajo actual
Para esta publicación, utilizamos la configuración del espacio de trabajo, pero tiene la opción de usar cualquiera de ellos.
- Cree una nueva carpeta de espacio de trabajo, y dentro de esa carpeta, cree el archivo
.amazonq/mcp.jsonCon el siguiente contenido:
Ver el Repositorio de GitHub de los servidores AWS MCP Para una lista actualizada de servidores MCP disponibles.
- Abra un terminal, navegue a la carpeta del espacio de trabajo que creó, y ejecute el siguiente comando para iniciar sesión en Amazon Q Developer CLI:
- Siga las instrucciones de iniciar sesión en Amazon Q desarrollador en la línea de comando.
- Iniciar la sesión de chat ejecutando
qy luego corre/toolsPara validar que se configura el servidor MCP de la base de conocimiento de Amazon Bedrock.
Los permisos de herramientas tienen dos estados posibles:
- De confianza – Amazon Q puede usar la herramienta sin pedir confirmación cada vez
- Por solicitud – Amazon Q debe solicitar su confirmación cada vez antes de usar la herramienta
Por defecto, esta herramienta no será confiable.
5. Corre /tools trust awslabsbedrock_kb_retrieval_mcp_server___QueryKnowledgeBases para confiar en el servidor MCP.
6. Ejecute el /tools comandar nuevamente para validarlo.
Implementar recursos de AWS
Implementar lo siguiente AWS CloudFormation Plantilla para implementar los recursos de AWS que usará para probar AIOPS. Puede implementar esta plantilla en el us-east-1 o us-west-2 Región de AWS. Puede implementarlo en otras regiones actualizando los ID de AMI aplicables en la plantilla. Esta plantilla implementará dos instancias EC2 y tres cubos S3.
Esta plantilla de CloudFormation es solo para fines de demostración y no destinado al uso de la producción.
Valida que la plantilla implementó dos instancias de EC2, que están en Correr estado.
Además, valida que la plantilla creó tres cubos S3 con los nombres aiops-qdevcli-bucketX-aiops-qdevcli-
Crea una base de conocimiento de Amazon Bedrock
Cargar el Muestra de runbook de utilización de CPU alta hacia aiops-qdevcli-
Caso de uso 1: Identificar y remediar la utilización alta de la CPU en una instancia de EC2
En este caso de uso, introduce el estrés de la CPU en una de las instancias de EC2 y luego usa Amazon Q Developer CLI para identificarla y remediarla.
- En la consola de Amazon EC2, inicie sesión en el
aiops-qdevcli-high-cpu-utilinstancia usando EC2 Instance Connect. - Ejecute el siguiente comando para instalar
stress-ng:
- Ejecute el siguiente comando para estresar la instancia de EC2 durante 1 hora:
Debe esperar aproximadamente 10 minutos para el Amazon CloudWatch alarma para activarse.
- Regrese a la consola de Amazon EC2 y verifique que el
aiops-qdevcli-high-cpu-utilLa instancia está actualmente en Alarma estado. - Desde el Amazon Q Developer CLI, use una consulta de lenguaje natural para verificar los problemas de operación en su cuenta. Use la ID de base de conocimiento que guardó en la sección anterior.
Amazon Q Developer CLI Autocorrecta los errores que encontró al ejecutar los comandos.
Mire el siguiente video para obtener más detalles.
Debido a la naturaleza inherente no determinista del FMS, las respuestas que recibe del desarrollador de Amazon Q CLI podría no ser exactamente las mismas que las que se muestran en la demostración.
Caso de uso 2: Identifique y elimine el acceso público desde un cubo S3
En este caso de uso, simulará un problema de seguridad accidental al desbloquear el acceso público para uno de los cubos y luego usará Amazon Q Developer CLI para identificar y remediar el problema.
- En la consola de Amazon S3, abra uno de los
aiops-qdevcli-xxxxcubos, y en el Permisos pestaña, elija Editar y cambiar Bloquear todo el acceso público a Apagado.
- Regrese al desarrollador de Amazon Q CLI y haga preguntas en lenguaje natural para identificar y remediar el problema operativo.
Mire el siguiente video para obtener más detalles.
Caso de uso 3: Identifique y bloquee un puerto abierto no deseado específico para una conexión entrante a una instancia de EC2
En este caso de uso, utilizará Amazon Q Developer CLI para identificar la instancia de EC2 que tiene un puerto específico abierto y luego cerrar el puerto.
- En la consola de Amazon EC2, tenga en cuenta que el
aiops-qdevcli-open-port-demoLa instancia tiene el puerto 5080 abierto para todas las conexiones TCP entrantes. Este es un riesgo de seguridad no deseado que desea identificar y remediar.
- Regrese a Amazon Q Developer CLI y use consultas de lenguaje natural para identificar la instancia de EC2 con el puerto 5080 abierto y solucione el problema.
Mire el siguiente video para más detalles.
Limpiar
El desmantelamiento de AWS aprovisionados adecuadamente es una mejor práctica importante para optimizar los costos y mejorar la postura de seguridad después de concluir pruebas de concepto y manifestaciones. Complete los siguientes pasos para eliminar los recursos creados en su cuenta de AWS:
- En la consola de roca de roca amazónica, Eliminar la base de conocimiento de la roca madre de Amazon.
- En la consola de Amazon S3, vacío el
aiops-qdevcli-kb-xxxbalde. - En la consola de AWS CloudFormation, Eliminar la pila de CloudFormation.
Como alternativa, intente los pasos anteriores utilizando consultas de lenguaje natural en Amazon Q Developer CLI.
- Finalmente, elimine el
.amazonq/mcp.jsonArchivo desde la carpeta de su espacio de trabajo para eliminar la configuración de MCP para Amazon Q Developer CLI.
Conclusión
En esta publicación, mostramos cómo el desarrollador de Amazon Q CLI interpreta las consultas de lenguaje natural, las convierte automáticamente en comandos apropiados e identifica las herramientas necesarias para la ejecución. Las capacidades inteligentes de manejo de errores de la solución analizan los registros y realizan auto-correcciones, minimizando la intervención manual. Al implementar Amazon Q Developer CLI, puede mejorar la eficiencia operativa de su equipo, reducir los errores humanos y administrar entornos complejos de manera más efectiva a través de una interfaz de conversación. Le animamos a explorar casos de uso adicionales y compartir sus comentarios con nosotros. Para obtener más información sobre los servidores de Amazon Q Developer CLI y AWS MCP, consulte los siguientes recursos:
Sobre los autores
Biswanath Mukherjee es un arquitecto de soluciones senior en Amazon Web Services. Trabaja con grandes clientes estratégicos de AWS al proporcionarles orientación técnica para migrar y modernizar sus aplicaciones en AWS Cloud. Con su amplia experiencia en arquitectura y migración en la nube, se asocia con clientes para desarrollar soluciones innovadoras que aprovechen la escalabilidad, la confiabilidad y la agilidad de AWS para satisfacer sus necesidades comerciales. Su experiencia abarca diversas industrias y casos de uso, lo que permite a los clientes desbloquear todo el potencial de la nube de AWS.
Upendra V es un arquitecto senior de soluciones en Amazon Web Services, especializada en IA generativa y soluciones en la nube. Ayuda a los clientes empresariales a diseñar e implementar cargas de trabajo generativas de IA generativas listas para la producción, implementar modelos de idiomas grandes (LLM) y sistemas de IA agente, y optimizar las implementaciones de la nube. Con experiencia en adopción en la nube y aprendizaje automático, permite a las organizaciones construir y escalar aplicaciones impulsadas por IA de manera eficiente.