演習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