oVirt の VM のクローンを Ansible で作成する

背景

oVirt で VM のクローンを作成したいとき、GUI ではメニュから何も気にせず実行できます。

一方で、これを Ansible から実行しようとしても、oVirt の VM を管理するときに利用する ovirt.ovirt.ovirt_vm モジュール では実現は難しいようです。クローンに類する操作は次の二種のみしか対応していなさげでした。

  • テンプレートからの仮想マシンの作成
  • 他の VM のスナップショットからの仮想マシンの作成

実行したいのは、既存の VM からの Ansible を使ったダイレクトなクローン作成です。本エントリでは、これを API を直接叩いてがんばってどうにかする実装例を紹介します。

oVirt 4.4 でテスト済みです。RHV でも動きそうな気はしますが未テストです。AWX での利用を想定していますが、ansible-playbook でも動作します。

続きを読む