Как заменить образ KVM на другой раздел?

у меня есть такая структура пространства hdd-s:

df -h
Filesystem      Size  Used Avail Use% Mounted on
udev             16G     0   16G   0% /dev
tmpfs           3.2G  8.9M  3.2G   1% /run
/dev/md2        193G   35G  148G  19% /
tmpfs            16G     0   16G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs            16G     0   16G   0% /sys/fs/cgroup
/dev/md4        492G   73M  466G   1% /mnt

Теперь мой kvm-образ находится на / dev / md2 на / . ls -l /kvm/vhdd/wwe.img -rw ------- 1 libvirt-qemu kvm 163611607040 9 марта, 09:12 /kvm/vhdd/wwe.img

Мне нужно заменить этот образ на / dev / md4 на / mnt .

Как это сделать? Я могу остановить свою виртуальную машину. Но что мне делать после остановки? Мне просто сделать cp ? Или надо конфиги править? Я нашел

grep -R "/ kvm" / etc / /etc/libvirt/qemu.conf:# "/ dev / ptmx", "/ dev / kvm", "/ dev / kqemu", /etc/libvirt/storage/autostart/iso.xml: / kvm / iso /etc/libvirt/storage/autostart/vhdd.xml: / kvm / vhdd /etc/libvirt/storage/iso.xml: / kvm / iso /etc/libvirt/storage/vhdd.xml: / kvm / vhdd /etc/libvirt/qemu/wwe.xml: / usr / bin / kvm-spice /etc/libvirt/qemu/wwe.xml: <исходный файл = '/ kvm / vhdd / wwe.img' /> /etc/libvirt/qemu/autostart/wwe.xml: / usr / bin / kvm-spice /etc/libvirt/qemu/autostart/wwe.xml: <исходный файл = '/ kvm / vhdd / wwe.img' /> / etc / default / libvirtd: # Запустить libvirtd для обработки qemu / kvm: / и т. д. / по умолчанию / qemu-kvm: # / запустить / hugepages / kvm /etc/apparmor.d/libvirt/libvirt-68d2ecf6-4569-49cc-871f-042a42ad1c03.files: "/kvm/vhdd/wwe.img" rwk,

Стоит ли заменять этот путь / kvm / vhdd / в моих конфигах? Пожалуйста, помогите, я боюсь вывести службу из строя, спасибо.

1
задан 9 March 2018 в 11:18
3 ответа

ব্যাকআপ অরিজিনাল ভিএম:

  1. বীরশ শাটডাউন ডাব্লুউই
  2. বর্ষ তালিকা - সমস্ত
  3. সিপি /etc/libvirt/qemu/wwe.xML / ইত্যাদি / libvirt / qemu / উত্স -wwe.xML
  4. সিপি / কেভিএম / ভিএইচডি / উইও.আইএমজি / কেভিএম / ভিএইচডি / ওরিগ-wwe.img পরিবার 1291 # ভিএম চিত্রটি বিভাগ / এমএনটি / কেভিএম-তে সরান:
    1. এমকেডির / এমএনটি / কেভিএম

    2. mv /kvm/vhdd/wwe.img /mnt/kvm/wwe.img পরিবার 1294 সম্পাদনা এক্সএমএল ফাইল: vim /etc/libvirt/qemu/wwe.xML পরিবার 1295 @ ফর্ম: <উত্স ফাইল = '/ কেভিএম / ভিএইচডি / wwe.img '/> প্রতি: <উত্স ফাইল = '/ mnt / kvm / wwe.img' />

    3. বীরশ শুরু wwe

    দ্রষ্টব্য: আপনি যেকোন সময় অরিগ্যানাল ফাইল ব্যবহার করে মূল অবস্থায় ফিরে যেতে পারেন, তবে কেভিএম ইনফ্রায় ভিএম ক্লোনিং এবং চলমানের জন্য নীচের বিকল্প উপায় রয়েছে [



    কেভিএম - ক্লোন অতিথি উপলভ্য চিত্র থেকে:

    1- একটি বেস ভিএম তৈরি করুন এবং ওএস ইনস্টল করুন, বেস ভিএম বন্ধ করুন

    virsh shutdown basevm
    

    2- এর এক্সএমএল ফাইলটি টেম্পলেট.এক্সএমএল এ ফেলে দিন এবং তার চিত্র টেমপ্লেট.একসি 2 তে অনুলিপি করুন

    virsh dumpxml basevm > /etc/libvirt/qemu/template.xml
    cp /home/kvm/images/basevm.qcow2 /home/kvm/images/template.qcow2
    

    3- টেমপ্লেটে .xML ডিস্ক উত্স ফাইলটি টেমপ্লেট.কোভিয় 2 তে নির্দেশ করুন

    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none'/>
      <source file='/home/kvm/images/template.qcow2'/>
      <target dev='vda' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </disk>
    

    4- টেম্পলেট.ককো 2 তে পুণ্য-সিএসপ্রেপ চালান। চিত্রটি পুনরায় সেট করতে, উদাঃ এসএসএইচ কীগুলি সরিয়ে ফেলবে, নতুন ম্যাক ঠিকানা তৈরি করবে, লগ ফাইলগুলি পরিষ্কার করবে ইত্যাদি।

    virt-sysprep -a /home/kvm/images/template.qcow2
    

    5- এই বিন্দুটির পরে আপনার আর বেস ভিএমের দরকার নেই। এটি ব্যবহারে না থাকলে এটি মুছুন [

    virsh undefine basevm
    rm /home/kvm/images/basevm.qcow2
    

    Template- টেমপ্লেট: টেমপ্লেট.এক্সএমএল এবং টেম্পলেট.ককো ২ থেকে নতুন ভিএম ক্লোনিং করা হচ্ছে

    virt-clone --connect qemu:///system --original-xml /etc/libvirt/qemu/template.xml --name server --file /home/kvm/images/template.qcow2
    

    কেভিএম - অতিথিকে অন্য হোস্টে স্থানান্তর করুন:

    1- উপরের পদক্ষেপের পরে এক্সএমএল এবং চিত্রের ফাইলটিতে স্থানান্তর করুন নতুন হোস্ট কেভিএম:

    scp /etc/libvirt/qemu/template.xml kvm02:/etc/libvirt/qemu/template.xml
    scp /home/kvm/images/template.qcow2 kvm02:/home/kvm/images/template.qcow2
    
    virt-sysprep -a /home/kvm/images/template.qcow2
    virsh define /etc/libvirt/qemu/template.xml
    virsh start vm
    
4
ответ дан 3 December 2019 в 16:32

Если я понимаю, вам нужно переместить /kvm/vhdd/wwe.img куда-нибудь в /mnt (скажем, в /mnt/kvm/vhdd/wwe.img ) ?

Если бы так:

  • остановить виртуальную машину (используя отключение питания или другую команду в самой ВМ), затем дождаться остановки в virt-manager (или virsh)

  • переместить файл изображения в новое место

  • изменить местоположение изображения в определении ВМ :

  • либо с помощью графического интерфейса virt-manager GUI (удалить hdd в определении ВМ и добавить снова из нового места),

  • или с помощью virsh (предполагая, что имя ВМ - 'wwe'), например:

    ~# virsh dumpxml wwe > wwe.xml
    
    ~# sed "s[file='/kvm/vhdd/wwe".img'[file='/mnt/kvm/vhdd/wwe.img'[" wwe.xml > wwe_new.xml
    
    ~# diff wwe.xml wwe_new.xml
    

    (покажет только изменение местоположения файла как разницу)

    ~# virsh undefine wwe
    
    ~# virsh определите wwe_new.xml
    
  • перезапустить ВМ.

3
ответ дан 3 December 2019 в 16:32

В дополнение к уже сказанному я бы рекомендовал использовать virsh edit вместо редактирования xml файла в /etc напрямую. Комментарии в этом файле говорят:

<!--
WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE
OVERWRITTEN AND LOST. Changes to this xml configuration should be made using:
  virsh edit vmname
or other application using the libvirt API.
-->

Итак, реальная процедура выглядит так:

  1. virsh shutdown
  2. mv oldpath/image.qcow newpath/image.qcow
  3. virsh edit Найдите тег tag и соответствующим образом измените путь.
  4. virsh start
2
ответ дан 28 July 2020 в 09:48

Теги

Похожие вопросы