LoginSignup
10
9

More than 5 years have passed since last update.

KVM Virtual Machine Hostname 変更方法

Last updated at Posted at 2016-01-05

方法

  1. virsh edit 使わない場合
  2. virsh edit 使う場合

初期状態

# virsh list
 Id    Name                           State
----------------------------------------------------
 12    vm01                           running

実際のファイル

  • XML : /etc/libvirt/qemu/vm01.xml
  • IMAGE : /var/lib/libvirt/images/vm01.qcow2

Shutdown Domain

# virsh shutdown vm01
Domain vm01 is being shutdown

shutdown 出来なかったら、destroy で強制停止

# virsh destroy vm01
Domain vm01 destroyed
# virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     vm01                           shut off

1. virsh edit 使わない場合

1.1. XML 取得

# virsh dumpxml vm01 > vm01.xml

1.2. XML 修正

# cp vm01.xml vm01.xml.org
# vi vm01.xml
# diff vm01.xml.org vm01.xml
2c2
<   <name>vm01</name>
---
>   <name>vm02</name>

1.3. 停止状態の古い Domain を削除

# virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     vm01                           shut off

# virsh undefine vm01
Domain vm01 has been undefined

# virsh list --all
 Id    Name                           State
----------------------------------------------------

1.4. XML ファイルからリネームした Domain を登録

# virsh define ./vm01.xml
Domain vm02 defined from ./vm01.xml

# virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     vm02                           shut off

1.5. Domain 起動

# virsh start vm02
Domain vm02 started

# virsh list
 Id    Name                           State
----------------------------------------------------
 14    vm02                           running

2. virsh edit 使う場合

2.0. virsh editname だけ変更しても、 uuid が同じなので変更出来ない

# virsh edit vm01
error: operation failed: domain 'vm01' is already defined with uuid 23bcf945-288d-460a-9953-4797022d45c4
Failed. Try again? [y,n,f,?]:

2.1. 現在の UUID 確認、新しい UUID 取得

現在の UUID 確認

# virsh dominfo vm01 | grep UUID
UUID:           23bcf945-288d-460a-9953-4797022d45c4

新しい UUID 取得

# uuidgen
466df1ab-c0af-41a4-86d0-04a657042593

2.2. あとで Diff る為に XML 取得

# virsh dumpxml vm01 > vm01.xml

2.3. virsh edit

name と uuid を修正

# virsh edit vm01
Domain vm02 XML configuration edited.

新しい Domain (vm02) が作成される

# virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     vm01                           shut off
 -     vm02                           shut off

2.4. Diff

  • vm01: 変更前
  • vm02: 変更後
# virsh dumpxml vm02 > vm02.xml
# diff vm01.xml vm02.xml
2,3c2,3
<   <name>vm01</name>
<   <uuid>23bcf945-288d-460a-9953-4797022d45c4</uuid>
---
>   <name>vm02</name>
>   <uuid>466df1ab-c0af-41a4-86d0-04a657042593</uuid>

2.5. 停止状態の古い Domain を削除

# virsh undefine vm01
Domain vm01 has been undefined

# virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     vm02                           shut off

2.6. Domain 起動

# virsh start vm02
Domain vm02 started

# virsh list --all
 Id    Name                           State
----------------------------------------------------
 15    vm02                           running

Environment

# virsh --version
1.2.8

# libvirtd --version
libvirtd (libvirt) 1.2.8
10
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
9