Importante
Los subrecursos heredados quedan obsoletos a partir del lanzamiento de sus CRD correspondientes. Si su configuración actualmente utiliza el formato de subrecurso de esta definición de recurso, migrar a un CRD.
El recurso personalizado AtlasIPAccessList configura un Lista de acceso IP para un proyecto Atlas. Una lista de acceso IP le permite proteger su proyecto mediante una política de acceso mínimo.
Importante
Los recursos personalizados ya no eliminan objetos de forma predeterminada
El Operador de Kubernetes de Atlas utiliza archivos de configuración de recursos personalizados para administrar la configuración de Atlas. Sin embargo, a partir del Operador de Kubernetes 2.0 de Atlas, los recursos personalizados que elimine en Kubernetes ya no se eliminan (de forma predeterminada) en Atlas. En su lugar, el Operador de Kubernetes de Atlas simplemente deja de administrar esos recursos en Atlas. Por ejemplo, si elimina un
AtlasProjectRecurso Personalizado en Kubernetes, el Operador de Kubernetes de Atlas ya no elimina automáticamente el proyecto correspondiente de Atlas. Este cambio de comportamiento tiene como objetivo evitar eliminaciones accidentales o inesperadas. Para obtener más información, incluido cómo revertir este comportamiento al valor predeterminado utilizado antes del Operador de Kubernetes 2 0de Atlas., consulte Nuevo valor predeterminado: Protección contra eliminaciones en el Operador de Kubernetes 2 de0 Atlas..De manera similar, Atlas Kubernetes Operator no elimina equipos de Atlas si los elimina de un proyecto Atlas en Kubernetes con Atlas Kubernetes Operator.
Defina explícitamente los detalles de configuración deseados para evitar el uso implícito de los valores predeterminados de Atlas. En algunos casos, heredar los valores predeterminados de Atlas puede generar un bucle de conciliación que impide que su recurso personalizado alcance el estado
READY. Por ejemplo, definir explícitamente el comportamiento de escalado automático deseado en su recurso personalizadoAtlasDeployment, como se muestra en el ejemplo incluido, garantiza que un tamaño de instancia estático en su recurso personalizado no se aplique repetidamente a una implementación de Atlas con el escalado automático habilitado.autoScaling: diskGB: enabled: true compute: enabled: true scaleDownEnabled: true minInstanceSize: M30 maxInstanceSize: M40
El operador de Kubernetes de Atlas realiza una de las siguientes acciones utilizando el recurso API de lista de acceso IP del proyecto Atlas:
Crea una nueva lista de acceso IP.
Reemplazar una lista de acceso IP existente.
Ejemplos
Ejemplo básico
El siguiente ejemplo muestra un recurso personalizado AtlasIPAccessList que permite el acceso al proyecto my-project desde las siguientes fuentes:
Bloque CIDR
192.168.1.0/24dirección IP
10.0.0.1
El acceso desde 10.0.0.1 vence después del 31de marzo de 2025.
apiVersion: atlas.mongodb.com/v1 kind: AtlasIPAccessList metadata: name: atlasipaccesslist-sample spec: projectRef: name: my-project namespace: my-operator-namespace entries: - cidrBlock: 192.168.1.0/24 - ipAddress: 10.0.0.1 deleteAfterDate: 2025-03-31T23:59:59+02:00 - awsSecurityGroup: sg-1234 comment: "AWS Access to my network peering"
Ejemplo de CRD independiente
El siguiente ejemplo muestra un AtlasIPAccessList CRD independiente que permite el acceso desde el mismo bloque CIDR y la misma dirección IP permitida por el Ejemplo Básico. Esta definición de recurso personalizada permite crear una lista de acceso IP en un proyecto administrado fuera de la instancia de Atlas Kubernetes Operator con la que se define este recurso. Para habilitar la operación independiente, debe usar un externalProjectRef en lugar de un projectRef y proporcionar un connectionSecret directamente, ya que este recurso no puede heredar las credenciales de API de su proyecto principal.
apiVersion: atlas.mongodb.com/v1 kind: AtlasIPAccessList metadata: name: atlasipaccesslist-sample spec: externalProjectRef: projectId: 66e2f2b621571b7e69a89b66 connectionSecret: name: atlas-connection-secret entries: - cidrBlock: 192.168.1.0/24 - ipAddress: 10.0.0.1 deleteAfterDate: 2025-03-31T23:59:59+02:00 - awsSecurityGroup: sg-1234 comment: "AWS Access to my network peering"
Parámetros
Lista de acceso IP de Atlas
AtlasIPAccessList es el esquema para la API atlasipaccesslists.
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string | atlas.mongodb.com/v1 | true |
| string |
| true |
| Objeto | Consulte la documentación de Kubernetes | true |
| Objeto |
| false |
| Objeto |
| false |
AtlasIPAccessList.spec
AtlasIPAccessListSpec define el estado de destino de AtlasIPAccessList.
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| []objeto | Entradas es la lista de | true |
| Objeto | Nombre del secreto que contiene las claves privadas y públicas de Atlas | false |
| Objeto |
| false |
| Objeto |
| false |
Entradas de AtlasIPAccessList.spec
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string | Identificador único del grupo de seguridad | false |
| string | Rango de | false |
| string | Comentario asociado con esta entrada en la lista de acceso. | false |
| string | Fecha y hora tras las cuales Atlas elimina la entrada temporal de la lista de acceso. Formato: fecha-hora. | false |
| string | Entrada usando una dirección | false |
AtlasIPAccessList.spec.connectionSecret
Nombre del secreto que contiene las claves públicas y privadas de la API de Atlas.
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string | Nombre del recurso al que se hace referencia Más información: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
Lista de acceso IP de Atlas.spec.referencia de proyecto externo
externalProjectRef contiene el ID del proyecto Atlas principal. Se excluye mutuamente con el campo "projectRef".
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string |
| true |
Lista de acceso IP de Atlas.spec.referencia del proyecto
projectRef es una referencia al recurso AtlasProject principal. Es mutuamente excluyente con el campo "externalProjectRef".
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string | Nombre del recurso de Kubernetes | true |
| string | Espacio de nombres del recurso de Kubernetes | false |
Estado de AtlasIPAccessList
AtlasIPAccessListStatus es el estado observado más reciente del clúster AtlasIPAccessList. Solo lectura.
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| []objeto | Condiciones es la lista de estados que muestra el estado actual del recurso personalizado de Atlas | true |
| []objeto | El estado es el estado de la lista de acceso IP | false |
| entero |
| false |
AtlasIPAccessList.estado.condiciones
La condición describe el estado de un recurso personalizado de Atlas en un momento determinado.
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string | Estado de la condición; uno de Verdadero, Falso, Desconocido. | true |
| string | Tipo de condición de recurso personalizado de Atlas. | true |
| string | Última vez que la condición cambió de un estado a otro. Representado en | false |
| string | A | false |
| string | El | false |
Entradas de estado de AtlasIPAccessList
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string | La entrada es el acceso IP que Atlas gestiona | true |
| string | El estado es el estado correspondiente de la entrada. | true |