AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

MongoDBCommunity リソース仕様

MongoDBCommunityカスタムリソースを使用すると、 KubernetesでMongoDB Community Editionレプリカセットを配置および管理できます。 Kubernetes Operator はこのリソースを使用して、 MongoDB Community 配置の実行に必要な StateftSets、services、およびその他のKubernetesリソースを作成します。

詳細については、 MongoDB Community 演算子のドキュメント を参照してください。

次の例は、 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

このセクションでは、すべてのMongoDBCommunityリソースに使用する必要がある設定について説明します。

apiVersion

: string

MongoDB Kubernetesリソーススキーマのバージョン。値を mongodbcommunity.mongodb.com/v1 に設定します。

kind

: string

作成する MongoDB Kubernetes リソースの種類。 これをMongoDBCommunityに設定します。

metadata.name

: string

人間が判読できる名前なので、この特定のMongoDBCommunityリソースを識別できます。

リソース名は 44 文字以下にする必要があります。

spec.version

: string

配置するMongoDB Community のバージン。例: "8.0.0"

spec.type

: string

作成する MongoDB 配置のタイプ。受け入れられる値は ReplicaSet です。

spec.members

タイプ: 整数

レプリカセットノードの数。これにより、mongod Kubernetes Operator がステートメントセットに作成する ポッドの数が決定されます。

MongoDBCommunityカスタム リソースは、次の設定を使用できます。

spec.security

: オブジェクト

MongoDBCommunityリソースのセキュリティ構成。TLS と認証設定が含まれています。

spec.security.tls

: オブジェクト

TLS settings for the MongoDB deployment.

spec.security.tls.enabled

タイプ: ブール値

MongoDB 配置の TLS を有効または無効にするためのフラグ。TLS 暗号化された接続を有効にするには true に設定します。

spec.security.tls.certificateKeySecretRef.name

: string

MongoDBデプロイの TLSサーバー証明書と秘密キーを含むKubernetesシークレットの名前。

spec.security.tls.caConfigMapRef.name

: string

Name of the Kubernetes ConfigMap that contains the Certificate Authority (CA) certificate used to verify TLS connections.

spec.security.authentication

: オブジェクト

MongoDB 配置の認証構成。

spec.security.authentication.modes

タイプ: 文字列の配列

MongoDB 配置で有効にする認証メカニズムの一覧。受け入れ可能な値は以下の通りです。

  • SCRAM
spec.security.authentication.ignoreUnknownUsers

タイプ: ブール値

true の場合、Kubernetes 演算子 は、MongoDB の配置に存在するが MongoDBCommunity リソース仕様で定義されていないユーザーのエラーを報告しません。

デフォルト: false

spec.agent

: オブジェクト

MongoDB Agent の設定。

spec.agent.logLevel

: string

MongoDB Agent ログの冗長レベル。受け入れ可能な値は以下の通りです。

  • DEBUG

  • INFO

  • WARN

  • ERROR

spec.statefulSet

: オブジェクト

リソース用にKubernetes Operator によって作成されたMongoDBCommunity Atlas App Services の仕様。これを使用して、デフォルトのコンテナリソースのリクエストと制限を上書きします。

spec.statefulSet.spec

: オブジェクト

Kubernetes Operator が生成されたデフォルトとマージするステートフルセット仕様。標準のKubernetes StateftSet 仕様 に従います。

spec.statefulSet.spec.template.spec.containers

タイプ: オブジェクトの配列

コンテナの上書きのリスト。次のコンテナのリソースリクエストと制限を上書きできます。

  • mongod — MongoDB データベース コンテナ。

  • mongodb-agent — 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

タイプ: オブジェクトの配列

この配置で作成する MongoDB データベースユーザーのリスト。各ユーザーオブジェクトは、データベースユーザーの認証情報とロールを定義します。

spec.users[*].name

: string

MongoDB データベースユーザーのユーザー名。

spec.users[*].db

: string

ユーザーの認証データベース。デフォルトは admin です。

spec.users[*].passwordSecretRef.name

: string

Name of the Kubernetes secret that contains the password for this database user.

spec.users[*].scramCredentialsSecretName

: string

Kubernetes Operator がこのユーザーに対して生成された SCRAM 認証情報を保存するシークレットの名前。

spec.users[*].roles

タイプ: オブジェクトの配列

このデータベースユーザーに割り当てるロールのリスト。

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

: string

割り当てるロールの名前。例:rootreadWritereadAnyDatabasesearchCoordinatorなど。

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

: string

ロールが適用されるデータベース。例: admin

You can deploy MongoDB Search and Vector Search alongside a MongoDBCommunity resource using the MongoDBSearch CRD. To enable search functionality, create a search-sync-source user with the searchCoordinator role:

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

注意

MongoDB 8.2 以降では、searchCoordinator は組み込みロールです。以前のバージョンの場合、Kubernetes 演算子は searchCoordinator カスタムロールを自動的に作成します。

詳細については、「MongoDB Search とベクトル検索の配置」を参照してください。