Menu Docs
Página inicial do Docs
/ /
Kubernetes Operator do MongoDB Atlas
/

AtlasDataFederation Recurso personalizado

Nesta página

  • Exemplos
  • Parâmetros

Observação

O Atlas Kubernetes Operator não oferece suporte ao recurso personalizado AtlasDataFederation para o Atlas for Government.

O recurso personalizado AtlasDataFederation configura um federated database instance no Atlas. Quando você cria o recurso personalizado do AtlasDataFederation , o Atlas Kubernetes Operator tenta criar ou atualizar uma instância do banco de dados federado no Atlas. Você pode utilizar uma instância do banco de dados federado para executar queries federadas.

Importante

Os Recursos Personalizados Não Excluem Mais Objetos por Padrão

  • O Atlas Kubernetes Operator usa arquivos de configuração de recurso personalizado para gerenciar sua configuração do Atlas , mas a partir do Atlas Kubernetes Operator 2.0, os recursos personalizados que você exclui no Kubernetes não são mais (por padrão) excluídos no Atlas. Em vez disso, o Atlas Kubernetes Operator simplesmente para de gerenciar estes recursos no Atlas. Por exemplo, se você excluir um AtlasProject Recurso Personalizado em Kubernetes, por padrão, o Atlas Kubernetes Operator não excluirá mais automaticamente o projeto correspondente do Atlas. Essa mudança no comportamento destina-se a ajudar a evitar exclusões acidentais ou inesperadas. Para saber mais, incluindo como reverter este comportamento para o padrão utilizado antes do Atlas Kubernetes Operator 2.0, consulte Novo Padrão: Proteção de Exclusão no Atlas Kubernetes 2 Operator.0.

    Da mesma forma, o Atlas Kubernetes Operator não exclui equipes do Atlas se você as remover de um projeto do Atlas no Kubernetes com o Atlas Kubernetes Operator.

  • Defina explicitamente os detalhes de configuração desejados para evitar o uso implícito de valores de configuração padrão do Atlas . Em alguns casos, herdar os padrões do Atlas pode resultar em um loop de reconciliação que pode impedir que seu recurso personalizado atinja um estado READY. Por exemplo, definir explicitamente o comportamento de autoscaling desejado em seu recurso personalizado AtlasDeployment, conforme mostrado no exemplo incluído, garante que um tamanho de instância estática em seu recurso personalizado não esteja sendo aplicado repetidamente a um sistema do Atlas que tenha o autoscaling ativado.

    autoScaling:
    diskGB:
    enabled: true
    compute:
    enabled: true
    scaleDownEnabled: true
    minInstanceSize: M30
    maxInstanceSize: M40

O Atlas Kubernetes Operator usa o Atlas Clusters API Resource e o Advanced Clusters API Resource para criar uma nova instância do banco de dados federado ou atualizar uma instância do banco de dados federado existente. Se você especificar valores para os campos em spec.serverlessSpec, o Atlas Kubernetes Operator usará o Recurso Atlas de Instância sem Servidor API para criar ou configurar endpoints privados para sua instância do banco de dados federado.

Se você remover o recurso AtlasDataFederation do cluster do Kubernetes, o Atlas Kubernetes Operator removerá a instância do banco de dados federado do Atlas.

O exemplo a seguir mostra uma especificação de recurso personalizada AtlasDataFederation com endpoints 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

Esta seção descreve alguns dos principais parâmetros de recursos personalizados AtlasDataFederation disponíveis. Para obter uma lista completa dos parâmetros disponíveis, consulte a API do Atlas Data Federation.

Consulte estas descrições, os exemplos disponíveis e a documentação da API do para personalizar suas especificações.

metadata.name

Tipo: string

Obrigatório

Etiqueta que identifica o AtlasDataFederation Recurso Personalizado que o Atlas Kubernetes Operator utiliza para adicionar esta instância do banco de dados federado a um projeto.

spec.cloudProviderConfig

Tipo: objeto

Obrigatório

Lista que contém as configurações do fornecedor de nuvem para a instância do banco de dados federado.

spec.cloudProviderConfig.aws

Tipo: objeto

Obrigatório

Nome do provedor de serviços de nuvem que hospeda a instância do banco de dados federado.

spec.cloudProviderConfig.aws.roleId

Tipo: string

Obrigatório

Identificador único da role que a instância do banco de dados federado pode usar para acessar os armazenamentos de dados.

spec.cloudProviderConfig.aws.testS3Bucket

Tipo: string

Obrigatório

Nome do bucket de dados do S3 que o ID de role fornecido está autorizado a acessar.

spec.dataProcessRegion

Tipo: objeto

Obrigatório

Informações sobre a região do fornecedor de nuvem para a qual a instância do banco de dados federado roteia as conexões do cliente. O Atlas Kubernetes Operator é compatível apenas com Amazon Web Services.

spec.dataProcessRegion.cloudProvider

Tipo: string

Obrigatório

Nome do provedor de serviços de cloud que hospeda os armazenamentos de dados da instância do reconhecimento de data center federado. O Atlas Kubernetes Operator aceita os seguintes valores:

  • AWS

  • TENANT

  • SERVERLESS

spec.dataProcessRegion.region

Tipo: string

Obrigatório

Etiqueta que indica a localização geográfica dos armazenamentos de dados da instância do banco de dados federado. O Atlas Kubernetes Operator aceita os seguintes valores:

  • SYDNEY_AUS

  • MUMBAI_IND

  • FRANKFURT_DEU

  • DUBLIN_IRL

  • LONDON_GBR

  • VIRGINIA_USA

  • OREGON_USA

  • SAOPAULO_BRA

  • SINGAPORE_SGP

spec.name

Tipo: string

Opcional

Etiqueta que identifica a instância do banco de dados federado no Atlas.

spec.storage

Tipo: objeto

Opcional

Informações de configuração para cada armazenamento de dados e seu mapeamento para bancos de dados Atlas.

spec.storage.databases

Tipo: array

Opcional

Lista que contém os bancos de dados consultáveis e as coleções para esta instância do banco de dados federado.

spec.storage.databases.collections

Tipo: array

Opcional

Lista de collection e conjunto de dados que mapeiam para um armazenamento de dados do stores .

spec.storage.databases.collections.dataSources

Tipo: array

Opcional

Lista que contém os armazenamentos de dados mapeados para uma collection para esta instância do banco de dados federado.

spec.storage.databases.collections.dataSources.allowInsecure

Tipo: booleano

Opcional

Sinalizador que valida o esquema na URL especificada. Se true, o Atlas Kubernetes Operator permite o esquema inseguro HTTP , não verifica a cadeia de certificados do servidor e o nome de host e aceita qualquer certificado com qualquer nome de host apresentado pelo servidor. Se false, o Atlas Kubernetes Operator permite proteger somente o esquema HTTPS .

spec.storage.databases.collections.dataSources.collection

Tipo: string

Opcional

Rótulo legível por humanos que identifica a collection no reconhecimento de data center. Para criar uma collection de curingas (*), você deve omitir este parâmetro.

spec.storage.databases.collections.dataSources.collectionRegex

Tipo: string

Opcional

Padrão regex a ser usado para criar uma collection de curingas (*).

spec.storage.databases.collections.dataSources.database

Tipo: string

Opcional

Rótulo legível por humanos que identifica o reconhecimento de data center, que contém a collection no cluster. Você deve omitir este parâmetro para gerar collection de curingas (*) para reconhecimento de data center gerados dinamicamente.

spec.storage.databases.collections.dataSources.databaseRegex

Tipo: string

Opcional

Padrão regex a ser usado para criar o reconhecimento de data center curinga (*).

spec.storage.databases.collections.dataSources.defaultFormat

Tipo: string

Opcional

Formato de arquivo que o Atlas Kubernetes Operator utiliza se encontrar um arquivo sem uma extensão de arquivo ao pesquisar storeName. O Atlas Kubernetes Operator aceita os seguintes 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.path

Tipo: string

Opcional

Caminho do arquivo que controla como o Atlas Kubernetes Operator pesquisa e analisa os arquivos no storeName antes de mapeá-los para uma collection. Especifique / para capturar todos os arquivos e pastas do caminho de prefixo.

spec.storage.databases.collections.dataSources.provenanceFieldName

Tipo: string

Opcional

Etiqueta legível para humanos que identifica o campo que inclui a procedência dos documentos nos resultados. O Atlas Kubernetes Operator retorna campos diferentes nos resultados de cada provedor suportado.

spec.storage.databases.collections.dataSources.storeName

Tipo: string

Opcional

Rótulo legível por humanos que identifica o data store que o Atlas Kubernetes Operator mapeia para a collection.

spec.storage.databases.collections.dataSources.urls

Tipo: array

Opcional

URLs dos arquivos de dados acessíveis publicamente. Não é possível especificar URLs que exijam autenticação. O Atlas Data Federation cria uma partição para cada URL. Se vazio ou omitido, o Atlas Data Federation usa as URLs do armazenamento especificado no parâmetro dataSources.storeName .

spec.storage.databases.collections.name

Tipo: string

Opcional

Etiqueta legível para humanos que identifica a collection para a qual o Atlas Kubernetes Operator mapeia os dados nos armazenamentos de dados.

spec.storage.databases.maxWildcardCollections

Tipo : int32

Opcional

Número máximo de coleções de curingas no banco de dados. Isso se aplica apenas a fontes de dados S3. O valor padrão é 100 .

spec.storage.databases.name

Tipo: string

Opcional

Rótulo legível por humanos que identifica o banco de dados para o qual a instância do banco de dados federado mapeia os dados.

spec.storage.databases.views

Tipo: array

Opcional

Lista de pipelines de agregação que se aplicam à collection. Isso se aplica apenas ao conjunto de dados S3.

spec.storage.databases.views.name

Tipo: string

Opcional

Etiqueta legível para humanos que identifica a visualização, que corresponde a uma aggregation pipeline em uma collection.

spec.storage.databases.views.pipeline

Tipo: string

Opcional

Estágios do pipeline de agregação a serem aplicados à coleção de origem.

spec.storage.databases.views.source

Tipo: string

Opcional

Etiqueta legível para humanos que identifica a collection de origem para a visualização.

spec.storage.stores

Tipo: array

Opcional

Lista que contém os armazenamentos de dados para a instância do banco de dados federado.

spec.storage.stores.name

Tipo: string

Opcional

Rótulo legível por humanos que identifica o armazenamento de dados. O campo spec.storage.databases.collections.dataSources.storeName faz referência a esses valores como parte da configuração de mapeamento.

spec.storage.stores.provider

Tipo: string

Condicional

Fornecedor da loja. O Atlas Kubernetes Operator suporta apenas S3 . Você deve especificar este campo para usar um armazenamento de dados.

spec.storage.stores.additionalStorageClasses

Tipo: array

Opcional

collection de classes de armazenamento Amazon Web Services S3. O Atlas Data Federation inclui os arquivos nessas classes de armazenamento nos resultados da query. O Atlas Kubernetes Operator aceita os seguintes valores:

  • STANDARD

  • INTELLIGENT_TIERING

  • STANDARD_IA

spec.storage.stores.bucket

Tipo: string

Opcional

Etiqueta legível por humanos que identifica o bucket do Amazon Web Services S3. Esse rótulo deve corresponder exatamente ao nome de um bucket do S3 que a instância do banco de dados federado pode acessar com as credenciais configuradas do Amazon Web Services IAM .

spec.storage.stores.delimiter

Tipo: string

Opcional

O delimitador que separa os segmentos spec.storage.databases.collections.dataSources.path no armazenamento de dados. O Atlas Kubernetes Operator usa o delimitador para percorrer com eficiência os buckets S3 com uma estrutura de diretório hierárquica. Você pode especificar qualquer caractere suportado pelas chaves de objeto S3 como delimitador. Por exemplo, você pode especificar um sublinhado (_) ou um sinal de mais (+) ou vários caracteres, como sublinhados duplos (__) como delimitador. Se omitido, o padrão é /.

spec.storage.stores.includeTags

Tipo: booleano

Opcional

Sinalizador que indica se devem ser usadas tags S3 nos arquivos no caminho fornecido como atributos de partição adicionais. Se definido como verdadeiro, o Atlas Kubernetes Operator adiciona as marcações S3 como atributos de partição adicionais e adiciona novos elementos BSON de nível superior associando cada marcação a cada documento. Se omitido, o padrão é false .

spec.storage.stores.prefix

Tipo: string

Opcional

Prefixo que o Atlas Kubernetes Operator aplica ao procurar arquivos no bucket S3 . O armazenamento de dados acrescenta o valor de prefixo ao spec.storage.databases.collections.dataSources.path para criar o caminho completo para a ingestão dos arquivos. Se omitido, o Atlas Kubernetes Operator pesquisa todos os arquivos a partir da raiz do bucket S3 .

spec.storage.stores.public

Tipo: booleano

Opcional

Sinalizador que indica se o bucket é público. Se configurado para true, o Atlas Kubernetes Operator não utiliza o papel configurado do Amazon Web Services IAM para acessar o bucket S3. Se definido como false, a função do Amazon Web Services IAM configurada deve incluir permissões para acessar o bucket do S3.

spec.storage.stores.region

Tipo: string

Opcional

Região AWS que indica o local físico do bucket S3.

spec.privateEndpoints

Tipo: array

Opcional

Lista que contém as configurações de endpoint privado para a instância do banco de dados federado.

spec.privateEndpoints.endpointId

Tipo: string

Obrigatório

String única alfanumérica de 22 caracteres começando com vpce- que identifica o endpoint privado na Amazon Web Services

spec.privateEndpoints.provider

Tipo: string

Opcional

Etiqueta legível por humanos que identifica o provedor de serviços de cloud. O Atlas Data Federation suporta apenas AWS.

spec.privateEndpoints.type

Tipo: string

Opcional

Etiqueta legível para humanos que identifica o tipo de recurso associado a este endpoint privado. O Atlas Data Federation suporta apenas DATA_LAKE.

spec.projectRef.name

Tipo: string

Obrigatório

Nome do projeto ao qual pertence a instância do banco de dados federado. Você deve especificar um Recurso PersonalizadoAtlasProject existente.

spec.projectRef.namespace

Tipo: string

Obrigatório

Namespace no qual o AtlasProject Recurso Personalizado especificado em spec.projectRef.name existe.

Voltar

AtlasTeam

Nesta página