Puedes acceder al proyecto Atlas Kubernetes Operator en GitHub:
Cuenta Atlas
Antes de implementar el operador de Kubernetes de Atlas, debes crear una cuenta de Atlas. Para más información, consulta Registra una nueva cuenta de Atlas.
Claves de API
Necesita la siguiente llave pública de API, llave privada de API y la información del Identificador de la Organización para configurar el acceso de Atlas Kubernetes Operator a Atlas.
Si deseas que el Atlas Kubernetes Operator cree un nuevo Proyecto de Atlas, otorga acceso programático a una organización. Si tu organización requiere una lista de acceso IP para la API de administración de Atlas, también deberás configurar la lista de acceso a la API.
Importante
Debes asignar la clave API al Organization Project Creator rol en la organización o superior.
Si deseas trabajar con un proyecto Atlas existente, Añadir acceso al proyecto desde un proyecto. Si tu organización requiere una lista de acceso IP para la API de Administración de Atlas, también debes configurar la lista de acceso a la API.
Importante
Debe asignar al clave API el rol de proyecto Project Owner.
Para aprender más, Configurar el acceso a Atlas.
Namespaces
Puede implementar Atlas Kubernetes Operator para monitorear todos los namespaces en el clúster de Kubernetes, o solo su namespace.
AWS Grupos de seguridad
Debe configurar el emparejamiento de VPC para su proyecto antes de poder agregar un Grupo de seguridad deAWS en una lista de acceso. No se pueden configurar grupos de seguridad de AWS como entradas temporales en la lista de acceso.
Parámetros de Configuración Obsoletos
Los siguientes parámetros están obsoletos en la API de Atlas y Atlas Kubernetes Operator no los admite:
replicationSpecreplicationFactor
Creación de clústeres
La creación de un clúster Atlas de nivel gratuito lleva menos de 15 segundos.
La creación de un clúster Flex o un clúster dedicado puede tardar hasta 10 minutos.
Cadenas de conexión
No puede utilizar una URL de conexión directamente. Los clústeres de Atlas requieren autenticación. Debe crear al menos un AtlasDatabaseUser Recurso personalizado antes de que la aplicación en su clúster de Kubernetes pueda conectarse al clúster de Atlas. Atlas Kubernetes Operator crea un secreto especial para cada combinación de clúster y usuario de base de datos en el proyecto. La aplicación en tu clúster de Kubernetes puede usar este secreto para conectarse al clúster de Atlas. El parámetro spec.scopes en el recurso personalizado AtlasDatabaseUser restringe los clústeres que crean el usuario de base de datos.
Información de la conexión
Para conectarse a la API de administración de Atlas, Atlas Kubernetes Operator lee el Identificador de la Organización y las llaves API de una de las siguientes ubicaciones:
spec.connectionSecretRef.name(si se especifica en elAtlasProjectrecurso personalizado).Por defecto, el Atlas Kubernetes Operator mantiene los secretos de conexión en el mismo namespace que el
AtlasProjectRecurso personalizado. Para almacenar secretos en otro namespace, especifica el parámetrospec.connectionSecretRef.namespace.globalSecreto del operador de Atlas Kubernetes<operator-deployment-name>-api-key(si no sespec.connectionSecretRef.nameespecifica).
Para crear o actualizar recursos en Atlas, Atlas Kubernetes Operator utiliza la información de conexión para realizar llamadas API a Atlas.
Nota
Si ocurre algún error durante la conciliación, status.conditions se actualiza para reflejar el error.
Ejemplo
- lastTransitionTime: "2021-03-15T14:26:44Z" message: 'POST https://cloud.mongodb.com/api/atlas/v1.0/groups/604a47de73cd8cag77239021/accessList: 400 (request "INVALID_IP_ADDRESS_OR_CIDR_NOTATION") The address 192.0.2.1dfdfd5 must be in valid IP address or CIDR notation.' reason: ProjectIPAccessListNotCreatedInAtlas status: "False" type: IPAccessListReady
Sugerencias de implementación admitidas
Cuando implementes. Atlas Kubernetes Operator usando kubectl, puedes añadir los siguientes parámetros para personalizar tu configuración:
Flag | Descripción | Valor por defecto |
|---|---|---|
| Nombre de dominio URL de Atlas, que termina en una barra. |
|
| Dirección a la que se vincula el punto final de la métrica. |
|
| Dirección a la que se vincula el punto final de la sonda. |
|
| Nombre del secreto que contiene tus claves API de Atlas. Atlas Kubernetes Operator utiliza este parámetro si su configuración |
|
| Indicador que indica si se habilita la elección de líder para el administrador de controladores. Esta opción garantiza que solo haya un administrador de controladores activo a la vez. |
|
| Importancia o nivel de urgencia de las entradas del registro. Puedes especificar uno de los siguientes niveles:
|
|
| Formato para los registros de logs. Puedes especificar uno de los siguientes formatos:
|
|
Ejemplo
El siguiente comando configura una implementación del Atlas Kubernetes Operator 1.8.2 con el endpoint de métricas en el puerto :8084, utilizando un nivel de registro de error:
kubectl apply --metrics-bind-address :8084 \ --log-level error \ -f https://raw.githubusercontent.com/mongodb/mongodb-atlas-kubernetes/1.8.2/deploy/all-in-one.yaml