Overview
En esta guía, aprenderá a aprovisionar recursos de Atlas para la implementación de su agente mediante los comandos agentengine atlas. Estos comandos utilizan un perfil de cuenta de servicio almacenado localmente para llamar directamente a la API de administración de Atlas y no requieren la instalación de la CLI de Atlas.
La superficie agentengine atlas proporciona dos rutas de configuración:
Configuración guiada: El comando
agentengine atlas setuple pide que seleccione de forma interactiva una organización, un proyecto, un clúster, un usuario de base de datos y una clave API de Voyage de Atlas. Use el indicador--yespara crear todos los recursos automáticamente sin que se le soliciten.Configuración manual: Los comandos
agentengine atlas profile,agentengine atlas cluster,agentengine atlas database-useryagentengine atlas voyage-api-keyproporcionan subcomandos no interactivos para la creación de scripts y herramientas de escritorio.
Antes de comenzar, asegúrese de tener una cuenta de Atlas, acceso a al menos una organización de Atlas y un proyecto de agente inicializado. Debe ejecutar los comandos agentengine atlas desde un directorio de proyecto de agente que contenga un archivo agent.yaml. Para configurar un proyecto, consulte Configurar su proyecto de agente. Para saber qué rol de Atlas necesita para completar esta configuración, consulte Roles de Atlas para la administración de proyectos.
El motor de agentes de Atlas no admite clústeres Atlas Free por las siguientes razones:
Los clústeres gratuitos no admiten los índices de búsqueda que se utilizan para la función de memoria.
Los clústeres gratuitos tienen un límite de almacenamiento que un agente activo podría alcanzar rápidamente.
Importante
Si su agente utiliza memoria, seleccione o cree un clúster de nivel Atlas Flex (requisito mínimo), M10, M20 o superior (recomendado) para almacenar los datos de memoria. Para obtener más información, consulte Agregar memoria a su agente.
Perfil de autenticación de Atlas
El comando agentengine atlas setup se autentica con Atlas mediante las credenciales almacenadas en el archivo ~/.agentengine/atlas.json. Este archivo almacena uno o más perfiles con nombre para su uso con diferentes entornos o cuentas de servicio. El comando utiliza el perfil default a menos que especifique uno diferente mediante el indicador --profile.
Si no existen perfiles ni variables de entorno almacenados al ejecutar agentengine atlas setup desde un proyecto de agente válido, la CLI le pedirá que introduzca el ID de cliente y el secreto de su cuenta de servicio y los guardará como el perfil default en ~/.agentengine/atlas.json. También puede crear el archivo manualmente antes de ejecutar el comando utilizando el esquema que se muestra a continuación.
Nota
Delegación OAuth de Atlas
Al iniciar sesión en Atlas Agent Engine, la plataforma recupera automáticamente sus asignaciones de roles de Atlas y determina a qué organizaciones y proyectos puede acceder. La plataforma utiliza el servidor de conexiones de aplicaciones OAuth de Atlas 2.1 para autorizar el acceso a Atlas.
Esquema del archivo de perfil
El archivo ~/.agentengine/atlas.json tiene la siguiente estructura:
{ "version": 1, "profiles": { "default": { "base_url": "https://cloud.mongodb.com", "client_id": "<service-account-client-id>", "client_secret": "<service-account-client-secret>" } } }
Puede agregar varios perfiles con nombre para usarlos con diferentes entornos de Atlas o cuentas de servicio. Para usar un perfil que no sea el predeterminado, pase el indicador --profile como se muestra en el siguiente ejemplo:
agentengine atlas setup --profile <profile-name>
Variables de entorno
Puede proporcionar o sobrescribir credenciales utilizando las siguientes variables de entorno sin editar directamente el archivo de perfil:
Variable | Descripción |
|---|---|
| Token de acceso OAuth obtenido previamente. Tiene la máxima prioridad. Válido durante 12 horas. |
| ID de cliente de la cuenta de servicio. Utilizar junto con |
| Clave secreta del cliente de la cuenta de servicio. Úsela junto con |
| Sobrescribe la URL base de Atlas almacenada en el perfil. |
El comando resuelve las credenciales en el siguiente orden:
MONGODB_ATLAS_ACCESS_TOKEN, si está configuradoMONGODB_ATLAS_CLIENT_IDyMONGODB_ATLAS_CLIENT_SECRET, si ambos están configuradosPerfil almacenado en
~/.agentengine/atlas.jsonMensaje interactivo, si hay un terminal conectado.
Sintaxis y opciones de comandos
Utilice la siguiente sintaxis para el comando agentengine atlas setup:
agentengine atlas setup [--yes] [--context <name>] [--workspace <name>] [--env <name>] [--profile <name>] [--force] [--org-id <id>] [--project-id <id>] [--workspace-id <id>]
Banderas de comando
Flag | Descripción |
|---|---|
| Ejecuta la configuración automática no interactiva. El comando crea un clúster de Atlas, un usuario de base de datos y una clave API de Voyage utilizando nombres derivados del ID del espacio de trabajo cuando no existen recursos coincidentes. |
| Selecciona un contexto local con nombre del archivo |
| Selecciona un espacio de trabajo específico por su nombre en un proyecto monorepo. |
| Selecciona el entorno de Atlas. La interfaz de línea de comandos guarda el entorno seleccionado con el estado de Atlas y lo reutiliza para comandos posteriores de Atlas en el mismo contexto de espacio de trabajo. |
| Selecciona el perfil de cuenta de servicio de Atlas de |
| Restablece el enlace de Atlas guardado y vuelve a ejecutar el flujo de configuración guiada. Utilice esta opción para actualizar su configuración o aprovisionar recursos en un nuevo entorno. |
| Se dirige directamente a un ID de organización específico. |
| Se dirige directamente a un ID de proyecto específico. |
| Se dirige directamente a un ID de espacio de trabajo específico. |
Flujo interactivo
Cuando ejecutas agentengine atlas setup, la interfaz de línea de comandos te guía a través de los siguientes pasos:
Organización: Muestra tus organizaciones de Atlas en un menú numerado. Selecciona una organización existente o crea una nueva.
Proyecto: Muestra los proyectos de la organización seleccionada. Seleccione un proyecto existente o cree uno nuevo. Los proyectos nuevos reciben una cuenta de servicio con alcance de proyecto.
Clúster: Muestra los clústeres del proyecto seleccionado. Seleccione un clúster existente o, si su cuenta de servicio tiene permisos de creador de clústeres, cree uno nuevo.
Usuario de la base de datos: Crea un usuario de la base de datos con las credenciales que el agente utiliza para conectarse al clúster.
Clave API de Voyage AI: Proporciona una clave API de Voyage AI para las funciones de memoria del agente.
Secretos: Guarda
MONGODB_URIyVOYAGE_API_KEYcomo secretos de Atlas Agent Engine para que los agentes implementados puedan conectarse a su clúster de Atlas y a Voyage AI.Lista de acceso IP: Agrega las direcciones IP del plano de datos de Atlas Agent Engine a la lista de acceso IP del clúster.
Una vez finalizado el proceso, la interfaz de línea de comandos (CLI) muestra el estado de aprovisionamiento de cada recurso.
Nota
Las opciones disponibles en cada paso dependen de tus roles en Atlas. Si tu cuenta de servicio no tiene el permiso necesario, la CLI omite la opción de crear un nuevo recurso y solo muestra los recursos existentes.
Configuración automática
Para crear automáticamente todos los recursos de Atlas sin indicaciones interactivas, pase el indicador --yes al comando agentengine atlas setup. Cuando el espacio de trabajo no se ha inicializado, el comando agentengine atlas setup --yes ejecuta primero agentengine init y luego crea los siguientes recursos utilizando nombres basados en el ID del espacio de trabajo:
Atlas cluster
Usuario de la base de datos llamado
agent-engine-<workspace-id>Clave API de Voyage llamada
agent-engine-<workspace-id>
La configuración automática se detiene cuando encuentra metadatos guardados o recursos de Atlas existentes que coinciden con los nombres generados. Para crear un nuevo conjunto de recursos, elimine los recursos conflictivos y pase --force.
La configuración automática utiliza el proyecto de Atlas guardado, si está presente. De lo contrario, requiere exactamente una organización de Atlas visible y un proyecto de Atlas visible para continuar sin necesidad de indicaciones.
Puede anular la configuración predeterminada del clúster estableciendo las siguientes variables de entorno antes de ejecutar el comando:
Variable | Descripción |
|---|---|
| Proveedor de nube para el nuevo clúster. Predeterminado: |
| Región de nube para el nuevo clúster. Predeterminado: |
| Nivel de clúster. Predeterminado: |
Estado de configuración
El comando agentengine atlas setup muestra el estado de aprovisionamiento de todos los recursos al final de cada ejecución. Para volver a comprobar el estado actual o volver a ejecutar el flujo de configuración completo, ejecute el siguiente comando:
agentengine atlas setup --force
Configurar el acceso IP
Utilice el siguiente comando para agregar direcciones IP del plano de datos de Atlas Agent Engine a la lista de acceso IP del proyecto Atlas sin ejecutar el flujo de configuración guiada completo:
agentengine atlas setup-ip-access [--context <name>] [--workspace <name>] [--env <name>] [--profile <name>] [--json] [--org-id <id>] [--project-id <id>] [--workspace-id <id>]
El comando agrega las direcciones IP necesarias para las conexiones de Atlas Agent Engine a la lista de acceso IP del proyecto Atlas guardado. Pase el indicador --json para recibir una respuesta {"configured": true} legible por máquina.
Tip
Requisitos previos
Este comando requiere un proyecto de Atlas guardado. Ejecute agentengine atlas setup o agentengine atlas profile save primero para seleccionar un proyecto.
Finalizar la configuración de Atlas
Utilice el siguiente comando para completar un flujo de configuración automatizado después de que se hayan ejecutado todos los comandos de recursos:
agentengine atlas setup finalize [--context <name>] [--workspace <name>] [--env <name>] [--profile <name>] [--org-id <id>] [--project-id <id>] [--workspace-id <id>] --json
El comando valida que el clúster seleccionado, el usuario de la base de datos, la clave API de Voyage, MONGODB_URI y VOYAGE_API_KEY estén presentes, configura el acceso IP de Atlas para Atlas Agent Engine y marca el estado de Atlas del espacio de trabajo como vinculado. La salida no contiene valores secretos.
Comandos de perfil de Atlas
Los subcomandos agentengine atlas profile gestionan los perfiles de cuentas de servicio y la selección de proyectos de Atlas para los flujos de trabajo de automatización. Estos comandos no son interactivos y requieren el indicador --json.
Lista de perfiles
Utilice el siguiente comando para devolver los perfiles guardados del archivo ~/.agentengine/atlas.json:
agentengine atlas profile list --json
El siguiente ejemplo muestra el formato de salida:
{ "schema_version": "1", "status": "ok", "profiles": [ {"name": "default", "base_url": "https://cloud.mongodb.com"} ] }
Verificar un perfil
Utilice el siguiente comando para validar las credenciales de la cuenta de servicio y obtener las organizaciones y proyectos accesibles:
agentengine atlas profile verify --json --input -
Para pasar un objeto de solicitud JSON a través de stdin, utilice - como parámetro para --input. El comando devuelve el nombre del perfil seleccionado, la URL base y listas de organizaciones y proyectos accesibles. La salida no incluye tokens de acceso ni secretos.
Guardar un perfil
Utilice el siguiente comando para guardar la organización y el proyecto de Atlas seleccionados en el contexto del espacio de trabajo:
agentengine atlas profile save [--context <name>] [--workspace <name>] --json --input -
Se pasa un objeto de solicitud JSON a través de stdin mediante el parámetro - en el indicador --input. El comando guarda el entorno, el perfil, la organización y el proyecto de Atlas en el archivo .agentengine/state.json del espacio de trabajo. Si la selección de organización y proyecto no cambia, el comando conserva las selecciones existentes de clúster, usuario de base de datos y clave API de Voyage.
Comandos de clúster de Atlas
Los subcomandos agentengine atlas cluster listan los clústeres de Atlas y guardan la selección de clústeres para el espacio de trabajo. Ejecute agentengine atlas profile save primero para seleccionar un proyecto de Atlas.
Listar clústeres
Utilice el siguiente comando para devolver los clústeres del proyecto Atlas guardado:
agentengine atlas cluster list [--context <name>] [--workspace <name>] --json
El siguiente ejemplo muestra el formato de salida:
{ "schema_version": "1", "status": "ok", "atlas_state": {}, "clusters": [ { "name": "my-cluster", "kind": "REPLICASET", "state_name": "IDLE", "is_flex": false } ], "create_defaults": { "name": "my-agent", "provider": "AWS", "region": "US_EAST_1", "tier": "FLEX", "label": "Flex" }, "can_create": true, "warnings": [] }
El objeto create_defaults proporciona la configuración sugerida para un nuevo clúster. El campo can_create indica si la cuenta de servicio tiene permiso para crear un clúster en el proyecto seleccionado.
Guardar un clúster
Utilice el siguiente comando para seleccionar un clúster existente o crear uno nuevo:
agentengine atlas cluster save [--context <name>] [--workspace <name>] --json --input -
Pase un objeto de solicitud JSON a través de stdin pasando - al indicador --input. Para seleccionar un clúster existente:
{"mode": "existing", "name": "my-cluster"}
Para crear un nuevo clúster:
{ "mode": "create", "name": "my-agent", "provider": "AWS", "region": "US_EAST_1", "tier": "FLEX" }
Si omite el campo name en el modo de creación, la CLI genera un nombre a partir del ID del espacio de trabajo. La creación de un clúster solicita el aprovisionamiento en Atlas y finaliza inmediatamente. Atlas puede tardar varios minutos en completar el aprovisionamiento del clúster.
Comandos de usuario de la base de datos Atlas
Los subcomandos agentengine atlas database-user muestran los usuarios de la base de datos Atlas y guardan la selección de usuario para el espacio de trabajo. Ejecute primero el comando agentengine atlas cluster save para seleccionar un clúster.
Lista de usuarios de la base de datos
Utilice el siguiente comando para obtener los usuarios de la base de datos en el proyecto Atlas guardado:
agentengine atlas database-user list [--context <name>] [--workspace <name>] --json
El siguiente ejemplo muestra el formato de salida:
{ "schema_version": "1", "status": "ok", "atlas_state": {}, "users": [ {"username": "my-user", "database_name": "admin"} ], "create_defaults": {"username": "agent-engine-<workspace-id>"}, "can_create": true, "warnings": [] }
Cuando el comando encuentra un usuario existente cuyo nombre coincide con el predeterminado generado para el espacio de trabajo, lo guarda automáticamente en el archivo .agentengine/state.json. Esto mantiene actualizado el estado local cuando se aprovisionan recursos fuera de la sesión actual.
Guardar un usuario de la base de datos
Utilice el siguiente comando para seleccionar un usuario existente o crear uno nuevo:
agentengine atlas database-user save [--context <name>] [--workspace <name>] --json --input -
Pase un objeto de solicitud JSON a través de stdin pasando - al indicador --input. Para seleccionar un usuario existente, incluya la contraseña como se muestra en el siguiente ejemplo:
{"mode": "existing", "username": "my-user", "password": "my-password"}
Para crear un nuevo usuario, pase el siguiente objeto:
{"mode": "create", "username": "my-user"}
Si omite el campo username en el modo de creación, la CLI genera un nombre a partir del ID del espacio de trabajo. Para los nuevos usuarios, la CLI genera una contraseña automáticamente. La contraseña generada no se incluye en la salida del comando.
Tras guardar, el comando escribe MONGODB_URI como un secreto de Atlas Agent Engine con ámbito de proyecto. No escribe en un archivo local.
Comandos de clave API de Atlas Voyage
Los subcomandos agentengine atlas voyage-api-key muestran las claves API de Atlas Voyage y guardan la selección de claves para el espacio de trabajo. Ejecute agentengine atlas database-user save primero para seleccionar un usuario de la base de datos.
Lista de claves API de Voyage
Utilice el siguiente comando para devolver las claves API de Voyage en el proyecto Atlas guardado:
agentengine atlas voyage-api-key list [--context <name>] [--workspace <name>] --json
El siguiente ejemplo muestra el formato de salida:
{ "schema_version": "1", "status": "ok", "atlas_state": {}, "keys": [ { "id": "key-id", "name": "agent-engine-<workspace-id>", "masked_secret": "voy...xxxx" } ], "create_defaults": {"name": "agent-engine-<workspace-id>"}, "can_create": true, "warnings": [] }
Cuando el comando encuentra una clave existente cuyo nombre coincide con el valor predeterminado generado para el espacio de trabajo, guarda automáticamente esa clave en el archivo .agentengine/state.json.
Clave API de Save a Voyage
Utilice el siguiente comando para seleccionar una clave existente o crear una nueva:
agentengine atlas voyage-api-key save [--context <name>] [--workspace <name>] --json --input -
Pase un objeto JSON a través de stdin pasando - al indicador --input. Para seleccionar una clave existente, utilice el siguiente formato:
{"mode": "existing", "name": "my-key", "value": "<api-key-value>"}
Para crear una nueva clave, utilice el siguiente formato:
{"mode": "create", "name": "my-key"}
Si omite el campo name en el modo de creación, la CLI genera un nombre a partir del ID del espacio de trabajo. Al crear una clave, la CLI utiliza directamente el valor secreto devuelto por Atlas.
Tras guardar, el comando escribe VOYAGE_API_KEY como un secreto de Atlas Agent Engine con ámbito de proyecto. No escribe en un archivo local. Para entornos Atlas más antiguos, el comando también escribe la variable VOYAGE_URL de la misma manera.
Próximos pasos
Tras aprovisionar sus recursos de Atlas, puede configurar secretos para la implementación de su agente, incluidas las claves API del proveedor LLM. Para obtener más información, consulte la guía de aprovisionamiento de secretos en la nube.