Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Cree un Proyecto por cada implementación de MongoDB utilizando un ConfigMap

The MongoDB Controllers for Kubernetes Operator uses a Kubernetes ConfigMap to link to a single and unique Ops Manager Project. If the referenced project doesn't exist, the Kubernetes Operator creates it according to the projectName that you provide in the ConfigMap.

Para crear un ConfigMap de operador de Kubernetes, puedes editar unas líneas del ConfigMap de ejemplo archivo YAML y aplicar el ConfigMap. Para ver un ejemplo completo, consulta el archivo project.yaml.

También puedes utilizar la Interfaz de Usuario del MongoDB Cloud Manager o la Interfaz de Usuario del Ops Manager para crear o elegir un proyecto, y generar automáticamente el archivo ConfigMap YAML, que luego puedes aplicar a tu entorno de Kubernetes.

  1. Solo puede implementar un recurso de MongoDB por proyecto. Este límite se aplica porque Ops Manager solo admite un método de autenticación para el acceso del usuario de base de datos por Proyecto. Para obtener más información, consulte Implementar un recurso de base de datos de MongoDB.

  2. You must pair a MongoDB Controllers for Kubernetes Operator deployment to a unique Ops Manager Project. You can either create a distinct ConfigMap for each MongoDB Controllers for Kubernetes Operator instance you deploy, or you can reuse the same ConfigMap for any number of deployments by omitting the data.projectName from your ConfigMap, so that project names align with deployed resource names. Where a project name is provided in the config map, if that project does not exist yet it will be created.

Importante

  • Puedes usar el Operador de Kubernetes para implementar recursos de MongoDB con Cloud Manager y con Ops Manager versión 6.0.x o posterior.

  • Puedes usar el Atlas Operator para implementar recursos de MongoDB en Atlas.

  • Kubernetes versión 1.11 o posterior u Openshift versión 3.11 o posterior.

  • Controladores de MongoDB para el operador de Kubernetes

    instalado.

1

Si aún no lo ha hecho, ejecute el siguiente comando para ejecutar todos los comandos de kubectl en el namespace que creó.

Nota

Si estás implementando un recurso de Ops Manager en una implementación de MongoDB multidispositivo en clústeres de Kubernetes:

  • Defina context como el nombre del clúster operador, por ejemplo: kubectl config set context "$MDB_CENTRAL_CLUSTER_FULL_NAME".

  • Establece el --namespace en el mismo ámbito que utilizaste para tu implementación de MongoDB de clústeres multi-Kubernetes, como por ejemplo: kubectl config --namespace "mongodb".

kubectl config set-context $(kubectl config current-context) --namespace=<metadata.namespace>
2
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: ConfigMap
metadata:
name: my-project
namespace: mongodb
data:
projectName: myProjectName # this is an optional parameter; when omitted, the Operator creates a project with the resource name
orgId: 5b890e0feacf0b76ff3e7183 # this is a required parameter
baseUrl: https://ops.example.com:8443
EOF
Clave
Tipo
Descripción
Ejemplo

metadata.name

string

Nombre del objeto de Kubernetes.

Los nombres de recursos deben tener 44 caracteres o menos.

This name must follow RFC1123 naming conventions, containing only lowercase alphanumeric characters or - , and starting and ending with an alphanumeric character.

Para obtener más información, consulte la documentación de Kubernetes en nombres.

my-project

metadata.namespace

string

Kubernetes namespace where the Kubernetes Operator creates this MongoDB resource and other objects.

mongodb

data.projectName

string

Etiqueta para tu Ops Manager proyecto.

The Kubernetes Operator creates the Ops Manager project if it does not exist. If you omit the projectName, the Kubernetes Operator creates a project with the same name as your Kubernetes resource.

Para utilizar un proyecto existente en una organización de Cloud Manager o Ops Manager, localiza el projectName haciendo clic en el enlace All Clusters en la parte superior izquierda de la página de Cloud Manager u Ops Manager y buscando por nombre en el cuadro Search o desplazándote para encontrar el nombre en la lista. Cada tarjeta en esta lista representa la combinación de una Organización y un Proyecto de Cloud Manager u Ops Manager.

myProjectName

data.orgId

string

Requerido. string hexadecimal de 24 caracteres que identifica de manera única tu Cloud Manager u Ops Manager Organización.

Puedes usar el Operador de Kubernetes para implementar recursos de MongoDB con Cloud Manager y con Ops Manager versión 6.0.x o posterior.

Puedes usar el Atlas Operator para implementar recursos de MongoDB en Atlas.

Especifique una organización existente:

  1. Buscar el ID de la organización.

    Haz clic en Settings en la barra de navegación izquierda.

  2. Copie y pegue el orgId en la URL.

    Seleccione su organización, visualice la URL actual en su navegador y copie el valor mostrado en el marcador de posición <orgId> de la siguiente manera:

    https://ops.example.com:8443/ v2#/org/<orgId>/projects

Debes tener el rol Organization Project Creator para crear un nuevo proyecto dentro de una organización existente de Cloud Manager u Ops Manager.

Si se proporciona una string vacía como orgId, el Operador de Kubernetes crea una organización con el mismo nombre que el proyecto.

5b890e0feacf0b76ff3e7183

data.baseUrl

string

URL de tu aplicación Ops Manager, incluida el FQDN y el número de puerto.

IMPORTANTE: Si implementas Ops Manager con el Kubernetes Operator y Ops Manager va a gestionar recursos de bases de datos MongoDB implementados fuera del clúster de Kubernetes donde está implementado, debes establecer data.baseUrl con el mismo valor de la configuración spec.configuration.mms.centralUrl en la especificación del recurso de Ops Manager. Para obtener más información, consulta Administración de implementaciones externas de MongoDB.

Si usas Cloud Manager, establezca el valor de data.baseUrl en https://cloud.mongodb.com.

https://ops.example.com:8443

3
kubectl describe configmaps <configmap-name>

Este comando devuelve una descripción de ConfigMap en el shell:

Name: <configmap-name>
Namespace: <namespace>
Labels: <none>
Annotations: <none>
Data
====
baseUrl:
----
<myOpsManagerURL>
Events: <none>

Es posible que hayas optado por usar tu propio certificado TLS para habilitar HTTPS para tu instancia de Ops Manager. Si utilizaste un certificado personalizado, necesitas agregar la CA que firmó ese certificado personalizado al Operador Kubernetes. Para agregar tu CA personalizada, haz lo siguiente:

1

El operador de Kubernetes requiere el certificado raíz CA de la CA que emitió el certificado del host de Ops Manager. Ejecuta el siguiente comando para crear un ConfigMap que contenga el CA raíz en el mismo espacio de nombres de tus pods de base de datos:

kubectl -n <metadata.namespace> create configmap <root-ca-configmap-name> \
--from-file=mms-ca.crt

Importante

El Operador de Kubernetes requiere que le pongas nombre al certificado del recurso de Ops Manager mms-ca.crt en el ConfigMap.

2
1---
2apiVersion: v1
3kind: ConfigMap
4metadata:
5 name: <my-configmap>
6 namespace: <my-namespace>
7data:
8 projectName: <my-ops-manager-project-name> # this is an optional parameter
9 orgId: <org-id> # this is a required parameter
10 baseUrl: https://<my-ops-manager-URL>
11 sslMMSCAConfigMap: <root-ca-configmap-name>
12 sslRequireValidMMSServerCertificates: ‘true’
13...
3
  1. Invoque el siguiente comando para editar el ConfigMap de su proyecto en el editor configurado por defecto:

    kubectl edit configmaps <my-configmap> -n <metadata.namespace>
  2. Pega y coloca la sección resaltada en el ejemplo ConfigMap al final del ConfigMap del proyecto.

4

Cambie las siguientes claves TLS:

Clave
Tipo
Descripción
Ejemplo

sslMMSCAConfigMap

string

Nombre del ConfigMap creado en el primer paso que contiene el certificado raíz CA utilizado para firmar el certificado del host de Ops Manager. Esto monta el certificado de la CA en el operador de Kubernetes y en los recursos de la base de datos.

my-root-ca

sslRequireValidMMSServerCertificates

booleano

Obliga al operador a requerir un certificado TLS válido desde Ops Manager.

IMPORTANTE: El valor debe estar entre comillas simples, o el operador generará un error.

'true'

5
6
kubectl describe configmaps <my-configmap> -n <metadata.namespace>

Importante

Always include the namespace option with kubectl. kubectl defaults to an empty namespace if you don't specify the -n option, resulting in deployment failures. You must specify the value of the <metadata.namespace> field. The Kubernetes Operator, secret, and MongoDB resources should run in the same unique namespace.

Este comando devuelve una descripción de ConfigMap en el shell:

Name: <my-configmap>
Namespace: <namespace>
Labels: <none>
Annotations: <none>
Data
====
sslMMSCAConfigMap:
----
<root-ca-configmap-name>
sslRequireValidMMSServerCertificates:
----
true
Events: <none>

Ahora que has creado tu ConfigMap, crea credenciales para el Operador de Kubernetes antes de implementar recursos de MongoDB.