Saltstack入門
1701 ワード
Saltstackの概要
SaltstackはPythonに基づいてC/Sアーキテクチャ構成管理ツールを開発し、その下層にZeroMQメッセージキューpub/sub方式通信を適用し、SSL証明書発行方式で認証管理を行う.世界最速のメッセージキューZeroMQにより、Saltstackは何千台もの機器で迅速に各種の操作を行うことができ、RSA Key方式でアイデンティティを確認し、伝送はAES暗号化を採用し、安全性が保障されていると言われています.ここでSaltstackは構成管理ツールであり、作業中にいくつかの構成管理作業を行う可能性がありますが、Saltstack機能はこれだけではありません.Saltstackの公式の紹介では、Saltstackは構成管理ツールだけでなく、クラウドコンピューティングとデータセンターアーキテクチャの編成を行う利器でもあります.現在Salt-cloudプロジェクトもSaltstackメインプロジェクトに統合されており、SaltstackはDocker関連モジュールをサポートしています.各クラウドプラットフォームを友好的にサポートした後、SaltstackのMineリアルタイム発見機能に協力すれば、さまざまなクラウドプラットフォーム業務を自動的に拡張することができます.
Saltstackサービスアーキテクチャ↓
SaltstackはC/Sアーキテクチャに基づくサービスモデルであるため、Saltstackを使用するには既存の環境でC/Sアーキテクチャを導入し、維持する必要があると簡単に理解できます.Saltstackアーキテクチャではサーバ側がMasterと呼ばれ、クライアントはMinionと呼ばれています.従来のC/Sアーキテクチャでは、クライアントはサーバ側に要求を送信し、サーバ側は要求を受信して処理が完了した後、クライアントに戻ります.Saltstackアーキテクチャには、従来のC/Sアーキテクチャサービスモードのみならず、メッセージキュー内のパブリケーションおよびサブスクリプション(pub/sub)サービスモードもあります.これにより、Saltstackアプリケーションシーンがより豊富になります.現在、実際の環境ではSaltstackのC/Sアーキテクチャを使用して構成管理されています.
MasterとMinion側ではプロセスを守るモードで実行され、プロファイルに定義されているret_を監視しています.port(Minionリクエストを受け入れる)とpublish_port(メッセージを発行する)のポートです.Minionが実行されると自動的にプロファイルに定義されたMasterアドレスret_portポートに接続されて接続認証されます.デフォルトのクライアントリクエストidはsocket.getfqdn()が取得した値で、Minionが起動する前にMinionのid値を変更することもできます.通信プロセスの開始全体については、debugを使用して詳細レコードを表示できます.
C/Sアーキテクチャは以下の通りである.
Saltstackは従来のC/Sアーキテクチャのほかに、Masterlessアーキテクチャもあります.Masterlessアーキテクチャを採用すれば、Saltstack Masterマシンを1台ずつインストールする必要はありません.各マシンにMinionをインストールするだけで、本機を採用して本機の構成管理作業メカニズムサービスモデルだけを担当します.
ソース:Saltstackテクノロジーの入門と実践
SaltstackはPythonに基づいてC/Sアーキテクチャ構成管理ツールを開発し、その下層にZeroMQメッセージキューpub/sub方式通信を適用し、SSL証明書発行方式で認証管理を行う.世界最速のメッセージキューZeroMQにより、Saltstackは何千台もの機器で迅速に各種の操作を行うことができ、RSA Key方式でアイデンティティを確認し、伝送はAES暗号化を採用し、安全性が保障されていると言われています.ここでSaltstackは構成管理ツールであり、作業中にいくつかの構成管理作業を行う可能性がありますが、Saltstack機能はこれだけではありません.Saltstackの公式の紹介では、Saltstackは構成管理ツールだけでなく、クラウドコンピューティングとデータセンターアーキテクチャの編成を行う利器でもあります.現在Salt-cloudプロジェクトもSaltstackメインプロジェクトに統合されており、SaltstackはDocker関連モジュールをサポートしています.各クラウドプラットフォームを友好的にサポートした後、SaltstackのMineリアルタイム発見機能に協力すれば、さまざまなクラウドプラットフォーム業務を自動的に拡張することができます.
Saltstackサービスアーキテクチャ↓
SaltstackはC/Sアーキテクチャに基づくサービスモデルであるため、Saltstackを使用するには既存の環境でC/Sアーキテクチャを導入し、維持する必要があると簡単に理解できます.Saltstackアーキテクチャではサーバ側がMasterと呼ばれ、クライアントはMinionと呼ばれています.従来のC/Sアーキテクチャでは、クライアントはサーバ側に要求を送信し、サーバ側は要求を受信して処理が完了した後、クライアントに戻ります.Saltstackアーキテクチャには、従来のC/Sアーキテクチャサービスモードのみならず、メッセージキュー内のパブリケーションおよびサブスクリプション(pub/sub)サービスモードもあります.これにより、Saltstackアプリケーションシーンがより豊富になります.現在、実際の環境ではSaltstackのC/Sアーキテクチャを使用して構成管理されています.
MasterとMinion側ではプロセスを守るモードで実行され、プロファイルに定義されているret_を監視しています.port(Minionリクエストを受け入れる)とpublish_port(メッセージを発行する)のポートです.Minionが実行されると自動的にプロファイルに定義されたMasterアドレスret_portポートに接続されて接続認証されます.デフォルトのクライアントリクエストidはsocket.getfqdn()が取得した値で、Minionが起動する前にMinionのid値を変更することもできます.通信プロセスの開始全体については、debugを使用して詳細レコードを表示できます.
C/Sアーキテクチャは以下の通りである.
Master :
Saltstack@Master:salt-master -l debug
Saltstack@Master:ss -a|egrep '4505|4506'
Minion :
Saltstack@Minion:salt-minion -l debug
Saltstackは従来のC/Sアーキテクチャのほかに、Masterlessアーキテクチャもあります.Masterlessアーキテクチャを採用すれば、Saltstack Masterマシンを1台ずつインストールする必要はありません.各マシンにMinionをインストールするだけで、本機を採用して本機の構成管理作業メカニズムサービスモデルだけを担当します.
ソース:Saltstackテクノロジーの入門と実践