既存の Kubernetes 配置があり、Atlas Kubernetes Operator の使用を開始する場合は、Atlas CLI のatlas kubernetes config generateまたはatlas kubernetes config applyコマンドを使用して、Atlas のプロジェクト、配置、データベースユーザーをエクスポートできます。
両方のコマンドでは、Atlas Kubernetes Operator が実行されている Kubernetes または OpenShift クラスターで使用するために、Atlas Kubernetes Operator と互換性のある形式でコンフィグレーションをエクスポートできます。`atlas kubernetes config generate` コマンドは、ターミナルの `stdout` に `YAML` 形式の構成を出力することでこれを実現します。一方、`atlas kubernetes config apply` コマンドは構成をメモリに保存し、ターゲット Kubernetes クラスターに直接送信します。
Overview
どちらのコマンドも、次の Atlas Kubernetes Operator リソースを含む.yaml形式の構成を生成します。
パラメーター
コマンドは、次のパラメーターを取ります。
Parameter | 説明 | 必要性 |
|---|---|---|
| プロジェクトを識別する一意な 24 桁の 16 進数のstring 。 省略した場合、デフォルトは | 必須。 |
| エクスポートするクラスターを識別する、人間が判読可能なラベルのコンマ区切りリスト。 これらは、 | 任意。 |
| Atlas 認証情報シークレットの 構成ファイル のエントリを入力するフラグ。 省略した場合、コマンドはシークレットを作成しますが、データはそれに入力されません。 シークレットはプレーン テキストとしてレンダリングされます。 | 任意。 |
| リソースのエクスポート先の Kubernetes 名前空間。 コマンドは、エクスポートされた各 Atlas エンティティの | 必須。 |
| ファイルをエクスポートする Atlas Kubernetes Operator のバージョン。 省略した場合、コマンドは Atlas Kubernetes Operator v1.5.1 と互換性のあるファイルをエクスポートします。 | 任意。 |
コマンドは、次のパラメーターを取ります。
Parameter | 説明 | 必要性 |
|---|---|---|
| プロジェクトを識別する一意な 24 桁の 16 進数のstring 。 省略した場合、デフォルトは | 必須。 |
| プロジェクトを登録するAtlas組織を識別する一意の24桁の16進数文字列。省略した場合、 | 任意。 |
| エクスポートするクラスターを識別する、人間が判読可能なラベルのコンマ区切りリスト。 これらは、 | 任意。 |
| リソースのエクスポート先の Kubernetes 名前空間。 コマンドは、エクスポートされた各 Atlas エンティティの | 必須。 |
| ファイルをエクスポートする Atlas Kubernetes Operator のバージョン。 省略した場合、コマンドは Atlas Kubernetes Operator v1.5.1 と互換性のあるファイルをエクスポートします。 | 任意。 |
|
| 必須 |
|
| 必須 |
互換性
atlascli は、Atlas Kubernetes Operator にバージョン依存する形式で Atlas から構成をエクスポートします。 次の表では、 atlascliのどのバージョンが Atlas Kubernetes Operator のどのバージョンをサポートしているかを示しています。
atlascli バージョン | Atlas Kubernetes Operator バージョン |
|---|---|
1.4.0 | 1.5.0 |
例
次の例では、 sampleProjectという名前のプロジェクト、 sample1 、 sample2 、 sample3という名前のクラスター、 63500d1139dd494b92fe4376のプロジェクト ID、およびsampleNamespaceのターゲット名前空間があることを前提としています。
すべての Atlas 配置と認証情報を含むプロジェクト全体をエクスポートするには、次のコマンドを実行します。
atlas kubernetes config generate --projectId=63500d1139dd494b92fe4376 \ --includeSecrets --targetNamespace=sampleNamespace
シークレット認証情報なしでプロジェクトから 2 つの特定の Atlas 配置をエクスポートするには、次のコマンドを実行します。
atlas kubernetes config generate --projectId=63500d1139dd494b92fe4376 \ --clusterName=sample1,sample2 --targetNamespace=sampleNamespace
上記のコマンド例では、出力を kubectl apply コマンドにパイプすることで、生成された構成をKubernetesまたはOpenShiftクラスターに適用できます。 次のコマンドの例は、これを示しています。
atlas kubernetes config generate --projectId=63500d1139dd494b92fe4376 \ --clusterName=sample1,sample2 --targetNamespace=sampleNamespace \ | kubectl apply -f -
または、 stdoutを.yamlファイルにリダイレクトすることで、生成された構成を保存できます。 次のコマンドは、シークレット認証情報なしでプロジェクトから単一の Atlas 配置をインポートし、出力をmyAtlasProject.yamlに保存します。
atlas kubernetes config generate --projectId=63500d1139dd494b92fe4376 \ --clusterName=sample3 --targetNamespace=sampleNamespace \ myAtlasProject.yaml
構成の適用
このシナリオで生成された構成をKubernetesまたはOpenShiftクラスターに適用するには、.yaml ファイルを kubectl apply コマンドの引数として渡します。
kubectl apply -f myAtlasProject.yaml
プロジェクト全体をエクスポートするには、次のコマンドを実行します。
atlas kubernetes config apply --projectId=63500d1139dd494b92fe4376 \ --targetNamespace=sampleNamespace
プロジェクトから 2 つの特定の Atlas 配置をエクスポートするには、次のコマンドを実行します。
atlas kubernetes config apply --projectId=63500d1139dd494b92fe4376 \ --clusterName=sample1,sample2 --targetNamespace=sampleNamespace In contrast to ``atlas kubernetes config generate``, this command directly applies the generated configuration without any further manual operation on your part.