Automation Config には、RaaS サーバ、マスター プラグイン、2 つの中央データベースなど、4 つ以上のアーキテクチャ コンポーネントが含まれています。

次の図に、基本的な Automation Config アーキテクチャの主要なインストール関連コンポーネントを示します。

注: 問題のある用語を取り除くという VMware の取り組みの一環として、 Automation Config とその関連製品およびドキュメントで使用されている Salt マスターという用語は、より適切な用語に置き換えられます。この用語の更新が完全に完了するのは、いくつかのリリース サイクル後になる可能性があります。

Salt マスターとマスター プラグイン

Automation Config は、オープンソースの構成管理および自動化システムである Salt を利用しています。

Salt マスターは、Automation Config とネットワーク上の他のノード(ミニオン)とを結び付ける中心的な役割を果たします。Automation Config からコマンド(ジョブなど)を発行すると、そのコマンドは Salt マスターに渡され、ターゲットのミニオンに配布されます。

Automation Config は、システムで必要に応じて 1 つまたは複数の Salt マスターに接続できます。Automation Config が Salt マスターと通信するには、Salt マスターにマスター プラグインをインストールし、そのキーを Automation Config で受け入れる必要があります。マスター プラグインにより、Salt マスターは、Automation Config によって開始されたジョブまたはプロセスにアクセスできます。Salt マスターは、PostgreSQL データベースに格納されている外部ファイルとピラー データにアクセスできます。

プラグインは、Salt によって提供される既存の拡張ポイントと統合されます。たとえば、ジョブの戻り値は Salt のマスター側にある Salt 外部ジョブ キャッシュを使用して収集され、RaaS ファイル サーバは Salt ファイル サーバ プラグインを使用します。
注: 複数の Salt マスターを Automation Config に接続できます。 Automation Config に接続する各 Salt マスターには、マスター プラグインがインストールされている必要があります。

RaaS

RaaS (Returner as a Service) は、Automation Config の中心的なコンポーネントです。実際、Automation Config についての言及は、多くの場合 RaaS を指しています。

RaaS は、Automation Config ユーザー インターフェイスから管理コマンドを受け取るための RPC エンドポイントと、接続された Salt マスターとのインターフェイスとなる RPC 制御エンドポイントを提供します。すべての通信は、WebSockets または HTTP 上の RPC API 呼び出しを使用して送信されます。

Automation Config のユーザー インターフェイス

Automation Config のユーザー インターフェイスは、RaaS にグラフィカル ユーザー インターフェイス フロントエンドを提供する Web アプリケーションです。Automation Config は API を中心に考えられていますが、ユーザー インターフェイスで API (RaaS) と直接やり取りして、環境内のすべてのシステムを簡単に管理することもできます。さまざまなワークスペースにより、ユーザーはミニオン、ユーザー、ロール、ジョブなどを管理することができます。

データベース

[PostgreSQL データベース]

RaaS は、ミニオン データ、ジョブの戻り値、イベント データ、ファイルおよびピラー データ、ローカル ユーザー アカウントや、ユーザー インターフェイスのその他の設定を格納するために PostgreSQL データベースを使用します。

[Redis データベース]

RaaS は、キャッシュされたデータなど、特定のタイプのデータを一時ストレージに格納するために Redis データベースを使用します。また、キュー内の作業をバックグラウンド ワーカーに配布するために一時データ ストレージを使用します。

Salt の仕組みについては、Salt システム アーキテクチャを参照してください。