Ada beberapa pertanyaan yang saya temukan di ServerFault yang mengisyaratkan tentang topik ini, dan meskipun mungkin agak berdasarkan pendapat, saya pikir itu bisa jatuh ke dalam kategori "baik subjektif" berdasarkan di bawah ini:
Pertanyaan subyektif yang konstruktif:
* tend to have long, not short, answers
* have a constructive, fair, and impartial tone
* invite sharing experiences over opinions
* insist that opinion be backed up with facts and references
* are more than just mindless social fun
Sehingga keluar dari jalan.
Saya membantu sesama sysadmin yang mengganti server fisik lama yang menjalankan Windows 2003 dan dia ingin tidak hanya mengganti perangkat keras tetapi "meningkatkan" ke 2012 R2 dalam proses.
Dalam diskusi kami tentang perangkat keras penggantinya, kami membahas kemungkinan dia menginstal ESXi dan kemudian menjadikan "server" 2012 sebagai VM dan memigrasikan aplikasi / file / peran lama dari server 2003 ke VM alih-alih ke instalasi non-VM pada perangkat keras baru.
Dia tidak melihat waktu dalam beberapa tahun ke depan kebutuhan untuk memindahkan apa pun ke VM atau membuat VM tambahan, jadi pada akhirnya ini akan menjadi perangkat keras baru yang menjalankan instalasi normal atau perangkat keras baru yang menjalankan VM tunggal di ESXi.
Pengalaman saya sendiri masih akan condong ke VM, masih belum ada alasan kuat untuk melakukannya selain kemungkinan yang mungkin muncul untuk membuat VM tambahan. Tetapi ada aspek overhead dan manajemen tambahan dari hypervisor sekarang, meskipun saya telah mengalami kemampuan manajemen yang lebih baik dan kemampuan pelaporan dengan VM.
Jadi dengan premis harapan ini dapat tetap berada dalam kategori "subyektif baik" untuk membantu orang lain di masa depan, pengalaman / fakta / referensi / jawaban konstruktif apa yang Anda miliki untuk membantu mendukung salah satu hasil (virtualisasi atau bukan satu "server") ?
Saya pikir sistem operasi yang divirtualisasi adalah faktor besar, bersama dengan persyaratan kinerja dan potensi ekspansi / pertumbuhan. Server saat ini seringkali sangat kuat untuk aplikasi dan sistem operasi yang kami gunakan. Dalam pengalaman saya, sebagian besar sistem Windows standar tidak dapat menggunakan sumber daya yang tersedia secara efisien di server dual-socket modern . Dengan Linux, saya telah memanfaatkan beberapa alat manajemen sumber daya granular ( cgroup ) dan wadah ( LXC ) untuk memanfaatkan sistem fisik dengan lebih baik. Tetapi pasar pasti diarahkan pada perangkat keras yang dioptimalkan-virtualisasi.
Yang mengatakan, saya sudah tervirtualisasi sistem tunggal daripada instalasi bare-metal dalam beberapa situasi. Alasan umum adalah:
Perizinan - Jumlah aplikasi yang semakin menipis yang dilisensikan berdasarkan batas inti, soket atau memori yang kaku ( tanpa memperhatikan tren dalam komputasi modern ). Lihat: Nonaktifkan core CPU di bios?
Portabilitas - Virtualisasi server mengabstraksi VM dari perangkat keras. Ini membuat perubahan platform kurang mengganggu dan memungkinkan VM untuk referensi perangkat / komponen standar virtual. Saya sudah bisa menjaga sistem Windows 2000 yang re-dekrit ( tapi kritis ) untuk mendukung kehidupan menggunakan pendekatan ini.
Ekspansi di masa depan - Saya memiliki klien sekarang yang memiliki pengontrol domain Windows 2003 yang berjalan pada perangkat keras era 2001. Saya sedang membangun sistem ESXi single-host baru untuk mereka yang akan menampung pengendali domain baru 2012 R2 untuk sementara. Tetapi lebih banyak VM akan mengikuti. Dalam konfigurasi ini, saya dapat menawarkan perluasan sumber daya yang andal tanpa biaya perangkat keras tambahan.
Kelemahan dari melakukan ini dengan satu host / VM tunggal adalah manajemen. Saya datang dari perspektif VMware, tetapi di masa lalu, ESXi sedikit ramah dengan pengaturan ini. Saat ini, persyaratan vSphere Web Client dan akses terbatas ke fitur-fitur dasar , membuat menjalankan solusi host tunggal ( dan VM tunggal ) kurang menarik.
Pertimbangan lain adalah pemantauan perangkat keras lumpuh dan lebih banyak kerumitan yang terlibat dengan periferal eksternal umum (perangkat USB / tape drive / backup / solusi UPS ). Hypervisor hari ini benar-benar ingin menjadi bagian dari rangkaian manajemen yang lebih besar.
sumber
Ada beberapa manfaat untuk virtualisasi satu server. Beberapa hal pertama yang terlintas dalam pikiran adalah
Saya pikir yang paling penting dari mereka adalah kemampuan snapshot. Kami menggunakan VMWare di seluruh perusahaan kami, jadi bagi kami masuk akal untuk memiliki server "siap" ketika ada kebutuhan untuk lebih banyak VM.
sumber
Ini bukan jawaban yang panjang, tapi bagaimanapun:
Alasan yang paling menarik untuk menggunakan hypervisor untuk satu server, terutama dengan sesuatu seperti Windows Server adalah bahwa Anda memiliki abstraksi perangkat keras total untuk OS produksi dan hanya dapat memindahkannya ke perangkat keras server yang sama sekali baru tanpa masalah, jika perlu. Saya menganggap ini fitur yang sangat berharga yang jauh melebihi kelemahan dari memiliki hypervisor praktis yang tidak perlu berjalan di latar belakang.
sumber
Saya tidak akan memberikan jawaban terinci di sini seperti yang dimiliki orang lain, jadi saya akan mengatakan bahwa saya merasa semakin sulit hari ini untuk membenarkan pemasangan OS server pada logam kosong sebagai ganti memasang hypervisor (dari Anda pilihan) dan virtualisasi beban kerja. Keuntungan melakukan ini, dalam pikiran saya, adalah:
Manfaat biaya. Dalam jangka panjang, jika saya perlu menggunakan beban kerja tambahan saya tidak perlu keluar untuk lebih banyak perangkat keras untuk beban kerja tambahan itu. Dalam beberapa kasus, ketika menggunakan Hyper-V, saya bahkan dapat menghemat biaya lisensi saya.
Kemudahan penempatan dan pemindahan.
Kemudahan menerapkan ketersediaan tinggi dan failover.
Portabilitas. Saya mungkin dapat memindahkan VM di mana saja jika saya perlu menonaktifkan atau meng-outsource host saat ini.
Pemeriksaan di masa depan. Sesama sysadmin Anda saat ini mungkin tidak melihat kebutuhan di masa depan untuk infrastruktur berbasis hypervisor tapi dugaan saya adalah bahwa dalam 12 hingga 24 bulan dia akan dan dia akan senang dia memilih untuk turun rute virtualisasi, jika dia memang memilih rute itu .
Pemulihan bencana. Saya dapat mencadangkan seluruh VM dan mengembalikannya atau mereplikasi ke host lain dalam hitungan menit.
Dan seterusnya dan seterusnya ...
sumber
Berikut adalah beberapa alasan mengapa saya akan mengatakan VM lebih baik:
Built-in "KVM over IP" (semacam) - Anda dapat mengakses server Anda dari jarak jauh pada konsol tanpa perlu KVM over IP. Terkadang Anda tidak ingin melakukan sesuatu melalui RDP dan memerlukan akses konsol. Dengan VM, Anda menjalankan alat manajemen pilihan (XenCenter, vSphere Client, dll) dan Anda berada di konsol VM Anda.
Dengan VM (dan untuk server non-VM, dengan KVM saya melalui IP) saya tidak lagi harus tinggal di ruang server yang dingin selama berjam-jam.
Migrasi ke perangkat keras baru - Mengesampingkan OS, untuk memasukkan perangkat keras baru Anda, Anda harus memigrasi sistem, memindahkan barang, dll. Dengan VM, Anda tidak (biasanya) harus melakukan apa pun. Anda meningkatkan perangkat keras Anda, meletakkan file VM pada perangkat keras baru dan menjalankan.
Sementara seseorang tidak melihat VM masa depan, " jika Anda membangunnya, mereka akan datang ". Anda ingin memunculkan VM baru untuk menguji sesuatu dan mencoba hal-hal baru, dll. Ada begitu banyak kemungkinan.
VM memberikan Anda kemampuan untuk mengembalikan dengan snapshot, mengambil salinannya, membuat klon dari VM (pada saat run time) dan kemudian memutarnya - apakah akan menguji sesuatu sebelum meletakkannya langsung, atau hanya untuk memiliki satu detik pertama. Ada banyak hal yang dapat Anda lakukan dengan snapshot VM dan sejenisnya.
Redundansi - jika Anda menggunakan server VM kedua, Anda dapat memiliki perangkat keras yang berlebihan dan sementara saya tidak tahu tentang skema lisensi VMWare saat ini, XenServer sekarang memiliki XenMotion yang tampaknya merupakan bagian dari paket gratis sehingga biaya overhead mungkin tidak berlaku.
Alasan saya tidak akan menggunakan VM:
Overhead - sulit tetapi jelas ada beberapa overhead
Lebih kompleks untuk dikelola - sedikit lebih kompleks tetapi mudah dipelajari. Jika Anda tidak menginginkan lingkungan tervirtualisasi besar-besaran, pelatihan itu sepele.
sumber
Saya datang terlambat, dan merasa seperti orang-orang telah membuat beberapa poin yang ingin saya buat, tetapi saya akan secara singkat merangkum:
Namun, hal yang belum ada yang disebutkan dan mungkin harus disebutkan: Jika Anda berada di jenis toko di mana orang mungkin memerlukan server uji, dan kemungkinan akan menyelesaikan kebutuhan itu dengan meraih desktop cadangan dan menampar OS server di atasnya, bisa menawarkan mereka VM kemungkinan akan sesuai dengan kebutuhan Anda dan mereka jauh lebih baik. Virtualisasi server baru dapat menjadi "alasan" untuk memungkinkan ekspansi virtual di masa depan. (Dan, jujur saja, jika Anda tidak berada di toko semacam itu, Anda mungkin sudah memiliki virtualisasi.)
Tentu saja, tidak semuanya tervirtualisasi. Saya mencetak perangkat keras fisik untuk perangkat lunak manajemen yang menyertakan PXE dengan menjelaskan kepada mereka apa yang harus mereka lakukan untuk mematikan TCP Segment Offloading ( PXE berlari seperti anjing berkaki satu dengan TSO aktif , tetapi mereka harus mematikannya untuk seluruh VLAN virtual, dan mereka segan melakukan itu). Jadi, jika server baru adalah sesuatu yang cukup khusus untuk tidak cocok, well, sudahlah.
Tetapi kecuali jenis spesialisasi itu, akan sangat berharga bagi saya untuk menyingkirkan sekelompok mesin kelas PC (yang berpotensi tidak dikelola) yang menjalankan OS server tergeletak di sekitar, sekarang atau di masa depan.
sumber
Tentu saja, saya melakukan virtualisasi kapan pun saya bisa. Ini memungkinkan saya mempersiapkan diri untuk melakukan hal berikut di masa mendatang:
Singkatnya, kecuali server akan menjalankan perangkat lunak tertentu yang memiliki keterbatasan, melarangnya untuk divirtualisasi (biasanya diperlukan jaringan ketat atau disk IO latensi, dan dengan perangkat keras yang tepat, bahkan yang dapat dicapai dengan virtualisasi) saya mencoba untuk menjaga hal-hal senyata mungkin.
sumber
Salah satu alasan yang bisa saya pikirkan dalam mendukung virtualisasi satu server menjadi VM pada satu host adalah kemampuannya memberi Anda untuk kemudian mengacaukan lingkungan pengujian untuk "server" itu.
Jika perangkat kerasnya lebih dari cukup, Anda bisa mengkloning VM server dan menghapus NIC / kemampuan jaringannya dan mengisolasi klon itu sebagai "platform uji" untuk dipusingkan sebelum mencoba yang sama pada server "produksi". Contohnya adalah jika server menjalankan perangkat lunak ERP dan Anda ingin menguji apa yang akan terjadi jika Anda menjalankan skrip tertentu terhadap perangkat lunak / database ERP. Anda bisa melakukannya pada VM hasil kloning terlebih dahulu. Ini kemudian dapat dilakukan bersamaan dengan snapshot dari VM langsung sebelum ditempatkan di atasnya, dengan manfaat tambahan dari mengetahui itu harus bekerja dengan baik.
Menciptakan lingkungan "tes" kloning yang sama dapat dilakukan dengan P2V dari server fisik yang ada, tetapi Anda kemudian akan memerlukan host fisik tambahan untuk menempatkan VM pengujian baru Anda ... di atas semuanya dapat berada pada fisik yang sama perangkat keras (yang saat ini hampir selalu berlebihan untuk satu VM)
sumber
Jika use case Anda tidak membutuhkan 100% daya dari perangkat keras khusus maka saya akan menjadi virtual setiap saat. Ini memberikan fleksibilitas, fasilitas snapshot, dan akses konsol bawaan (meskipun Anda juga harus menggunakan manajemen band)
sumber
Satu poin yang agak tangensial untuk pertanyaan utama:
Baru-baru ini saya memiliki VM yang disk-nya tidak cukup besar. Itu menjalankan sesuatu yang menghasilkan sejumlah besar data dalam database relasional, yang karena alasan kinerja harus berada di mesin yang sama.
Setelah memperluas gambar disk dua kali, saya sampai pada tahap di mana tidak ada cukup ruang pada host untuk menyalin dan memperluas gambar dengan aman lagi. Saya akan menyelamatkan saya beberapa hari kerja untuk melakukan ini dari awal pada mesin khusus, bahkan jika itu adalah PC murah, bukan server kinerja tinggi.
Dengan mesin khusus Anda bisa mematikannya, dan menambahkan lebih banyak disk. Jika itu server yang menjalankan VM lain, kecuali jika Anda memiliki ruang hot-swap cadangan, Anda mungkin memiliki masalah mematikannya untuk ini.
sumber
With a dedicated machine you can just shut it down, and add more disks. If it's a server running other VM's, unless you have spare hot-swap bays, you might have a problem shutting it down for this.
- ya Jika Anda tidak memiliki ruang cadangan di mesin khusus, Anda tidak akan menambahkan lebih banyak disk. Itu hanya perencanaan sesuai pada ukuran disk Anda di muka.