演習01
アドホックコマンドを使ってみよう
ansibleにはPlaybookを書かずにモジュールを実行する方法があります。
それがアドホックコマンドです。
アドホックコマンドを使えばPlaybookを書かずに素早く実行することが可能になります。
この演習では、Playbookを書く前に ansible コマンドを使ったアドホックコマンドについて動作を確認してみましょう。
アドホックコマンドの詳細については以下を参照ください。
Step 1. VM Guestの情報を取得する
まずは、VMのゲスト情報を取得してみましょう。
VMのゲスト情報を取得するモジュールは vmware_guest_facts を使用します。
以下のコマンドを実行してゲスト情報を取得します。
-m で使用するモジュールを指定して -a でモジュールに渡すオプションを指定します。
モジュールオプション
説明
hostname
vCenterまたはESXiのIP/ホスト名
username
vCenterまたはESXiのアカウント
password
vCenterまたはESXiのアカウントパスワード
validate_certs
SSL検証の有効/無効
datacenter
データセンター名
name
VM名
問題なく実行できれば、以下のようにVMの情報が取得できます。
次に name を uuid に変えて実行してみましょう。
uuid には上記で取得した hw_product_uuid を指定します。
同じ値が取得できたと思います。
このように vmware_guest_facts では、VM名またはuuidを指定して情報を取得できます。
Step 2. VMの電源を操作する
ここでは、VMの電源操作をしてみましょう。 VMの電源操作をするモジュールは vmware_guest_powerstate を使用します。 以下のコマンドはVMの電源をOFFにする例です。
モジュールオプション
説明
folder
VMが保存されているVMのフォルダパス
state
電源状態を指定
問題なく実行できれば CHANGED と表示されます。
hw_power_status は poweredOff になっていることを確認します。
もう一度同じコマンドを実行してみましょう。
すると SUCCESS と表示されると思います。
これは、Ansibleの 冪等性 によって既に電源OFFになっているVMに対しては処理が実行されないためです。
このようにAnsibleでは、何回やっても必ず宣言した状態になる 冪等性 が保たれます。
ただし、全てのモジュールで冪等性が保たれているわけではありません。
そのため、冪等性が保たれているかは各モジュールのドキュメントまたは実際に動かして確認してください。
それでは、電源をONにしてみましょう。
電源がOFFになっている状態のVMに対して電源をONにするので CHANGED になります。
完了
お疲れ様でした。 これで演習01は終了です。
Last updated
Was this helpful?