Apa itu virtual machine?

Virtual machine (VM) adalah komputer berbasis software yang menyediakan lingkungan terisolasi di hardware host. Virtual machine dapat menjalankan program dan sistem operasi, menyimpan data, terhubung ke jaringan, dan melakukan fungsi komputasi lainnya. Sebagian besar teknologi yang kita manfaatkan saat ini, seperti cloud computing dan kecerdasan buatan, berakar pada konsep virtual machine, yang memungkinkan pemisahan sistem operasi dan software dari komputer fisik. Misalnya, VM dalam cloud computing digunakan untuk memvirtualisasi resource server penyedia layanan cloud. Proses ini memungkinkan pembuatan arsitektur cloud multi-tenant tempat pelanggan dapat berbagi resource sekaligus tetap terisolasi satu sama lain.

Bagaimana cara kerja virtual machine?

Virtual machine menggunakan teknologi virtualisasi untuk membuat hardware virtual—atau versi virtual komputer pada mesin fisik. Mesin fisik tempat VM dijalankan disebut host dan VM yang berjalan di host disebut tamu

Setiap VM tamu berjalan di partisi yang terisolasi di host, yang sepenuhnya terpisah dari VM tamu lain. Anda dapat menghosting beberapa VM pada satu mesin host, sering kali berupa server, yang berjalan pada lapisan software yang dikenal sebagai hypervisor.

Hypervisor mengabstraksi resource fisik mesin host, seperti CPU, GPU, TPU, memori, penyimpanan, atau jaringan, ke dalam kumpulan resource yang dapat disediakan dan dialokasikan secara dinamis ke VM tamu sesuai kebutuhan. Kemampuan ini meningkatkan fleksibilitas serta efisiensi secara keseluruhan.

Dua jenis utama hypervisor

  • Jenis 1: hypervisor bare-metal: Hypervisor ini berjalan langsung di hardware fisik host. Jenis ini biasanya digunakan di pusat data perusahaan karena performa dan efisiensinya yang tinggi. Misalnya, Google Cloud menggunakan hypervisor berbasis KVM untuk mendukung virtual machine Compute Engine-nya.
  • Jenis 2: hypervisor yang dihosting: Hypervisor ini berjalan sebagai aplikasi di atas sistem operasi yang ada, sehingga cocok untuk penggunaan desktop. Kasus penggunaan yang paling umum bagi jenis ini adalah untuk pengembangan dan pengujian.

Jenis virtual machine

Secara umum, ada dua jenis virtual machine: VM proses dan VM sistem.

VM proses, juga disebut virtual machine aplikasi atau lingkungan runtime terkelola (MRE), membuat lingkungan virtual OS selagi aplikasi atau proses tertentu sedang berjalan dan menghancurkannya segera setelah Anda keluar. Dengan VM proses, Anda dapat membuat lingkungan yang tidak bergantung pada platform sehingga aplikasi atau proses dapat berjalan dengan cara yang sama di berbagai platform. Contoh konkretnya adalah runtime Node.js di App Engine, yang memungkinkan program Node.js berjalan di lingkungan terkelola di Google Cloud, terlepas dari sistem operasi yang mendasarinya.

VM sistem (terkadang disebut virtual machine hardware) membuat simulasi sistem operasi lengkap, yang memungkinkan beberapa lingkungan OS berada di mesin yang sama. Biasanya, VM ini adalah jenis yang dimaksud pengguna saat mereka membicarakan “virtual machines”. VM sistem dapat menjalankan OS dan aplikasinya sendiri. Selain itu, hypervisor memantau dan mendistribusikan resource mesin host fisik di antara VM sistem.

Beberapa penyedia cloud, termasuk Google, menawarkan kemampuan tambahan untuk menyesuaikan jumlah pasti pemroses virtual dan memori virtual di setiap instance. Kemampuan ini memungkinkan “penyesuaian ukuran” yang lebih presisi untuk setiap workload dan menghindari kurangnya pemanfaatan serta biaya lisensi software dan resource terkait untuk instance komputasi tersebut. Misalnya, beberapa workload mungkin memerlukan rasio inti komputasi terhadap memori yang tinggi, sementara yang lain mungkin memerlukan rasio yang sebaliknya. Penyesuaian virtual machine mengatasi kasus penggunaan ini tanpa penyediaan berlebih dan kelebihan bayar untuk resource yang tidak akan digunakan.

VM vs. Container

Meskipun VM dan container digunakan untuk mengisolasi aplikasi, keduanya memiliki cara yang sangat berbeda. Virtual machine memvirtualisasi seluruh stack hardware fisik, termasuk sistem operasi. Cara ini menjadikan setiap VM sebagai lingkungan terisolasi yang mandiri, tetapi VM juga cenderung lebih besar dan menggunakan lebih banyak resource.

Sebaliknya, container lebih ringan karena hanya memvirtualisasi lapisan OS. Alih-alih memaketkan sistem operasi lengkap dengan setiap aplikasi, container berbagi kernel OS host. Cara ini memungkinkan container menggunakan lebih sedikit resource dibandingkan VM dan memulai lebih cepat sekaligus tetap terisolasi. Keunggulan ini menjadikan container menarik untuk pengembangan aplikasi baru. Karena banyak aplikasi yang dikembangkan selama 10 tahun terakhir ditulis untuk container, banyak workload termasuk e-commerce, administratif, dan AI yang “berbasis container”.

Apa saja fungsi virtual machine?

VM adalah elemen penyusun dasar resource komputasi virtual dan memainkan peran utama dalam pembuatan aplikasi, alat, atau lingkungan, baik di cloud maupun di infrastruktur lokal.

Berikut adalah beberapa penggunaan umum virtual machine dalam bisnis:

Beberapa mesin fisik dapat dikonfigurasi ulang sebagai VM dan dijalankan di host bersama VM lain, sehingga membantu organisasi mengurangi inefisiensi. VM telah terbukti dari waktu ke waktu mampu menjalankan aplikasi yang paling sensitif terhadap performa.

Organisasi IT pusat dapat menyediakan serta mengelola VM untuk setiap unit bisnis dan area fungsional, sehingga mempercepat akses ke resource sekaligus meningkatkan visibilitas perusahaan.

VM dapat berfungsi sebagai lingkungan terisolasi untuk pengujian dan pengembangan yang mencakup fungsionalitas lengkap, tetapi tidak berdampak ke infrastruktur sekitarnya.

VM dapat dengan mudah dinonaktifkan atau diaktifkan, dimigrasikan, dan diadaptasi, sehingga memberikan fleksibilitas maksimum untuk pengembangan serta deployment.

Fleksibilitas dan portabilitas yang disediakan VM adalah kunci untuk meningkatkan kecepatan inisiatif migrasi.

Mereplikasi sistem di lingkungan cloud menggunakan VM dapat memberikan lapisan keamanan dan kepastian tambahan. Lingkungan cloud juga dapat terus diperbarui.

VM menyediakan fondasi untuk menciptakan lingkungan cloud bersama dengan lingkungan lokal, sehingga menghadirkan fleksibilitas tanpa meninggalkan sistem lama.

Manfaat virtual machine

Virtual machine menawarkan banyak manfaat, terutama jika Anda memilih untuk menggunakan VM cloud. Manfaat tersebut termasuk: 

Skalabilitas

VM berbasis cloud memudahkan penskalaan aplikasi, sehingga meningkatkan ketersediaan dan performa. Anda dapat meningkatkan kapasitas sesuai permintaan tanpa harus berinvestasi pada server fisik Anda sendiri. 

Portabilitas 

Virtual machine adalah paket software tunggal yang dilengkapi resource hardware, sistem operasi, dan semua aplikasinya. Anda dapat dengan mudah memindahkan VM dari satu server ke server lainnya, atau bahkan dari hardware lokal ke lingkungan cloud. 

Pengurangan jejak dan biaya

VM memungkinkan Anda menjalankan beberapa lingkungan virtual dari satu mesin, sehingga membantu mengurangi jejak infrastruktur fisik, tagihan listrik, serta biaya pemeliharaan dan pengelolaan. 

Penyediaan yang lebih cepat 

VM dapat dengan mudah diduplikasi, sehingga bisnis dapat menjalankan lingkungan baru yang identik tanpa perlu menyiapkannya dari awal.

Keandalan

Virtual machine dan komponennya ada secara virtual dan tetap terisolasi dari VM tamu lainnya. Jika VM mengalami error, VM tamu lainnya akan tetap beroperasi dan mesin host fisik tidak akan terpengaruh. 

Keamanan yang lebih baik

Dengan virtual machine, Anda dapat menjalankan beberapa sistem operasi tanpa memengaruhi sistem operasi host. VM memungkinkan Anda membuat lingkungan virtual yang aman untuk menguji aplikasi atau bahkan mempelajari kerentanan keamanan tanpa risiko tinggi terhadap mesin host. 

Potensi tantangan penggunaan virtual machine

Namun, ada beberapa pertimbangan yang perlu diperhatikan saat menjalankan VM. Penggunaan virtual machine hadir dengan berbagai potensi tantangan, khususnya terkait performa sistem. Menjalankan beberapa sistem operasi dan lapisan hypervisor dapat menurunkan performa jika mesin host tidak cukup andal. Selain itu, hardware virtual mungkin tidak seefisien hardware fisik dari mesin fisik. Terakhir, sebagian besar penyedia cloud menawarkan virtual machine yang memiliki CPU dan memori tetap, sehingga menyebabkan penggunaan resource yang tidak efisien.

Namun, sebagian besar masalah ini dapat diatasi dengan memilih menggunakan VM yang ditawarkan oleh penyedia layanan cloud. VM Cloud memberikan banyak keunggulan dibandingkan VM tradisional karena memberi organisasi akses ke daya komputasi gabungan dari seluruh komputer di pusat data, bukan ke satu mesin. Selain itu, ukuran virtual machine Google Compute Engine menawarkan jenis mesin kustom. Anda dapat menyesuaikan rasio CPU terhadap memori secara khusus untuk workload Anda, bukan memilih dari sejumlah jenis mesin yang telah ditetapkan yang mungkin memiliki kapasitas berlebih, sehingga Anda hanya membayar resource yang benar-benar digunakan. Pendekatan terarah ini meminimalkan pemborosan dan dapat mengurangi pengeluaran cloud Anda secara signifikan, terutama saat bermigrasi dari infrastruktur lokal ke Google Cloud atau dari penyedia cloud lainnya. Compute Engine juga menyediakan jenis mesin virtual yang dioptimalkan sesuai kebutuhan spesifik per pelanggan untuk workload perusahaan, konfigurasi memori tinggi, atau workload yang berat seperti machine learning atau komputasi berperforma tinggi.

Google Cloud juga menawarkan Shielded VM untuk memberikan keamanan tambahan dan integritas yang dapat diverifikasi ke instance VM Anda. Shielded VM dari Google Cloud memanfaatkan kemampuan dan kontrol yang canggih untuk keamanan platform, yang melindungi workload perusahaan dari berbagai ancaman, seperti serangan jarak jauh, eskalasi akses, dan orang dalam yang berniat jahat. 

Mengatasi tantangan bisnis Anda dengan Google Cloud

Pelanggan baru mendapatkan kredit gratis senilai $300 untuk dibelanjakan di Google Cloud.
Hubungi spesialis penjualan Google Cloud untuk membahas tantangan unik Anda secara lebih mendetail.

Langkah selanjutnya

Mulailah membangun solusi di Google Cloud dengan kredit gratis senilai $300 dan lebih dari 20 produk yang selalu gratis.