VMware 動的インベントリープラグインの使用¶
VMware 動的インベントリープラグイン¶
ホストと対話する最善の方法は、VMware 動的インベントリープラグインを使用することです。これは、VMware API を動的にクエリーし、 管理できるノードを Ansible に指示します。
要件¶
VMware 動的インベントリープラグインを使用するには、 コントロールノード (Ansible を実行するホスト) に pyVmomi をインストールする必要があります。
仮想マシンのタグ関連の情報を動的インベントリーに含めるには、コントロールノードでタグ付けやコンテンツライブラリーなどの REST API 機能に対応する vSphere Automation SDK も必要になります。
手順 https://github.com/vmware/vsphere-automation-sdk-python#installing-required-python-packages の指示に従って、vSphere Automation SDK
をインストールできます。
$ pip install pyvmomi
この VMware 動的インベントリープラグインを使用するには、最初に ansible.cfg
ファイルに以下を指定して有効にする必要があります。
[inventory]
enable_plugins = vmware_vm_inventory
次に、作業ディレクトリーに .vmware.yml
または .vmware.yaml
で終わるファイルを作成します。
vmware_vm_inventory
スクリプトは、VMware モジュールと同じ認証情報を取得します。
以下は、有効なインベントリーファイルの例です。
plugin: vmware_vm_inventory
strict:False
hostname:10.65.223.31
username: [email protected]
password:Esxi@123$%
validate_certs:False
with_tags:True
ansible-inventory --list -i <filename>.vmware.yml
を実行すると、Ansible を使用して設定する準備ができている VMware インスタンスの一覧が作成されます。
vault が設定された設定ファイルの使用¶
インベントリー設定ファイルには、プレーンテキストでセキュリティーリスクがある vCenter パスワードが含まれるため、 インベントリー設定ファイル全体を暗号化します。
有効なインベントリー設定ファイルは以下のように暗号化できます。
$ ansible-vault encrypt <filename>.vmware.yml
New Vault password:
Confirm New Vault password:
Encryption successful
また、以下を使用して、vault が設定されたこのインベントリー設定ファイルを使用できます。
$ ansible-inventory -i filename.vmware.yml --list --vault-password-file=/path/to/vault_password_file
See also
- pyVmomi
- pyVmomi の GitHub ページ
- pyVmomi Issue Tracker
- pyVmomi プロジェクトの問題トラッカー
- vSphere Automation SDK GitHub Page
- Python 向けの vSphere Automation SDK の GitHub ページ
- vSphere Automation SDK Issue Tracker
- Python 向けの vSphere Automation SDK の問題トラッカー
- Playbook の使用
- Playbook の概要
- Playbook での Vault の使用
- Playbook での Vault の使用