Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Especificação do recurso da MongoDBCommunity

O recurso personalizado MongoDBCommunity permite implantar e gerenciar conjuntos de réplicas do MongoDB Community Edition no Kubernetes. O operador do Kubernetes usa esse recurso para criar StatefulSets, serviços e outros recursos do Kubernetes necessários para executar implantações do MongoDB Community.

Para saber mais, consulte a documentação do MongoDB Community operador.

O exemplo a seguir mostra uma especificação de recurso para um recurso personalizado do MongoDBCommunity :

1apiVersion: mongodbcommunity.mongodb.com/v1
2kind: MongoDBCommunity
3metadata:
4 name: my-mongodb-community
5spec:
6 version: "8.0.0"
7 type: ReplicaSet
8 members: 3
9 security:
10 tls:
11 enabled: true
12 certificateKeySecretRef:
13 name: mongodb-tls-cert
14 caConfigMapRef:
15 name: mongodb-ca
16 authentication:
17 ignoreUnknownUsers: true
18 modes:
19 - SCRAM
20 agent:
21 logLevel: DEBUG
22 statefulSet:
23 spec:
24 template:
25 spec:
26 containers:
27 - name: mongod
28 resources:
29 limits:
30 cpu: "2"
31 memory: 2Gi
32 requests:
33 cpu: "1"
34 memory: 1Gi
35 - name: mongodb-agent
36 resources:
37 limits:
38 cpu: "1"
39 memory: 2Gi
40 requests:
41 cpu: "0.5"
42 memory: 1Gi
43 users:
44 - name: mdb-admin
45 db: admin
46 passwordSecretRef:
47 name: mdb-admin-user-password
48 scramCredentialsSecretName: mdb-admin-user
49 roles:
50 - name: root
51 db: admin

Esta seção descreve as configurações que você deve usar para todos os recursos do MongoDBCommunity .

apiVersion

Tipo: string

Versão do esquema de recursos do MongoDB Kubernetes. Defina o valor como mongodbcommunity.mongodb.com/v1.

kind

Tipo: string

Tipo de recurso MongoDB Kubernetes para criar. Defina isso como MongoDBCommunity.

metadata.name

Tipo: string

Nome legível por humanos para que você possa identificar esse recurso MongoDBCommunity específico.

Os nomes de recursos devem ter 44 caracteres ou menos.

spec.version

Tipo: string

Versão do MongoDB Community a ser implantada. Por exemplo, "8.0.0".

spec.type

Tipo: string

Tipo de implantação do MongoDB a ser criado. O valor aceito é ReplicaSet.

spec.members

Tipo: inteiro

Número de nós do conjunto de réplicas. Isso determina quantos pods mongod o operador Kubernetes cria no StatefulSet.

O recurso personalizado do MongoDBCommunity pode utilizar as seguintes configurações:

spec.security

Tipo: objeto

Configuração de segurança para o recurso MongoDBCommunity. Contém configurações de TLS e autenticação.

spec.security.tls

Tipo: objeto

Configurações de TLS para a implantação do MongoDB.

spec.security.tls.enabled

Tipo: booleano

Sinalizador para habilitar ou desabilitar o TLS para a implantação do MongoDB. Defina como true para habilitar conexões criptografadas por TLS.

spec.security.tls.certificateKeySecretRef.name

Tipo: string

Nome do secret do Kubernetes que contém o certificado de servidor TLS e a chave privada para a implantação do MongoDB.

spec.security.tls.caConfigMapRef.name

Tipo: string

Nome do Kubernetes ConfigMap que contém o certificado da Autoridade de Certificação (CA) usado para verificar conexões TLS.

spec.security.authentication

Tipo: objeto

Configuração de autenticação para a implantação do MongoDB.

spec.security.authentication.modes

Tipo: array de strings

Lista de mecanismos de autenticação a serem habilitados na implantação do MongoDB. Os valores aceitos incluem:

  • SCRAM
spec.security.authentication.ignoreUnknownUsers

Tipo: booleano

Se true, o operador do Kubernetes não relata um erro para usuários que existem na implantação do MongoDB, mas não estão definidos na especificação de recurso MongoDBCommunity.

Padrão: false.

spec.agent

Tipo: objeto

Configurações para o MongoDB Agent.

spec.agent.logLevel

Tipo: string

Nível de detalhamento do log do MongoDB Agent. Os valores aceitos incluem:

  • DEBUG

  • INFO

  • WARN

  • ERROR

spec.statefulSet

Tipo: objeto

Especificação do StatefulSet criado pelo Kubernetes operador para seu recurso MongoDBCommunity. Use isso para substituir as solicitações e limites de recursos do contêiner padrão.

spec.statefulSet.spec

Tipo: objeto

Especificação StatefulSet que o operador do Kubernetes mescla com padrões gerados. Segue a especificação padrão do Kubernetes StatefulSet.

spec.statefulSet.spec.template.spec.containers

Tipo : array de objetos

Lista de substituições de contêiner. Você pode substituir solicitações de recursos e limites para os seguintes contêineres:

  • mongod — O contêiner de banco de dados MongoDB.

  • mongodb-agent — O contêiner sidecar do MongoDB Agent.

containers:
- name: mongod
resources:
limits:
cpu: "2"
memory: 2Gi
requests:
cpu: "1"
memory: 1Gi
- name: mongodb-agent
resources:
limits:
cpu: "1"
memory: 2Gi
requests:
cpu: "0.5"
memory: 1Gi
spec.users

Tipo : array de objetos

Lista de usuários de banco de dados MongoDB a serem criados para esta implantação. Cada objeto de usuário define as credenciais e funções para um usuário de banco de dados.

spec.users[*].name

Tipo: string

Nome de usuário para o usuário de banco de dados do MongoDB.

spec.users[*].db

Tipo: string

Banco de dados de autenticação para o usuário. O padrão é admin.

spec.users[*].passwordSecretRef.name

Tipo: string

Nome do secret do Kubernetes que contém a senha para este usuário de banco de dados.

spec.users[*].scramCredentialsSecretName

Tipo: string

Nome do segredo onde o operador Kubernetes armazena as credenciais SCRAM geradas para este usuário.

spec.users[*].roles

Tipo : array de objetos

Lista de funções a serem atribuídas a este usuário de banco de dados.

spec.users[*].roles[*].name

Tipo: string

Nome da função a ser atribuída. Por exemplo, root, readWrite, readAnyDatabase ou searchCoordinator.

spec.users[*].roles[*].db

Tipo: string

Banco de dados no qual a função se aplica. Por exemplo, admin.

Você pode implantar o MongoDB Search e a pesquisa vetorial junto com um recurso MongoDBCommunity usando o MongoDBSearch CRD. Para habilitar a funcionalidade de pesquisa, crie um usuário search-sync-source com a função searchCoordinator:

users:
- name: search-sync-source
db: admin
passwordSecretRef:
name: my-resource-search-sync-source-password
scramCredentialsSecretName: my-resource-search-sync-source
roles:
- name: searchCoordinator
db: admin

Observação

Para MongoDB 8.2 e posterior, searchCoordinator é uma função integrada. Para versões anteriores, o operador Kubernetes cria a função personalizada searchCoordinator automaticamente.

Para saber mais, consulte Implante MongoDB Search e pesquisa vetorial.