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 AtlasPrivateEndpoint configura un
Punto final privado para un proyecto Atlas. Esto le permite conectar su proveedor de nube a Atlas sin enviar información a través de una red pública. Los puntos finales privados son conexiones unidireccionales a Atlas desde su red virtual.
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 mediante el recurso de API del servicio de punto final privado de Atlas:
Crea un nuevo servicio de punto final privado.
Actualiza un servicio de punto final privado existente.
Para obtener más información sobre cómo implementar puntos finales privados en Atlas Kubernetes Operator, consulte Administrar puntos finales privados.
Ejemplos
Ejemplo básico
El siguiente ejemplo muestra un recurso personalizado AtlasPrivateEndpoint que define un Punto final privado my-project de AWS dentro del proyecto.
apiVersion: atlas.mongodb.com/v1 kind: AtlasPrivateEndpoint metadata: name: my-atlas-pe1 spec: projectRef: name: my-project namespace: my-operator-namespace provider: AWS region: US_EAST_1 awsConfiguration: - id: vpcpe-xyz
Ejemplo de CRD independiente
El siguiente ejemplo muestra un AtlasPrivateEndpoint CRD independiente que define el mismo punto final privado definido en el Ejemplo Básico. Esta definición de recurso personalizada le permite crear este punto final privado en un proyecto que no administra en la misma instancia de Atlas Kubernetes Operator con la que define este recurso. Para habilitar la operación independiente, debe usar un externalProjectRef en lugar de un projectRef y debe 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: AtlasPrivateEndpoint metadata: name: my-atlas-pe1 spec: externalProjectRef: projectID: 66e2f2b621571b7e69a89b66 connectionSecret: name: atlas-connection-secret provider: AWS region: US_EAST_1 awsConfiguration: - id: vpcpe-xyz
Parámetros
Punto final privado de Atlas
La definición de recurso personalizado (CRD) AtlasPrivateEndpoint define la configuración deseada de un punto final privado para un proyecto Atlas. Permite una conexión privada entre su proveedor de nube y Atlas que no envía información a través de una red pública.
Puede utilizar puntos finales privados para crear una conexión unidireccional a los clústeres Atlas desde su red virtual.
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 |
Punto final privado de Atlas.spec
AtlasPrivateEndpointSpec es la especificación de la configuración deseada de un punto final privado del proyecto
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| enum | Nombre del servicio en la | true |
| string | Región del proveedor de nube elegido en el que desea crear el servicio de punto final privado. | true |
| []objeto | AWSConfiguration es la configuración | false |
| []objeto |
| false |
| Objeto | Nombre del secreto que contiene las claves privadas y públicas de Atlas | false |
| Objeto |
| false |
| []objeto | GCPConfiguration es la configuración específica de Google Cloud para el punto final privado. | false |
| Objeto |
| false |
Punto final privado de Atlas.spec.awsConfiguration
AWSPrivateEndpointConfiguration contiene la configuración de AWS realizada en la red del cliente.
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string |
| true |
Punto final privado de Atlas.spec.azureConfiguration
AzurePrivateEndpointConfiguration contiene la configuración de Azure realizada en la red del cliente.
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string |
| true |
| string |
| true |
Punto final privado de Atlas.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 |
Punto final privado 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 |
AtlasPrivateEndpoint.spec.gcpConfiguration
GCPPrivateEndpointConfiguration contiene la configuración de GCP realizada en la red del cliente.
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| []objeto | Puntos finales es la lista de puntos finales privados individuales | true |
| string |
| true |
| string |
| true |
Punto final privado de Atlas.spec.gcpConfiguration.endpoints
GCPPrivateEndpoint contiene las reglas de reenvío de GCP configuradas en la red del cliente.
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string |
| true |
| string | Nombre que identifica la regla de reenvío de consumidores de Google Cloud que creó. | true |
Punto final privado 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 del punto final privado de Atlas
AtlasPrivateEndpointStatus es el estado observado más reciente del clúster AtlasPrivateEndpoint. 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 | Los puntos finales son el estado del | false |
| string | Error es la descripción de la falla ocurrida al configurar el punto final privado | false |
| entero |
| false |
| string |
| false |
| []cadena |
| false |
| string |
| false |
| string |
| false |
| string |
| false |
Condiciones de estado de AtlasPrivateEndpoint
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 |
AtlasPrivateEndpoint.status.endpoints
EndpointInterfaceStatus es el estado observado más reciente de las interfaces asociadas al servicio configurado. Solo lectura.
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string |
| false |
| string |
| false |
| string |
| false |
| string | Error es la descripción de la falla ocurrida al configurar el punto final privado | false |
| []objeto | GCPForwardingRules es el estado del nodo privado (reglas de reenvío) del cliente | false |
AtlasPrivateEndpoint.status.endpoints.gcpForwardingRules
GCPForwardingRule es el estado observado más reciente de las reglas de reenvío de GCP configuradas para una interfaz. Solo lectura.
Name | Tipo | Descripción | Requerido |
|---|---|---|---|
| string | Etiqueta legible por humanos que identifica la regla de reenvío de consumidores de Google Cloud que usted creó. | false |
| string | Estado del grupo de puntos finales Atlas | false |