Pertimbangan Komputer Virtual Linux

Komputer virtual Linux dan BSD memiliki pertimbangan tambahan dibandingkan dengan komputer virtual Windows di Hyper-V.

Pertimbangan pertama adalah apakah Layanan Integrasi ada atau jika VM berjalan hanya pada perangkat keras yang ditiru tanpa pencerahan. Tabel rilis Linux dan BSD yang memiliki Layanan Integrasi bawaan atau yang dapat diunduh tersedia di komputer virtual Linux dan FreeBSD yang didukung untuk Hyper-V di Windows. Halaman-halaman ini memiliki kisi fitur Hyper-V yang tersedia untuk rilis distribusi Linux, serta catatan tentang fitur-fitur tersebut jika relevan.

Bahkan ketika tamu menjalankan Layanan Integrasi, itu dapat dikonfigurasi dengan perangkat keras warisan yang tidak menunjukkan performa terbaik. Misalnya, konfigurasikan dan gunakan adaptor ethernet virtual untuk tamu alih-alih menggunakan adaptor jaringan warisan. Dengan Windows Server 2016, jaringan tingkat lanjut seperti SR-IOV juga tersedia.

Kinerja Jaringan pada Linux

Linux secara default memungkinkan akselerasi dan offload perangkat keras secara default. Jika vRSS diaktifkan di properti NIC pada host dan tamu Linux memiliki kemampuan untuk menggunakan vRSS, kemampuan akan diaktifkan. Di Powershell parameter yang sama ini dapat diubah dengan EnableNetAdapterRSS perintah .

Demikian pula, fitur VMMQ (Virtual Switch RSS) dapat diaktifkan pada NIC fisik yang digunakan oleh Properti> tamuKonfigurasikan...>Tab > mengatur Virtual Switch RSS ke Diaktifkan atau mengaktifkan VMMQ di Powershell menggunakan yang berikut ini:

 Set-VMNetworkAdapter -VMName **$VMName** -VmmqEnabled $True

Penyetelan TCP tambahan pada tamu dapat dilakukan dengan cara meningkatkan batas. Untuk mendapatkan performa terbaik, penyebaran beban kerja di beberapa CPU dan memiliki beban kerja yang kompleks menghasilkan throughput optimal, karena beban kerja virtual akan memiliki latensi lebih tinggi dibandingkan dengan beban kerja “bare metal”.

Beberapa contoh parameter penyetelan yang telah berguna dalam tolok ukur jaringan meliputi:

net.core.netdev_max_backlog = 30000
net.core.rmem_max = 67108864
net.core.wmem_max = 67108864
net.ipv4.tcp_wmem = 4096 12582912 33554432
net.ipv4.tcp_rmem = 4096 12582912 33554432
net.ipv4.tcp_max_syn_backlog = 80960
net.ipv4.tcp_slow_start_after_idle = 0
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 10240 65535
net.ipv4.tcp_abort_on_overflow = 1

Alat yang berguna untuk mikrobenchmark jaringan adalah ntttcp, yang tersedia di Linux dan Windows. Versi Linux adalah sumber terbuka dan tersedia dari ntttcp-for-linux di github.com. Versi Windows dapat ditemukan di pusat unduhan. Saat menyetel beban kerja, yang terbaik adalah menggunakan aliran sebanyak yang diperlukan untuk mendapatkan throughput terbaik. Menggunakan ntttcp untuk memodelkan lalu lintas, parameter -P mengatur jumlah koneksi paralel yang digunakan.

Performa Penyimpanan Linux

Beberapa praktik terbaik, seperti berikut ini, tercantum di Praktik Terbaik untuk Menjalankan Linux di Hyper-V. Kernel Linux memiliki penjadwal I/O yang berbeda untuk menyusun ulang permintaan dengan algoritma yang berbeda. NOOP adalah antrean pertama masuk pertama keluar yang melewati keputusan jadwal kepada hypervisor. Disarankan untuk menggunakan NOOP sebagai penjadwal saat menjalankan komputer virtual Linux di Hyper-V. Untuk mengubah penjadwal untuk perangkat tertentu, dalam konfigurasi boot loader (/etc/grub.conf, misalnya), tambahkan elevator=noop ke parameter kernel, lalu mulai ulang.

Mirip dengan jaringan, performa tamu Linux dengan penyimpanan mendapat manfaat paling besar dari antrean berganda dengan kedalaman yang cukup untuk menjaga host tetap sibuk. Microbenchmarking performa penyimpanan sebaiknya dilakukan dengan menggunakan alat benchmarking fio yang dilengkapi dengan mesin libaio.

Referensi Tambahan