Puede acceder al proyecto Atlas Kubernetes Operator en GitHub:
Cuenta Atlas
Antes de implementar Atlas Kubernetes Operator, debe crear una cuenta de Atlas. Para obtener más información,consulte Registrar una nueva cuenta de Atlas.
Claves de API
Necesita la siguiente clave API pública, clave API privada y la información de ID de la organización para configurar el acceso del operador de Kubernetes de Atlas a Atlas.
Si desea que el operador de Kubernetes de Atlascree un nuevo proyecto de Atlas, otorgue acceso programático a unaorganización. Si su organización requiere una lista de acceso de IP para la API de administración de Atlas, también debe configurarla.
Importante
Debes asignar la clave API a la Organization Project Creator rol organizacional o superior.
Si desea trabajar con un proyecto de Atlas existente, agregue el acceso al proyecto desdeun proyecto. Si su organización requiere una lista de acceso IP para la API de administración de Atlas, también debe configurarla.
Importante
Debe asignar al clave API el rol de proyecto Project Owner.
Para obtener más información, consulte Configurar el acceso a Atlas.
Namespaces
Puede implementar Atlas Kubernetes Operator para vigilar todos los espacios de nombres en el clúster de Kubernetes, o solo su espacio de nombres.
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 se puede usar una URL de conexión directamente. Los clústeres de Atlas requieren autenticación. Debe crear al menos un AtlasDatabaseUser recurso personalizado para que la aplicación de su clúster de Kubernetes pueda conectarse a él. El operador de Kubernetes de Atlas crea un secreto especial para cada combinación de clúster y usuario de base de datos del proyecto. La aplicación de su clúster de Kubernetes puede usar este secreto para conectarse al clúster de Atlas. El spec.scopes parámetro del AtlasDatabaseUser recurso personalizado restringe los clústeres que crean el usuario de base de datos.
Información de conexión
Para conectarse a la API de administración de Atlas, Atlas Kubernetes Operator lee el ID de la organización y las claves de API de una de las siguientes ubicaciones:
spec.connectionSecretRef.name (si se especifica en el
AtlasProjectrecurso personalizado).De forma predeterminada, Atlas Kubernetes Operator guarda los secretos de conexión en el mismo espacio de nombres que el
AtlasProjectrecurso personalizado. Para almacenarlos en otro espacio de nombres, especifique el parámetro spec.connectionSecretRef.namespace.globalSecreto del operador de Atlas Kubernetes<operator-deployment-name>-api-key(si no se especifica spec.connectionSecretRef.name).
Para crear o actualizar recursos en Atlas, Atlas Kubernetes Operator utiliza la información de conexión para realizar llamadas API a Atlas.
Nota
En ocasiones, Atlas Kubernetes Operator realiza varias llamadas a la API en Atlas durante la conciliación de un recurso personalizado. Por ejemplo, AtlasProject tiene una configuración de lista de acceso IP para llamar a la API correspondiente.
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
Indicadores de implementación admitidos
Al implementar el operador Atlas Kubernetes kubectl con, puede agregar las siguientes marcas para personalizar su 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 sus claves de API de Atlas. El operador de Kubernetes de Atlas 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. |
|
| Nivel de importancia o urgencia de las entradas del registro. Puede especificar uno de los siguientes niveles:
|
|
| Formato de los registros. Puede especificar uno de los siguientes formatos:
|
|
Ejemplo
El siguiente comando configura una implementación de Atlas Kubernetes Operator 1.8.2 con el punto final 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