MongoDB Atlas は、Atlas クラスターの配置、スケーリング、およびメンテナンスをプログラムで管理するためのツールを提供します。
Atlas は、命令型プログラミングまたは宣言型プログラミングのいずれかを使用して Infrastructure as Code(IaC)を実装する柔軟性を提供します。たとえば、開発者は Atlas Go SDK クライアントから関数を呼び出す命令型スクリプトを作成したり、Atlas Kubernetes Operator、Terraform、AWS CloudFormation、または AWS CDK などの宣言型IaC ツールを使用して Atlas リソースを管理したりできます。
Atlas の IaC ツールは、エンタープライズ規模で特に役立ちます。エンタープライズのお客様には、次のメリットがある IaC ツールの使用をお勧めいたします。
一貫性 : IaC ツールは環境間での再現性を可能にするため、配置で一貫した結果が生成されます。
スケーラビリティ : Infrastructure as Code ツールは、リアルタイムの使用に応じてクラスターの階層またはストレージキャパシティーを自動的に調整するために、オートスケーリングを有効にします。
人的エラーの削減: IaCツールは運用上のオーバーヘッドを自動化し、一般的な人的エラーを引き起こす手動の介入を削減します。
開発の迅速化 : IaC ツールでは操作が効率化され、開発の効率が向上します。
変更管理の改善:IaC ツールはインフラストラクチャのレビューと標準化をサポートし、変更管理の実践とコンプライアンスを向上させます。
Atlas のオートメーションに関する機能
Atlasのデータベースユーザーやロール、Atlasクラスター、プロジェクト、組織などのビルディングブロックの設定、プロビジョニング、管理を自動化することができます。また、オートスケーリングの計算とストレージ、マルチクラウドクラスターの更新、クラスターパフォーマンスと正常性のモニタリング、バックアップと復元の自動化、バックアップポリシーの定義など、クラスターリソースのさまざまな構成と管理タスクを自動化することもできます。
ツールの選択を希望のワークフローに合わせて選択することで、 MongoDB Atlasを既存のプロセスにシームレスに統合できます。次のMongoDB Atlasツールを使用すると、再現性のある、正確、およびスケーラブルなプロセスを使用して、増やすAtlas を簡単に配置および管理できます。
Atlas Administration API
Atlas Administration API は、cURL や Postman などの優先クライアントを利用して、Atlas リソースに対応する API エンドポイントと直接やりとりできる REST ful インターフェースを提供します。また、お気に入りのプログラミング言語や bash スクリプトで直接呼び出すことも可能です。
詳細については、Atlas 管理APIの使い始める を参照してください。
Atlas CLI
統合されたコマンドライン ツールを使用して、Atlas のリソースに関連するタスクを手動またはプログラムで作成、管理、自動化できます。
詳細については、以下のリソースを参照してください。
Atlas アーキテクチャ センターの Atlas CLI の例として、組織、プロジェクト、クラスター の例などを使用して開始することもできます。
HashiCorp Terraform MongoDB Atlas Provider
選択したワークフローで、クラウドプロバイダー(AWS、Azure、GCP)全体に Atlas のリソースをプロビジョニングします。これにより、公式プラグインを使用して、Atlas を継続的デリバリー ワークフローに統合できます。
あるいは、CDKTF を使用して、JavaScript、TypeScript、Python、Java、C#、Goなどの好みの言語で Atlas をデプロイすることもできます。
詳細については、Terraform とMongoDB Atlas Provider および MongoDB Atlas Provider Terraform プロバイダーのドキュメント を参照してください。Atlas アーキテクチャ センターの組織、プロジェクト、クラスターの例などの Terraform の例を使用して開始することもできます。
Tip
すべてのピリオドにわたって推奨事項を強制する Terraform の例については、 Githubの次のいずれかの例を参照してください。
Atlas Go SDK クライアント
Atlas Go SDKクライアントは、事前構築された関数と完全なAPIエンドポイントカバレッジを提供することで、Atlas Administration APIの操作を簡素化します。SDKは、プラットフォーム固有およびGoLang言語固有のツール、ライブラリ、ドキュメントを提供し、アプリケーションを迅速かつ容易にビルドします。
詳しくは、「Atlas Go SDK」を参照してください。
Atlas Go Infrastructure SDK Githubリポジトリの、1 つのプロジェクトでの Atlas Administration Go SDK の例をすべて参照してください。
CloudFormation Resources
Atlas を管理するためのリソースには、以下が含まれます。
JSONと YAML のテンプレートを使用すると、Amazon Web Services CloudFormation パブリック レジストリで複数の異なるタイプの Atlas リソースを活用できます。
Amazon Web Services Cloud 開発 Kit(CDK)は、 JavaScript、 Typescript、 Python、 Java、 C#、 Goなどの一般的なプログラミング言語を使用してインフラストラクチャを定義します。
Atlas Kubernetes 演算子
既存の Kubernetes ツールを使用して、Atlas のリソースを配置および管理できます。Operator は、Operator が Atlas の構成に使用するKubernetesに適用されるカスタム リソースを介して、Atlas の管理を可能にします。
詳細については、「 クイック スタート 」を参照してください。
Atlas のオートメーションに関する推奨事項
以下の推奨事項は、すべての配置パラダイムに適用されます。
既存のツールが現在使用している導入ワークフローにすでに統合されている場合は、そのツールをオートメーションに使用することを推奨します。たとえば、開発者と運用チームがすでに Kubernetes に配置している場合、同じツールとパイプラインを通じて Atlas の構成を適用し、Atlas Kubernetes Operator を使用して Atlas の更新を自動化します。
開発ワークフローに統合された既存のツールがまだない場合は、インフラストラクチャのプロビジョニングと状態管理のためのより堅牢なオプションが提供されるため、 IaC ツールを使用することをお勧めします。
複数のツールを組み合わせて使用することもできます。例、 は、プロビジョニングと状態マネジメントに IaC ツールを使用し、 Atlas Administration API、 Atlas Go SDK 、 Atlas CLI を活用して、本質的に一時的な迅速な管理タスクを実行します。Atlas CLI は、レスポンスタイムが向上し、コストが削減されるため、ローカル開発だけでなく、アプリケーション開発の CI/CDパイプラインの一部としてテストのスイートに統合するのにも最適です。