VMware Tools を使用して Salt ミニオンを有効にする
Salt Project は、イベント駆動型の IT 自動化、リモート タスクの実行、および構成管理を行うための Python ベースのオープンソース ソフトウェアです。
- 64 ビット OS のみをサポートします。
- Windows では、Windows 8 以降のバージョンがサポートされます。Windows 2008R2 はサポートされていません。
- VMware Tools は Salt ミニオン機能とともにインストールする必要があります。デフォルトで、この機能は有効になっています。
- Linux のインストール済みパッケージには依存関係があります(curl や wget など)。
Salt の詳細については、Salt ユーザー ガイドを参照してください。
Salt では、salt-minion をゲストに展開する必要があります。Salt 固有のゲスト変数はホスト側で仮想マシンごとに設定され、その後ゲスト内の VMware Tools によって読み取られます。次に VMware Tools は salt バンドルをダウンロードし、ゲスト内で salt-minion インスタンスを起動します。
- ゲスト変数を使用した仮想マシンごとのホスト側の構成ホスト管理者は、VIM API または vSphere/VC UI を使用して、ホスト側で特定の仮想マシンのすべてのゲスト変数設定を管理します。
- Windows:VMware Tools Salt ミニオン機能がデフォルトでインストールされ、カスタム インストールで変更できます。VMware Tools で特定の仮想マシンに salt-minion インスタンスを作成し、salt-minion を salt-master に接続するには、ホスト管理者がその仮想マシンのゲスト変数を構成して設定する必要があります。vSphere ホストのユーザー インターフェイスで、特定の仮想マシンを選択し、右クリックして設定を編集します。[仮想マシン オプション] タブで、の順に選択し、次のように設定します。
- guestinfo./vmware.components.salt_minion.desiredstateを present に設定する
- guestinfo./vmware.components.salt_minion.argsを<VMware Tools salt-minion セットアップ スクリプトへのカスタム引数>に設定する
たとえば、guestinfo./vmware.components.salt_minion.desiredstate→ presentguestinfo./vmware.components.salt_minion.args→ master=1.2.3.4 - Linux:ホスト管理者は open-vm-tools と open-vm-tools-salt-minion をインストールし、特定の仮想マシンのゲスト変数を次のように設定する必要があります。
- guestinfo./vmware.components.salt_minion.desiredstateを present に設定する
- guestinfo./vmware.components.salt_minion.argsを<VMware Tools salt-minion セットアップ スクリプトへのカスタム引数>に設定する
たとえば、guestinfo./vmware.components.salt_minion.desiredstate→ presentguestinfo./vmware.components.salt_minion.args→ master=1.2.3.4 id=12345
- salt-minion の削除Windows または Linux でホスト管理者がゲスト変数guestinfo./vmware.components.salt_minion.desiredstateを absent に設定した場合、VMware Tools はゲスト仮想マシンの salt-minion インスタンスを削除します。たとえば、guestinfo./vmware.components.salt_minion.desiredstate→ absent
- ゲスト内の salt-minion の最新ステータスの確認vSphere ユーザー インターフェイスでゲスト内の salt-minion の最新のステータスを確認するには、次のゲスト変数を使用します。guestinfo.vmware.components.salt_minion.laststatus
- tools.conf を使用したゲスト側の構成tools.confファイルには、VMware Tools の構成が.ini形式で含まれています。このツールは、salt_minionセクションを探し、そのセクションで定義された構成を使用します。このファイルは次の場所に保存されます。Windows -C:\ProgramData\VMware\VMware Tools\tools.confLinux -/etc/vmware-tools/tools.conf次に、tools.confセクションで定義されているsalt_minionセクションの例を示します。[salt_minion] master=1.2.3.4 conf_file=/etc/salt/minion id=dev_miniontools.confで使用できるのは、ミニオン構成オプションだけです。目的のスクリプト アクションをtools.confから取得できません。
- ゲスト変数での状態変化を監視する間隔の構成:VMware Tools は、ゲスト変数を定期的にポーリングして、状態変化を確認します。デフォルトのポーリング間隔は 180 秒で、tools.conf設定で構成できます。[componentmgr]#poll-interval=180(デフォルト値:180 秒)
- コンポーネントの有効化と無効化 (salt_minion):
- ゲスト管理者は、tools.conf設定を構成して salt_minion を有効にできます。[componentmgr]included=salt_minion
- ゲスト管理者は、tools.conf設定を構成して、すべてのコンポーネントを有効にできます。[componentmgr]included=all(デフォルト構成)
- ゲスト管理者は、tools.conf設定を構成して、すべてのコンポーネントを無効にできます。[componentmgr]included=none
- インストール スクリプトを使用した salt-minion のインストール
- Linux 環境Linux システムでは、インストール スクリプトsvtminion.shは次の前提条件を備えた bash スクリプトです。
- - systemctl
- - curl
- - sha512sum
- - vmtoolsd
- - grep
- - awk
- - sed
- - cut
- - wget
svtminion.sh --helpは、コマンドライン オプションを表示します。使用方法:./svtminion.sh [-c|--clear] [-d|--depend] [-h|--help] [-i|--install] [-j|--source] [-l|--loglevel] [-m|--minionversion] [-r|--remove] [-s|--status] [-v|--version]例:URL の場所ここで、./svtminion.sh [-j|--source]は、Salt ミニオンのインストール元を指定します。デフォルトはrepo.saltproject.ioの場所です。http://my_web_server.com/my_salt_onedirhttps://my_web_server.com/my_salt_onedirfile:////my_path/my_salt_onedir//my_path/my_salt_onedirSalt ミニオンの特定のバージョンが指定されている場合 ([-m | --minionversion]) は、ソースに追加されます。デフォルトは最新バージョンです。次に、tools.confで定義されているsalt_minionのインストール例を示します。[salt_minion] master=1.2.3.4 conf_file=/etc/salt/minion id=dev_minion source=https://my_web_server.com/my_salt_onedirSalt の標準リポジトリの場所のプライベート レプリカからインストールする場合は、 を使用します。 - Windows 環境Windows システムでは、インストール スクリプトsvtminion.ps1は PowerShell スクリプトです。Windows の唯一の前提条件は、ゲスト変数データのクエリに使用される「vmtoolsd.exe」バイナリです。このスクリプトのヘルプを表示するには、コマンドsvtminion.ps1 -hまたはGet-Help svtminion.ps1を実行します。Windows ゲストで Salt ミニオンを管理するための VMware Tools スクリプトは次のとおりです。.\svtminion.ps1 [-Install] [-MinionVersion <String>] [-Source <String>] [[-ConfigOptions] <String[]>] [-LogLevel <String>] [-Help] [-Version] [<CommonParameters>]-Source <String>は、インストーラを含むリポジトリの URL またはパスです。これには、デフォルトの場所 https://repo.saltproject.io/salt/vmware-tools-onedir/ と同様のディレクトリ構造が含まれます。これは、http、https、ftp、unc、local などの最も一般的なプロトコルを処理できます。たとえば、PS>svtminion.ps1 -Install PS>svtminion.ps1 -Install -MinionVersion 3004-1 master=192.168.10.10 id=dev_box PS>svtminion.ps1 -Install -Source https://my.domain.com/vmtools/salt例を表示するには、get-help .\svtminion.ps1 -examplesと入力します。詳細については、get-help .\svtminion.ps1 -detailedと入力します。技術情報については、get-help .\svtminion.ps1 -fullと入力します。
- ログ情報の取得ゲスト管理者は、salt-minion に関連するログ情報を次のパスから取得できます。Windowsログ ファイル場所salt-minion のステータスを確認するためのログ ファイルC:\Windows\Temp\vmware-svtminion-status-{Timestamp}.logゲスト内に salt-minion インスタンスをインストールするためのログ ファイルC:\Windows\Temp\vmware-svtminion-install-{TimeStamp}.logゲスト内の salt-minion インスタンスを削除するためのログ ファイル:C:\Windows\Temp\vmware-svtminion-remove-{TimeStamp}.logゲスト内の salt-minion インスタンスのインストールまたは削除後にランタイム情報を確認するためのログ ファイルC:\salt\var\log\minion log filesLinuxログ ファイル場所salt-minion のステータスを確認するためのログ ファイル/var/log/vmware-svtminion.sh-status-{Timestamp}.logゲスト内に salt-minion インスタンスをインストールするためのログ ファイル/var/log/vmware-svtminion.sh-install-{TimeStamp}.logゲスト内の salt-minion インスタンスを削除するためのログ ファイル:/var/log/vmware-svtminion.sh-remove-{TimeStamp}.logゲスト内の salt-minion インスタンスのインストールまたは削除後にランタイム情報を確認するためのログ ファイル/var/log/salt/minion