2016年7月25日月曜日

pisces忘れるな

以前、libvirtを使わない状態でホスト名piscesというゲストOSを作った。
その後、libvirt配下にariesというゲストOSを作っていて、そちらを使っていた。
せっかくpiscesの方も作ったので、こちらもlibvirt配下に置いて活用したい。

どうやればいいのだろうか?
手探りでやってみよう。

まずは、pisces用仮想ディスクを、ariesの仮想ディスクと同じディレクトリにコピーする。
(aquarius) $ sudo cp -pi --sparse=always ~/iscsivol/test.img /var/lib/libvirt/images/pisces.qcow2
(aquarius) $ sudo ls -l ~/iscsivol/test.img /var/lib/libvirt/images/pisces.qcow2
(aquarius) $ sudo chown root:root /var/lib/libvirt/images/pisces.qcow2
(aquarius) $ sudo chmod 600 /var/lib/libvirt/images/pisces.qcow2
(aquarius) $ sudo ls -l /var/lib/libvirt/images


続いて、ariesの構成情報を取得する。(ariesの構成情報を元に、pisces用に作りなおしてみようと思っている。)
(aquarius) $ virsh dumpxml aries > ~/pisces.xml
(aquairus) $ vi ~/pisces.xml


編集内容…
行番号がズレないように、最終行の方から…。
84行目~87行目付近
    <graphics type='spice' port='9001' autoport='no' listen='127.0.0.2'>
      <listen type='address' address='127.0.0.2'/>
      <image compression='off'/>
    </graphics>


    <graphics type='spice' port='9001' autoport='no' listen='127.0.0.1'>
      <listen type='address' address='127.0.0.1'/>
      <image compression='off'/>
    </graphics>


66行目~71行目付近
    <interface type='network'>
      <mac address='52:54:00:76:db:ef'/>
      <source network='default'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

↓(1行削除)
     <interface type='network'>
      <source network='default'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>


32行目~37行目付近
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2'/>
      <source file='/var/lib/libvirt/images/aries.qcow2'/>
      <target dev='vda' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
    </disk>


    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2'/>
      <source file='/var/lib/libvirt/images/pisces.qcow2'/>
      <target dev='vda' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
    </disk>


2行目~3行目
  <name>aries</name>
  <uuid>f783e613-619a-4bf8-9e68-dd55a8d45e48</uuid>

↓(1行修正、1行削除)
  <name>pisces</name>

そうしたら、このファイルをlibvirtに食わせてみる。
(aquarius) $ ls -l /etc/libvirt/qemu
(aquarius) $ virsh list --all
(aquarius) $ virsh vol-list --pool default
(aquarius) $ virsh define ~/pisces.xml --validate

(aquarius) $ ls -l /etc/libvirt/qemu
(aquarius) $ virsh list --all

(aquarius) $ virsh vol-list --pool default

(aquarius) $ sudo diff /etc/libvirt/qemu/pisces.xml ~/pisces.xml


ストレージ(ボリューム)が認識されてないみたいだな…。
これで起動出来るのか?
(aquarius) $ virsh start pisces
(aquarius) $ virsh list --all

起動したよ…。

(aquarius) $ virsh vol-list default
やっぱり、pisces用のボリュームは認識されてないぞ。

(aquarius) $ sudo ls -l /var/lib/libvirt/images
でも、ファイルのタイムスタンプは更新されている。

どうやら、poolをリフレッシュすれば良さそうだ。
(aquarius) $ virsh vol-list --pool default
(aquarius) $ virsh pool-refresh default
(aquarius) $ virsh vol-list --pool default
(aquarius) $ virsh vol-info pisces.qcow2 --pool default


これで、piscesをlibvirt配下に置くことが出来た。

とりあえず、piscesは起動しっぱなしのはずなので、落としておこう。
#Remote Viewerで接続できるはず。
(pisces) $ sudo shutdown -h now

もう少し色々やりたいけど、今回はココまでにしよう。
初期にpiscesを作るために利用したiscsivolはもう使わなくなるので、次回削除する。

0 件のコメント:

コメントを投稿