Mengoptimalkan performa pada mesin virtual Linux seri Lsv3, Lasv3, dan Lsv2
Perhatian
Artikel ini mereferensikan CentOS, distribusi Linux yang merupakan status End Of Life (EOL). Harap pertimbangkan penggunaan dan rencanakan yang sesuai. Untuk informasi selengkapnya, lihat panduan Akhir Masa Pakai CentOS.
Berlaku untuk: ✔️ Mesin virtual Linux ✔️ Set skala seragam
Seri Lsv3, Lasv3, dan Lsv2 Azure Virtual Machines (mesin virtual Azure) mendukung berbagai beban kerja yang membutuhkan I/O dan throughput tinggi pada penyimpanan lokal di berbagai aplikasi dan industri. Seri L sangat ideal untuk database Big Data, SQL, NoSQL, pergudangan data, dan database transaksi besar, termasuk Cassandra, MongoDB, Cloudera, dan Redis.
Beberapa build tersedia Marketplace Azure karena bekerja dengan mitra di Linux. Build ini dioptimalkan untuk performa seri Lsv3, Lasv3, dan Lsv2. Build yang tersedia mencakup versi berikut dan yang lebih baru dari:
- Ubuntu 16.04
- RHEL 8.0 dan klon, termasuk CentOS, Rocky Linux, dan Alma Linux
- Debian 9
- SUSE Linux 15
- Oracle Linux 8.0
Artikel ini berisi tips dan saran untuk memastikan beban kerja dan aplikasi Anda mencapai performa maksimum yang dirancang ke dalam VM.
Arsitektur chipset AMD EPYC™
Mesin virtual seri Lasv3 dan Lsv2 menggunakan prosesor server AMD EYPC™ berdasarkan mikro-arsitektur Zen. AMD mengembangkan Infinity Fabric (IF) untuk EYPC™ sebagai interkoneksi yang dapat diskalakan untuk model NUMA-nya yang dapat digunakan untuk komunikasi on-die, on-package, dan multi-paket. Dibandingkan dengan QPI (Interkoneksi Jalur Cepat) dan UPI (Interkoneksi Jalur Ultra) yang digunakan di prosesor die monolitik modern Intel, dan banyak arsitektur die kecil NUMA AMD, dapat memberikan manfaat kinerja serta tantangan. Pengaruh aktual batasan latensi dan bandwidth memori dapat bervariasi bergantung pada jenis beban kerja yang berjalan.
Tips memaksimalkan kinerja
- Jika Anda mengunggah Linux GuestOS kustom untuk beban kerja Anda, Jaringan yang Dipercepat dinonaktifkan secara default. Jika Anda berniat mengaktifkan Jaringan Dipercepat, aktifkan pada saat pembuatan VM untuk kinerja terbaik.
- Untuk mendapatkan performa maksimal, jalankan beberapa pekerjaan dengan kedalaman antrean mendalam per perangkat.
- Jangan mencampur perintah admin NVMe (misalnya, kueri info NVMe SMART, dll.) dengan perintah I/O NVMe selama beban kerja aktif. Perangkat NVMe Lsv3, Lasv3, dan Lsv2 didukung oleh teknologi Hyper-V NVMe Direct, yang beralih ke "mode lambat" setiap kali perintah admin NVMe tertunda. Pengguna Lsv3, Lasv3, dan Lsv2 dapat melihat penurunan kinerja dramatis dalam performa I/O NVMe jika hal itu terjadi.
- Pengguna Lsv2 tidak boleh mengandalkan informasi NUMA perangkat (semua 0) yang dilaporkan dari dalam mesin virtual untuk drive data guna memutuskan afinitas NUMA untuk aplikasi mereka. Cara yang direkomendasikan untuk mendapatkan kinerja yang lebih baik adalah menyebarkan beban kerja di seluruh CPU jika dimungkinkan.
- Kedalaman antrean maksimum yang didukung tiap pasangan antrean I/O untuk perangkat mesin virtual Lsv3, Lasv3, dan Lsv2 NVMe adalah 1024. Pengguna Lsv3, Lasv3, dan Lsv2 direkomendasikan untuk membatasi beban kerja tolok ukur (sintetis) mereka untuk mengantre kedalaman 1024 atau lebih rendah agar tidak memicu antrean kondisi penuh, yang dapat mengurangi kinerja.
- Performa terbaik diperoleh ketika I/O dilakukan langsung ke masing-masing perangkat NVMe mentah tanpa partisi, tidak ada sistem file, tidak ada konfigurasi RAID, dll. Sebelum memulai sesi pengujian, pastikan konfigurasi dalam keadaan segar/bersih yang dikenal dengan menjalankan
blkdiscard
pada tiap perangkat NVMe. Untuk mendapatkan performa yang paling konsisten selama tolok ukur, disarankan untuk melakukan prasyarat perangkat NVMe sebelum menguji dengan mengeluarkan tulisan acak ke semua LBA perangkat dua kali seperti yang didefinisikan dalam Spesifikasi Pengujian Performa Perusahaan Penyimpanan Status Solid SNIA.
Menggunakan penyimpanan NVMe lokal
Penyimpanan lokal pada disk NVMe 1,92 TB di semua mesin virtual Lsv3, Lasv3, dan Lsv2 bersifat sementara. Saat mulai ulang standar mesin virtual berhasil, data pada disk NVMe lokal akan bertahan. Data tidak akan dipertahankan di NVMe jika mesin virtual disebarkan ulang, dibatalkan alokasinya, atau dihapus. Data tidak akan dipertahankan jika masalah lain menyebabkan mesin virtual, atau perangkat keras yang dijalankannya, menjadi tidak sehat. Jika hal ini terjadi, data apa pun di host lama dihapus dengan aman.
Juga akan ada kasus saat mesin virtual perlu dipindahkan ke komputer host yang berbeda, misalnya, selama operasi pemeliharaan terencana. Operasi pemeliharaan terencana dan beberapa kegagalan perangkat keras dapat diantisipasi dengan Acara Terjadwal. Acara Terjadwal harus digunakan agar tetap diperbarui saat operasi pemulihan dan pemeliharaan yang diprediksi.
Jika acara pemeliharaan terencana mengharuskan mesin virtual dibuat ulang di host baru dengan disk lokal kosong, data harus disinkronisasi ulang (sekali lagi, dengan data apa pun di host lama yang dihapus dengan aman). Hal ini terjadi karena mesin virtual seri Lsv3, Lasv3, dan Lsv2 saat ini tidak mendukung migrasi langsung pada disk NVMe lokal.
Ada dua mode pemeliharaan terencana.
Pemeliharaan yang dikontrol pelanggan VM standar
- VM dipindahkan ke host yang diperbarui selama periode 30 hari.
- Data penyimpanan lokal Lsv3, Lasv3, dan Lsv2 bisa hilang, jadi sebaiknya cadangkan data sebelum peristiwa.
Pemeliharaan otomatis
- Terjadi jika pelanggan tidak menjalankan pemeliharaan yang dikontrol pelanggan, atau jika terjadi prosedur darurat seperti acara keamanan nol hari.
- Dimaksudkan untuk mempertahankan data pelanggan, tetapi ada risiko kecil pembekuan atau reboot mesin virtual.
- Data penyimpanan lokal Lsv3, Lasv3, dan Lsv2 bisa hilang, jadi sebaiknya cadangkan data sebelum peristiwa.
Untuk semua acara mendatang, gunakan proses pemelihatan terkontrol untuk memilih waktu yang paling tepat bagi pengguna untuk pembaruan. Sebelum peristiwa, Anda dapat mencadangkan data Anda di penyimpanan premium. Setelah acara pemeliharaan selesai, Anda dapat mengembalikan data Anda ke penyimpanan NVMe lokal mesin virtual Lsv3, Lasv3, dan Lsv2 yang di-refresh.
Skenario yang mempertahankan data di disk NVMe lokal meliputi:
- VM berjalan dan sehat.
- VM di-boot ulang di tempat (oleh Anda atau Azure).
- Mesin virtual dijeda (dihentikan tanpa dibatalkan alokasinya).
- Sebagian besar operasi layanan pemeliharaan terencana.
Skenario yang menghapus data dengan aman untuk melindungi pelanggan meliputi:
- VM disebarkan ulang, dihentikan (dibatalkan alokasinya), atau dihapus (oleh Anda).
- VM menjadi tidak sehat dan harus memulihkan simpul lain karena masalah perangkat keras.
- Sejumlah kecil operasi layanan pemeliharaan terencana yang mengharuskan mesin virtual dialokasikan ulang ke host lain guna perbaikan.
Tanya jawab umum
Berikut ini adalah pertanyaan yang sering diajukan tentang seri ini.
Bagaimana cara saya mulai menyebarkan mesin virtual seri L?
Seperti VM lainnya, gunakan Portal, Azure CLI, atau PowerShell untuk membuat VM.
Akankah satu kegagalan disk NVMe menyebabkan semua mesin virtual di host gagal?
Jika kegagalan disk terdeteksi di simpul perangkat keras, perangkat keras dalam keadaan gagal. Jika hal ini terjadi, semua mesin virtual pada node tersebut akan dibatalkan alokasinya secara otomatis dan dipindahkan ke node yang sehat. Untuk mesin virtual seri Lsv3, Lasv3, dan Lsv2, masalah ini berarti bahwa data pelanggan pada node yang gagal juga dihapus dengan aman. Pelanggan perlu membuat ulang data pada simpul baru.
Apakah saya perlu mengubah pengaturan blk_mq?
RHEL/CentOS 7.x secara otomatis menggunakan blk-mq untuk perangkat NVMe. Tidak ada perubahan konfigurasi atau pengaturan yang diperlukan.
Langkah berikutnya
Lihat spesifikasi untuk semua VM yang dioptimalkan untuk performa penyimpanan di Azure