インフラストラクチャに Salt をインストールし、その一環として Salt マスター サービスと Salt ミニオン サービスをインストールする必要があります。

SaltStack Config Cloud で管理するすべてのインフラストラクチャに、Salt をインストールすることを推奨します。Salt をインストールすると、Salt の今後のバージョンに更新するときのプロセスが簡素化および効率化されます。SaltStack Config Cloud を設定する前に、Salt をインフラストラクチャにインストールし、一定期間監視して、安定して想定どおりに実行されるか確認することを検討してください。

次のガイドを参照して、Salt をインフラストラクチャに実装する際のベスト プラクティスに従っている環境であることを確認してください。

Salt マスターへの Salt のインストール

SaltStack Config Cloud を設定する前に、Salt マスター サービスとミニオン サービスを Salt マスター ホストにインストールする必要があります。

この手順では、最新の Salt リリースを Redhat/Centos 7 PY3 にインストールします。マシンで別のオペレーティング システム、または異なるバージョンの Python が実行されている場合、スクリプトは動作しません。Salt を別のオペレーティング システムまたは異なるバージョンの Python にインストールする方法については、 Salt インストール ガイドを参照してください。
注: CentOS 7 では、デフォルトで Salt マスターへの接続がブロックされます。接続を許可するファイアウォール ルールを作成する必要があります。
  • firewall-cmd --permanent --zone=public --add-port=4505-4506/tcp
  • firewall-cmd --reload
詳細については、 Salt 用にファイアウォールを開くを参照してください。
  1. Salt プロジェクト リポジトリとキーをインストールします。
    sudo yum install https://repo.saltstack.com/py3/redhat/salt-py3-repo-latest.el7.noarch.rpm
  2. キャッシュをクリアします。
    sudo yum clean expire-cache
  3. Salt マスター ノードに Salt マスター サービスとミニオン サービスをインストールします。
    sudo yum install salt-master
    sudo yum install salt-minion
  4. /etc/salt/minion.d ディレクトリ内に master.conf ファイルを作成します。このファイルで、自身を指すように Salt マスターの IP アドレスを設定します。
    master: localhost
  5. Salt マスター サービスとミニオン サービスを開始します。
    sudo systemctl start salt-master
    sudo systemctl enable salt-minion
    sudo systemctl start salt-minion

    必要に応じて、service salt-minion restart を使用してミニオンを再起動します。

Salt ミニオンへの Salt のインストール

前のセクションの説明に従って Salt を Salt マスターにインストールした後、次の手順で、SaltStack Config Cloud で管理するすべてのノードにミニオン サービスをインストールします。

次に、Salt マスターと通信するようにミニオンを構成する必要があります。ミニオン サービスのインストールの詳細については、Salt ドキュメントのMinion Configurationを参照してください。

ミニオン サービスをインストールするには、次の手順に従います。

  1. 次のコマンドを実行して ミニオン サービスのみをインストールします。
    sudo yum install salt-minion
  2. すべてのプロンプトに対して y と応答して、すべての変更を受け入れます。
  3. /etc/salt/minion.d ディレクトリ内に master.conf ファイルを作成して、各ミニオンが Salt マスターと通信するように構成します。このファイルで、Salt マスターの IP アドレスを指定します。例:
    master: 192.0.2.1
  4. ミニオン サービスを開始します。
    sudo systemctl enable salt-minion
    sudo systemctl start salt-minion

    必要に応じて、service salt-minion restart を使用してミニオンを再起動します。

  5. 残りのすべてのノードについて、前の手順を繰り返します。

マスターでのミニオン キーの受け入れ

これで、Salt マスター サービスとミニオン サービスがインストールされ、Salt マスターの IP アドレスがミニオンに設定されました。次は、Salt マスターがミニオンにコマンドを送信できるように、Salt マスターでミニオン キーを受け入れます。

最初に、次の手順に従います。

  • Salt マスター サービスが有効で、開始されていることを確認します。
  • ミニオンがすべてのノードで有効で、起動していることを確認します。

キーを受け入れるには、次の手順に従います。

  1. Salt マスターのターミナルで、Salt マスター上のすべてのキーを一覧表示します。
    salt-key -L
  2. すべてのミニオン ID が Unacceptedkeys に一覧表示されていることを確認します。

    Acceptedkeys にミニオン ID が表示されていれば、現時点でこれ以上のアクションは不要です。

  3. <your-minion-id> を実際のネットワークの ID に置き換えて次のコマンドを使用し、各ミニオン ID を受け入れます。
    salt-key -a <your-minion-ID>

    salt-key-A を実行すると、すべてのキーが受け入れられます。

  4. すべてのプロンプトに y と応答します。
  5. salt-key-L コマンドをもう 1 回実行して、すべてのミニオンが Acceptedkeys に表示されていることを確認します。