Nota
Grupos y proyectos son términos sinónimos. Tu {PROJECT-ID} es el mismo que el ID de tu proyecto. Para los grupos existentes, el ID de grupo/proyecto permanece igual. Esta página utiliza el término más familiar «grupo» al referirse a las descripciones. El punto final se mantiene como se indica en el documento.
Cree una nueva solicitud de implementación de importación para agregar procesos existentes de MongoDB a la automatización de Ops Manager. Este endpoint inicia el proceso de importar múltiples procesos de MongoDB tanto para supervisión como para gestión de automatización.
Importante
Esta funcionalidad está disponible desde Ops Manager 8.0.13.
Las implementaciones importadas se agregan a la configuración de automatización del proyecto. El MongoDB Agent comenzará a supervisar los procesos y los gestionará según la configuración de automatización.
Roles necesarios
Este punto de acceso requiere la Project Automation Admin role.
Endpoint
URL base: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0
POST /automation/importDeployment/{PROJECT-ID}
Solicitud
Parámetros de ruta
Nombre | Tipo | Necesidad | Descripción |
|---|---|---|---|
PROJECT-ID | string | Requerido | Identificador único de la proyecto que será el propietario de las implementaciones importadas. |
Parámetros de query
Los siguientes parámetros de query son opcionales:
Nombre | Tipo | Necesidad | Descripción | predeterminado | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
bonito | booleano | Opcional | Indicador que señala si el cuerpo de respuesta debe estar en un prettyprint formato. |
| ||||||
envelope | booleano | Opcional | Bandera que indica si se debe o no envolver la respuesta en un sobre. Algunos Los clientes de laAPI no pueden acceder a los encabezados de respuesta HTTP ni al código de estado. Para solucionar esto, configure envelope=true en la consulta. Para los endpoints que devuelven un resultado, el cuerpo de la respuesta incluye:
|
|
Parámetros corporales
Nombre | Tipo | Necesidad | Descripción |
|---|---|---|---|
seedHostport | string | Requerido | Nombre de host y puerto del proceso MongoDB semilla al que conectarse para el descubrimiento (por ejemplo, |
Procesos requeridos | arreglo | Requerido | Arreglo de cadenas de nombre de host:puerto que representan procesos de MongoDB que deben descubrirse antes de que pueda continuar la importación. |
Tiempos de espera | Objeto | Opcional | Configuración de tiempo de espera para varias fases de importación. |
tiempos de espera.seedHostConnectionSec | Número | Opcional | Tiempo de espera en segundos para conectar con el host semilla. Rango: 60-86400 segundos. La opción por defecto utiliza la configuración del sistema. |
timeouts.processesDiscoverySec | Número | Opcional | Tiempo de espera en segundos para descubrir todos los procesos requeridos. Rango: 60-86400 segundos. Por defecto utiliza la configuración del sistema. |
timeouts.automationImported | Número | Opcional | Tiempo de espera en segundos para completar la importación de automatización. Rango: 60-86400 segundos. Por defecto utiliza la configuración del sistema. |
tiempos de espera.goalStateSec | Número | Opcional | Tiempo de espera en segundos para alcanzar el estado objetivo de automatización. Rango: 60-86400 segundos. Por defecto utiliza la configuración del sistema. |
mecanismo de autenticación | string | Opcional | Mecanismo de autenticación para conectarse a los procesos de MongoDB. Los valores posibles son:
|
Nombre de usuario | string | Condicional | Nombre de usuario para autenticarse en los procesos de MongoDB. Obligatorio si se especifica |
Contraseña | string | Condicional | Contraseña para autenticarse en los procesos de MongoDB. Obligatoria si Ops Manager no incluye este parámetro en los documentos de respuesta. |
adminDb | string | Opcional | Base de datos para autenticarse. Valor predeterminado: |
pemKeyFilePath | string | Opcional | Ruta al archivo de clave PEM para la autenticación del cliente TLS. |
pemKeyFilePassword | string | Opcional | Contraseña para el archivo clave PEM. Ops Manager no incluye este parámetro en los documentos de respuesta. |
adminKerberosKeytab | string | Opcional | Ruta al archivo keytab de Kerberos para la autenticación GSSAPI. |
adminLdapGroupDn | string | Opcional | Nombre distinguido del grupo LDAP para autenticación PLAIN. |
saslServiceName | string | Opcional | Nombre del servicio SASL para la autenticación GSSAPI. |
caFilePath | string | Opcional | Ruta al archivo de autoridad de certificación para conexiones TLS. |
clusterCaFilePath | string | Opcional | Ruta al archivo de la Autoridad Certificadora del clúster para conexiones TLS. |
modoCertificadoCliente | string | Opcional | Modo de certificado de cliente para conexiones TLS. |
Respuesta
Devuelve una respuesta de éxito vacía con el estado HTTP 200 si la solicitud de importación se envía correctamente.
Nota
Este endpoint no devuelve el ID de la solicitud de importación creada. Para hacer un seguimiento del estado de tu solicitud de importación, utiliza el endpoint Obtener solicitudes de importación de implementación para listar todas las solicitudes del proyecto e identificar tu solicitud por la hora de creación u otras propiedades.
Solicitud de ejemplo
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --include \ --request POST "https://<OpsManagerHost>:<Port>/api/public/v1.0/automation/importDeployment/{PROJECT-ID}?pretty=true" \ --data '{ "seedHostport": "mongodb1.example.com:27017", "requiredProcesses": [ "mongodb1.example.com:27017", "mongodb2.example.com:27017", "mongodb3.example.com:27018" ], "timeouts": { "seedHostConnectionSec": 300, "processesDiscoverySec": 600, "automationImported": 600, "goalStateSec": 1200 }, "authMechanism": "MONGODB_CR", "username": "admin", "password": "password123", "adminDb": "admin" }'
Respuesta de ejemplo
Encabezado de respuesta
401 Unauthorized Content-Type: application/json;charset=ISO-8859-1 Date: {dateInUnixFormat} WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false Content-Length: {requestLengthInBytes} Connection: keep-alive
200 OK Vary: Accept-Encoding Content-Type: application/json Strict-Transport-Security: max-age=300 Date: {dateInUnixFormat} Connection: keep-alive Content-Length: {requestLengthInBytes} X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
Respuesta del cuerpo
{}