Seri RHCSA: Esensi Virtualisasi dan Administrasi Tamu dengan KVM - Bagian 15


Jika Anda mencari kata virtualisasi dalam kamus, Anda akan menemukan bahwa itu berarti “membuat versi virtual (bukan versi sebenarnya) dari sesuatu ”. Dalam komputasi, istilah virtualisasi mengacu pada kemungkinan menjalankan beberapa sistem operasi secara bersamaan dan terisolasi satu sama lain, di atas sistem fisik (perangkat keras) yang sama, yang dalam skema virtualisasi dikenal sebagai host.

Melalui penggunaan monitor mesin virtual (juga dikenal sebagai hypervisor), mesin virtual (disebut sebagai tamu) diberikan sumber daya virtual (yaitu CPU, RAM, penyimpanan, jaringan antarmuka, untuk beberapa nama) dari perangkat keras yang mendasarinya.

Dengan mengingat hal ini, jelas terlihat bahwa salah satu keuntungan utama virtualisasi adalah penghematan biaya (dalam peralatan dan infrastruktur jaringan dan dalam hal upaya pemeliharaan) dan pengurangan besar dalam ruang fisik yang diperlukan untuk mengakomodasi semua perangkat keras yang diperlukan.

Karena petunjuk singkat ini tidak dapat mencakup semua metode virtualisasi, saya mendorong Anda untuk merujuk pada dokumentasi yang tercantum dalam ringkasan untuk rincian lebih lanjut mengenai subjek tersebut.

Harap diingat bahwa artikel ini dimaksudkan sebagai titik awal untuk mempelajari dasar-dasar virtualisasi di RHEL 7 menggunakan KVM (Mesin Virtual berbasis Kernel) dengan utilitas baris perintah, dan bukan in -diskusi mendalam tentang topik tersebut.

Memverifikasi Persyaratan Perangkat Keras dan Menginstal Paket

Untuk mengatur virtualisasi, CPU Anda harus mendukungnya. Anda dapat memverifikasi apakah sistem Anda memenuhi persyaratan dengan perintah berikut:


grep -E 'svm|vmx' /proc/cpuinfo

Pada tangkapan layar berikut kita dapat melihat bahwa sistem saat ini (dengan mikroprosesor AMD) mendukung virtualisasi, seperti yang ditunjukkan oleh svm. Jika kita memiliki prosesor berbasis Intel, kita akan melihat vmx pada hasil perintah di atas.

Selain itu, Anda harus mengaktifkan kemampuan virtualisasi di firmware host Anda (BIOS atau UEFI).

Sekarang instal paket yang diperlukan:

  1. qemu-kvm adalah virtualizer sumber terbuka yang menyediakan emulasi perangkat keras untuk hypervisor KVM sedangkan qemu-img menyediakan alat baris perintah untuk memanipulasi image disk.
  2. libvirt mencakup alat untuk berinteraksi dengan kemampuan virtualisasi sistem operasi.
  3. libvirt-python berisi modul yang memungkinkan aplikasi yang ditulis dengan Python menggunakan antarmuka yang disediakan oleh libvirt.
  4. libguestfs-tools: berbagai alat baris perintah administrator sistem untuk mesin virtual.
  5. virt-install: utilitas baris perintah lainnya untuk administrasi mesin virtual.

yum update && yum install qemu-kvm qemu-img libvirt libvirt-python libguestfs-tools virt-install

Setelah instalasi selesai, pastikan Anda memulai dan mengaktifkan layanan libvirtd:


systemctl start libvirtd.service
systemctl enable libvirtd.service

Secara default, setiap mesin virtual hanya dapat berkomunikasi dengan mesin virtual lainnya di server fisik yang sama dan dengan host itu sendiri. Untuk memungkinkan para tamu menjangkau mesin lain di dalam LAN dan juga Internet, kita perlu menyiapkan antarmuka jembatan di host kita (katakanlah br0, misalnya) dengan,

1. menambahkan baris berikut ke konfigurasi NIC utama kita (kemungkinan besar /etc/sysconfig/network-scripts/ifcfg-enp0s3):


BRIDGE=br0

2. membuat file konfigurasi untuk br0 (/etc/sysconfig/network-scripts/ifcfg-br0) dengan konten berikut (perhatikan bahwa Anda mungkin harus mengubah alamat IP, alamat gateway, dan informasi DNS):


DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.0.18
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
NM_CONTROLLED=no
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=br0
ONBOOT=yes
DNS1=8.8.8.8
DNS2=8.8.4.4

3. terakhir, mengaktifkan penerusan paket dengan membuat, di /etc/sysctl.conf,


net.ipv4.ip_forward = 1

dan memuat perubahan pada konfigurasi kernel saat ini:


sysctl -p

Perhatikan bahwa Anda mungkin juga perlu memberi tahu firewalld bahwa lalu lintas semacam ini harus diizinkan. Ingatlah bahwa Anda dapat merujuk ke artikel tentang topik tersebut dalam seri yang sama (Bagian 11: Kontrol Lalu Lintas Jaringan Menggunakan FirewallD dan Iptables) jika Anda memerlukan bantuan untuk melakukannya.