背景
oVirt で VM のクローンを作成したいとき、GUI ではメニュから何も気にせず実行できます。
一方で、これを Ansible から実行しようとしても、oVirt の VM を管理するときに利用する ovirt.ovirt.ovirt_vm
モジュール では実現は難しいようです。クローンに類する操作は次の二種のみしか対応していなさげでした。
- テンプレートからの仮想マシンの作成
- 他の VM のスナップショットからの仮想マシンの作成
実行したいのは、既存の VM からの Ansible を使ったダイレクトなクローン作成です。本エントリでは、これを API を直接叩いてがんばってどうにかする実装例を紹介します。
oVirt 4.4 でテスト済みです。RHV でも動きそうな気はしますが未テストです。AWX での利用を想定していますが、ansible-playbook
でも動作します。