Nota
El operador de Kubernetes de Atlas no admite el recurso personalizado AtlasDataFederation para Atlas para el gobierno.
El AtlasDataFederation recurso personalizado configura una instancia de base de datos federada en Atlas. Al crear el AtlasDataFederation recurso personalizado, el operador de Kubernetes de Atlas intenta crear o actualizar una instancia de base de datos federada en Atlas. Puede usar una instancia de base de datos federada para ejecutar consultas federadas.
Importante
Los recursos personalizados ya no eliminan objetos de forma predeterminada
El operador de Kubernetes de Atlas utiliza Archivosde configuración de recursos personalizados para administrar la configuración de Atlas. Sin embargo, a partir del Operador de 2.0 Kubernetes 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 ayudar a prevenir 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 de Atlas.,2 0consulte 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
Atlas Kubernetes Operator utiliza los recursos de la API de clústeres de Atlas y de la spec.serverlessSpec API de clústeres avanzados para crear una nueva instancia de base de datos federada o actualizar una instancia de base de datos federada existente. Si especifica valores para los campos en, Atlas Kubernetes Operator utiliza el recurso de la API de instancia sin servidor de Atlas para crear o configurar puntos finales privados para su instancia de base de datos federada.
Si elimina el recurso AtlasDataFederation de su clúster de Kubernetes, Atlas Kubernetes Operator elimina la instancia federada de base de datos de Atlas.
Ejemplos
El siguiente ejemplo muestra una especificación de recurso personalizado AtlasDataFederation con puntos finales privados configurados:
apiVersion: atlas.mongodb.com/v1 kind: AtlasDataFederation metadata: name: my-federated-deployment spec: projectRef: name: my-project namespace: default cloudProviderConfig: aws: roleId: 12345678 testS3Bucket: my-bucket dataProcessRegion: cloudProvider: AWS region: OREGON_USA name: my-fdi storage: databases: - collections: - dataSources: - allowInsecure: false collection: my-collection collectionRegex: database: my-database databaseRegex: defaultFormat: ".avro" path: / provenanceFieldName: string storeName: my-data-store urls: - string: name: my-collection-mdb maxWildcardCollections: 100 name: my-database-mdb views: - name: my-view pipeline: source: my-source-collection stores: - name: my-store provider: S3 additionalStorageClasses: - STANDARD bucket: my-bucket delimiter: / includeTags: false prefix: data- public: false region: US_WEST_1 privateEndpoints: - endpointId: vpce-3bf78b0ddee411ba1 provider: AWS type: DATA_LAKE - endpointId: vpce-3bf78b0ddee411ba2 provider: AWS type: DATA_LAKE
Parámetros
Esta sección describe algunos de los AtlasDataFederation parámetros clave de recursos personalizados disponibles. Para obtener una lista completa de los parámetros disponibles, consulte la API de federación de datos de Atlas.
Consulte estas descripciones, los ejemplos disponibles y la Documentación API para personalizar sus especificaciones.
metadata.nameTipo: string
Requerido
Etiqueta que identifica el
AtlasDataFederationrecurso Personalizado que Atlas Kubernetes Operator utiliza para agregar esta instancia federada de base de datos a un Proyecto.
spec.cloudProviderConfigTipo: objeto
Requerido
Lista que contiene las configuraciones del proveedor de nube para la instancia de base de datos federada.
spec.cloudProviderConfig.awsTipo: objeto
Requerido
Nombre del proveedor de servicios en la nube que aloja la instancia de base de datos federada.
spec.cloudProviderConfig.aws.roleIdTipo: string
Requerido
Identificador único del rol que la instancia de base de datos federada puede utilizar para acceder a los almacenes de datos.
spec.cloudProviderConfig.aws.testS3BucketTipo: string
Requerido
Nombre del depósito de datos S3 al que el ID de rol proporcionado está autorizado a acceder.
spec.dataProcessRegionTipo: objeto
Requerido
Información sobre la región del proveedor de nube a la que la instancia de base de datos federada enruta las conexiones de cliente. Atlas Kubernetes Operator solo es compatible con AWS.
spec.dataProcessRegion.cloudProviderTipo: string
Requerido
Nombre del proveedor de servicios en la nube que aloja los almacenes de datos de la instancia de base de datos federada. El operador de Kubernetes de Atlas acepta los siguientes valores:
AWSTENANTSERVERLESS
spec.dataProcessRegion.regionTipo: string
Requerido
Etiqueta que indica la ubicación geográfica de los almacenes de datos de la instancia de base de datos federada. El operador de Kubernetes de Atlas acepta los siguientes valores:
SYDNEY_AUSMUMBAI_INDFRANKFURT_DEUDUBLIN_IRLLONDON_GBRVIRGINIA_USAOREGON_USASAOPAULO_BRASINGAPORE_SGP
spec.nameTipo: string
Opcional
Etiqueta que identifica la instancia de base de datos federada en Atlas.
spec.storageTipo: objeto
Opcional
Información de configuración para cada almacén de datos y su mapeo a bases de datos Atlas.
spec.storage.databasesTipo: arreglo
Opcional
Lista que contiene las bases de datos y colecciones consultables para esta instancia de base de datos federada.
spec.storage.databases.collectionsTipo: arreglo
Opcional
Lista de colecciones y fuentes de datos que se asignan a un almacén de datos
stores.
spec.storage.databases.collections.dataSourcesTipo: arreglo
Opcional
Lista que contiene los almacenes de datos que se asignan a una colección para esta instancia de base de datos federada.
spec.storage.databases.collections.dataSources.allowInsecureTipo: booleano
Opcional
Marca que valida el esquema en las URL especificadas. Si es
true, el operador de Kubernetes de Atlas permite el esquema inseguroHTTP, no verifica la cadena de certificados ni el nombre de host del servidor y acepta cualquier certificado con cualquier nombre de host presentado por el servidor. Si esfalse, el operador de Kubernetes de Atlas solo permite asegurar el esquemaHTTPS.
spec.storage.databases.collections.dataSources.collectionTipo: string
Opcional
Etiqueta legible que identifica la colección en la base de datos. Para crear una colección con comodín (
*), debe omitir este parámetro.
spec.storage.databases.collections.dataSources.collectionRegexTipo: string
Opcional
Patrón de expresión regular que se utilizará para crear una colección de comodines (
*).
spec.storage.databases.collections.dataSources.databaseTipo: string
Opcional
Etiqueta legible que identifica la base de datos que contiene la colección en el clúster. Debe omitir este parámetro para generar colecciones con comodín (
*) para bases de datos generadas dinámicamente.
spec.storage.databases.collections.dataSources.databaseRegexTipo: string
Opcional
Patrón de expresión regular a utilizar para crear la base de datos de comodín (
*).
spec.storage.databases.collections.dataSources.defaultFormatTipo: string
Opcional
Formato de archivo que utiliza Atlas Kubernetes Operator si encuentra un archivo sin extensión al buscar
storeName. Atlas Kubernetes Operator acepta los siguientes valores:.avro.avro.bz2.avro.gz.bson.bson.bz2.bson.gz.bsonx.csv.csv.bz2.csv.gz.json.json.bz2.json.gz.orc.parquet.tsv.tsv.bz2.tsv.gz
spec.storage.databases.collections.dataSources.pathTipo: string
Opcional
Ruta de archivo que controla cómo Atlas Kubernetes Operator busca y analiza los archivos en
storeNameantes de asignarlos a una colección. Especifique/para capturar todos los archivos y carpetas de la ruta de prefijo.
spec.storage.databases.collections.dataSources.provenanceFieldNameTipo: string
Opcional
Etiqueta legible que identifica el campo que incluye la procedencia de los documentos en los resultados. El operador de Kubernetes de Atlas devuelve diferentes campos en los resultados para cada proveedor compatible.
spec.storage.databases.collections.dataSources.storeNameTipo: string
Opcional
Etiqueta legible por humanos que identifica el almacén de datos que Atlas Kubernetes Operator asigna a la colección.
spec.storage.databases.collections.dataSources.urlsTipo: arreglo
Opcional
URL de los archivos de datos de acceso público. No se pueden especificar URL que requieran autenticación. Atlas Data Federation crea una partición para cada URL. Si se deja vacío o se omite, Atlas Data Federation utiliza las URL del almacén especificado en el parámetro dataSources.storeName.
spec.storage.databases.collections.nameTipo: string
Opcional
Etiqueta legible por humanos que identifica la colección a la que Atlas Kubernetes Operator asigna los datos en los almacenes de datos.
spec.storage.databases.maxWildcardCollectionsTipo: int32
Opcional
Número máximo de colecciones de comodines en la base de datos. Esto solo aplica a las fuentes de datos S3. El valor predeterminado es
100.
spec.storage.databases.nameTipo: string
Opcional
Etiqueta legible por humanos que identifica la base de datos a la que la instancia de base de datos federada asigna datos.
spec.storage.databases.viewsTipo: arreglo
Opcional
Lista de pipeline de agregación que se aplican a la colección. Esto solo se aplica a las fuentes de datos S3.
spec.storage.databases.views.nameTipo: string
Opcional
Etiqueta legible por humanos que identifica la vista, que corresponde a una canalización de agregación en una colección.
spec.storage.databases.views.pipelineTipo: string
Opcional
Etapas de la canalización de agregación que se aplicarán a la colección de origen.
spec.storage.databases.views.sourceTipo: string
Opcional
Etiqueta legible por humanos que identifica la colección de origen de la vista.
spec.storage.storesTipo: arreglo
Opcional
Lista que contiene los almacenes de datos para la instancia de base de datos federada.
spec.storage.stores.nameTipo: string
Opcional
Etiqueta legible que identifica el almacén de datos. El campo spec.storage.databases.collections.dataSources.storeName hace referencia a estos valores como parte de la configuración de mapeo.
spec.storage.stores.providerTipo: string
Condicional
Proveedor del almacén. El operador de Kubernetes de Atlas solo admite
S3. Debe especificar este campo para usar un almacén de datos.
spec.storage.stores.additionalStorageClassesTipo: arreglo
Opcional
Colección de 3 clases de almacenamiento de AWS S. Atlas Data Federation incluye los archivos de estas clases de almacenamiento en los resultados de la consulta. El operador de Kubernetes de Atlas acepta los siguientes valores:
STANDARDINTELLIGENT_TIERINGSTANDARD_IA
spec.storage.stores.bucketTipo: string
Opcional
Etiqueta legible que identifica el bucket de AWS 3 S. Esta etiqueta debe coincidir exactamente con el nombre de un bucket de S3 al que la instancia de base de datos federada puede acceder con las credenciales de AWS IAM configuradas.
spec.storage.stores.delimiterTipo: string
Opcional
El delimitador que separa los segmentos spec.storage.databases.collections.dataSources.path en el almacén de datos. El operador de Atlas Kubernetes utiliza este delimitador para recorrer eficientemente 3 los buckets S con una estructura de directorios jerárquica. Puede especificar cualquier carácter compatible con las3 claves de objeto S como delimitador. Por ejemplo, puede especificar un guion bajo (),
_un signo más ()+o varios caracteres, como guiones bajos dobles ().__Si se omite, el valor predeterminado/es.
spec.storage.stores.includeTagsTipo: booleano
Opcional
Marca que indica si se deben usar etiquetas S3 en los archivos de la ruta especificada como atributos de partición adicionales. Si se establece como verdadero, Atlas Kubernetes Operator agrega las etiquetas S3 como atributos de partición adicionales y nuevos elementos BSON de nivel superior que asocian cada etiqueta a cada documento. Si se omite, el valor predeterminado es
false.
spec.storage.stores.prefixTipo: string
Opcional
Prefijo que Atlas Kubernetes Operator aplica al buscar archivos en el3 bucket S. El almacén de datos antepone el valor de prefijo a spec.storage.databases.collections.dataSources.path para crear la ruta completa de los archivos que se van a ingerir. Si se omite, Atlas Kubernetes Operator busca todos los archivos desde la raíz del3 bucket S.
spec.storage.stores.publicTipo: booleano
Opcional
Indicador que señala si el bucket es público. Si se configura en
true, el Operador de Atlas Kubernetes no utiliza el rol de AWS IAM configurado para acceder al bucket S3. Si está configurado enfalse, el rol AWS IAM configurado debe incluir permisos para acceder al bucket S3.
spec.storage.stores.regionTipo: string
Opcional
Región deAWS que indica la ubicación física del 3 bucket S.
spec.privateEndpointsTipo: arreglo
Opcional
Lista que contiene las configuraciones de puntos finales privados para la instancia de base de datos federada.
spec.privateEndpoints.endpointIdTipo: string
Requerido
22Cadena alfanumérica única de caracteres que comienza con
vpce-y que identifica el punto final privado en AWS
spec.privateEndpoints.providerTipo: string
Opcional
Etiqueta legible que identifica al proveedor de servicios en la nube. Atlas Data Federation solo admite
AWS.
spec.privateEndpoints.typeTipo: string
Opcional
Etiqueta legible que identifica el tipo de recurso asociado a este punto final privado. Atlas Data Federation solo admite
DATA_LAKE.
spec.projectRef.nameTipo: string
Requerido
Nombre del proyecto al que pertenece la instancia de base de datos federada. Debe especificar un recurso personalizado
AtlasProjectexistente.
spec.projectRef.namespaceTipo: string
Requerido
Espacio de nombres en el que existe
AtlasProjectel recurso personalizado especificado en spec.projectRef.name.