AWXのインベントリーソースでvCenterを登録してVM情報を自動登録してみた

AWXのインベントリのソースにvCenterがあったため、自動でvCenterに登録されている仮想インスタンスの情報を取得してインベントリーに登録してみました。

目的

インベントリースクリプトを使わず、標準ソースにある VMware vCenter を使ってvCenter上の仮想インスタンスを自動でインベントリーに登録する。
また、フィルタリング機能も動作させ目的に合わせたグループ分けなどができるかも確認する。

準備

認証情報登録

vCenterの情報を登録します。

(1) 認証情報 をクリックして 追加 をクリックします。

(2) 必要項目を入力・選択して 保存 をクリックします。

インベントリー作成

(1) インベントリー をクリックして 追加 インベントリー をクリックします。

(2) 必要項目を入力・選択して 保存 をクリックします。

(3) ソース をクリックします。

(4) ソースの追加 をクリックします。

(5) 必要事項を入力して ソースVMware vCenter を選択し 保存 をクリックします。

インベントリーに登録

VM情報を登録

(1) 作成したソースを実行してみます。

(2) インベントリーの グループホスト が自動で登録されていることが確認できます。

標準は Power On になっている仮想インスタンス情報を取得するようです。
グループは ゲストOSの識別子 になっています。

(3) 登録されたホストの変数には以下のように情報が登録されています。

フィルタリング例

登録するVMをフィルタリングしてみます。
ここでは VMs というグループにフィルタリングしたVMを登録してみます。

(1) VMの名前でフィルタリングをしてみます。ソース変数 に以下を追加して実行します。

これを実行すると VMs グループに ansible_awx_centosdevel という名前の仮想インスタンスが登録されます。
フィルタリングは取得したホスト変数を元にして可能です。例えばPowerOnの仮想インスタンスだけを取得する場合は以下のようになります。

フィルタリングの詳細は以下のページを参照してください。

http://docs.ansible.com/ansible-tower/latest/html/userguide/inventories.html#vmware-vcenter

Leave a Reply

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)