Tambahkan disk fisik ke mesin virtual KVM

12

Saya menyiapkan server file (nas4free) sebagai mesin virtual KVM pada sistem Ubuntu Server 12.04.

Bagaimana cara menambahkan hard drive fisik langsung ke VM sehingga dapat digunakan oleh tamu (nas4free), tetapi bukan host?

Khususnya hard drive yang ingin saya mount adalah / dev / sda (yang saat ini tidak dipasang di server.)

Sejauh ini saya telah menemukan dua solusi tetapi saya belum berhasil.

Yang pertama adalah dari Server Fault di mana disarankan untuk menggunakan virt-manager. Saya belum memahami ini karena ketika saya mencoba memilih drive yang ada tidak ada yang terdaftar. Tebakan terbaik saya mengapa ini terjadi, adalah karena saya menggunakan manajer-virt di atas ssh dan tidak terhubung sebagai root, haruskah itu membuat perbedaan?

Solusi kedua yang saya temukan di sini adalah menjalankan perintah (dimodifikasi untuk sistem saya)

qm set nas4free -virtio /dev/sda

tetapi tampaknya membutuhkan proxmox yang saya belum instal dan sepertinya tidak ada di repositori default?

Akhirnya, setelah hal-hal di atas diselesaikan dan saya dapat memasang drive langsung ke VM, apakah ada yang punya pengalaman dengan apakah drive harus dipasang ke VM sebagai scsi, ide, atau virtio? (Saya tahu virtio direkomendasikan di halaman ServerFault yang ditautkan, tetapi saya belum pernah mendengarnya sebelumnya karena saya terutama menggunakan VMWare).

Terima kasih atas bantuan Anda!!!

evan
sumber
1
Jalankan sudo virt-manager, tidak perlu terhubung sebagai root. Tidak tahu apakah virtioberfungsi untuk perangkat fisik ...
ish
@izx, terima kasih atas balasan Anda! haruskah itu membuat perbedaan meskipun manajer virt-sedang dijalankan di desktop saya dan bukan server?
evan

Jawaban:

11

Meskipun ini telah dijawab, daripada menggunakan / dev / sda Anda harus menggunakan / dev / disk / by-id / dari mana Anda dapatkan

    ls -l /dev/disk/by-id

Dengan begitu Anda dilindungi hanya dalam kasus disk berubah dari / dev / sda ke / dev / sdb.

smccloud
sumber
2
Saat ini, inilah satu-satunya jawaban (yang pernah ada) yang diposting pada pertanyaan ini. Ada beberapa informasi dalam komentar yang mungkin membantu, tetapi sejauh yang saya tahu itu jauh dari pasti bahwa mereka akan memperbaiki masalah. Anda mungkin mempertimbangkan untuk memperluas ini untuk memberikan solusi lengkap. Jika bagian dari solusi Anda telah dirancang oleh orang lain, Anda selalu dapat mengutip dan menautkan ke mereka. Saya ragu izx akan keberatan .. terutama karena (ketika saya berkomentar sekarang) izx belum masuk ke situs selama lebih dari setahun.
Eliah Kagan
Saya menggunakan virsh attach-device domain XML-file...untuk melampirkan disk. Bisakah Anda juga menggunakan disk-id di <source dev='/dev/...'/>elemen?
MrCalvin
8

Memiliki kebutuhan yang sama persis, saya menemukan yang berikut:

http://ronaldevers.nl/2012/10/14/adding-a-physical-disk-kvm-libvirt.html

(seluruh teks berikut berasal dari sumber di atas)

Itu tidak bisa dilakukan dengan manajer-kebajikan. Yang itu memakan waktu beberapa saat untuk mencari tahu. Sejauh yang saya tahu, manajer kebajikan bekerja dengan kolam penyimpanan. Anda bisa membuat disk menjadi kumpulan penyimpanan, tetapi Anda tidak bisa menambahkan disk yang ada secara langsung ke VM.

Untungnya perbaikannya mudah: Anda menambahkan disk ke file konfigurasi xml domain dengan tangan. Jadi buka /etc/libvirt/qemu/.xml di editor favorit Anda dan tambahkan bagian ke bagian:

<disk type='block' device='disk'>
  <driver name='qemu' type='raw'/>
  <source dev='/dev/md/storage'/>
  <target dev='vdb' bus='virtio'/>
</disk>

Ini akan membuat penyimpanan / dev / md / host menjadi tersedia sebagai / dev / vdb. Setelah mengubah konfigurasi domain dengan tangan, Anda harus memuat ulang konfigurasi dengan tangan. Masuk ke host Anda dan berikan perintah ini:

# virsh define /etc/libvirt/qemu/jetsetetser.xml
Domain jetser defined from /etc/libvirt/qemu/jetsetetser.xml

Berikut adalah sumber yang bagus dengan informasi lebih lanjut tentang mengelola vms dengan libvirt: https://help.ubuntu.com/community/KVM/Managing

Saya sangat menyarankan Anda mengikuti saran yang diberikan oleh smccloud. Ini bekerja seperti pesona bagi saya. Berhati-hatilah untuk tidak memasang volume apa pun di drive fisik yang digunakan tamu Anda, atau Anda akan merusak sistem file-nya!

dethegeek
sumber
4
Alih-alih virsh define..., rekomendasinya adalah menggunakan virsh edit <NAME>Ini memungkinkan Anda untuk mengedit XML di editor teks favorit Anda dan membuat perubahan secara otomatis memperbarui VM.
Nathan Osman