Para que el operador de Kubernetes cree o actualice objetos en su proyecto de Cloud Manager u Ops Manager, debe almacenar su clave de API programática en su herramienta de almacenamiento secreto.
Pueden existir varios secretos en el mismo espacio de nombres. Cada usuario debe tener su propio secreto.
Puede seguir el procedimiento a continuación para almacenar manualmente la clave API programática como un secreto de Kubernetes. También puede:
Utilice la interfaz de usuario de MongoDB Cloud Manager o la interfaz de usuario de Ops Manager para generar automáticamente el archivo YAML secreto de Kubernetes, que luego puede aplicar a su entorno de Kubernetes.
Almacene la clave API programática como un secreto de Vault siguiendo el procedimiento para crear un secreto de Vault. Para usar Vault, también debe configurar el almacenamiento de secretos.
Requisitos previos
Para crear credenciales para el operador de Kubernetes, debe:
Tener o crear una Organización de Gerente de Operaciones.
Tener o generar una clave API programática.
Otorgue esta nueva clave API programática:
El propietario de la organización o
Global Ownerrol, si desea que el operador de Kubernetes cree proyectos y los administre.El rol de Propietario del proyecto, si desea que el Operador de Kubernetes solo administre proyectos.
Nota
Debe asignar a la clave de API programática el rol de propietario de la
Global Ownerorganización o. Si desea asignar solo el rol de propietario del proyecto a la clave de API programática, primero debe crear el proyecto y, a continuación, la clave de API programática para el proyecto con dicho rol. El operador de Kubernetes no puede crear proyectos si la clave de API programática solo tiene el rol de propietario del proyecto.Añade el Bloque de IP o CIDR de cualquier host que preste servicio al operador de Kubernetes en la lista de acceso de API.
Procedimiento
Para crear su secreto de Kubernetes:
Crear un nuevo secreto de Kubernetes
Asegúrese de tener las claves públicas y privadas para la clave API programática de Ops Manager deseada.
Ejecútese el siguiente comando de Kubernetes para crear su secret:
kubectl -n <metadata.namespace> \ create secret generic <mycredentials> \ --from-literal="publicKey=<publicKey>" \ --from-literal="privateKey=<privateKey>" El
-nindicador limita el espacio de nombres al que se aplica este secreto. Todos los recursos de MongoDB Kubernetes deben existir en el mismo espacio de nombres que los secretos y los ConfigMaps. El operador de Kubernetes no utiliza ni los secretos ni los ConfigMaps.Nota
La versión obsoleta de este comando especifica
userypublicApiKeyen lugar depublicKeyyprivateKey. El operador de Kubernetes acepta cualquiera de las dos versiones para la autenticación.
Verifique su nuevo secreto de Kubernetes
Invoque el siguiente comando de Kubernetes para verificar su secreto:
kubectl describe secrets/<mycredentials> -n <metadata.namespace>
Este comando devuelve una descripción secreta en el shell:
Name: <mycredentials> Namespace: <metadata.namespace> Labels: <none> Annotations: <none> Type: Opaque Data ==== privateKey: 31 bytes publicKey: 22 bytes