Multitenancy Cloud Computing: Efisiensi Layanan Sumber Daya
Multitenancy, atau konsep layanan jamak, adalah sebuah terobosan dalam arsitektur perangkat lunak dimana satu instansi perangkat lunak tunggal dapat melayani berbagai kelompok pengguna yang berbeda. Dalam komputasi awan, ini berarti banyak pelanggan dari vendor cloud menggunakan sumber daya komputasi yang sama.
Meskipun demikian, data masing-masing pelanggan cloud tersebut tetap terpisah dan aman. Konsep ini merupakan inti penting dalam Komputasi Awan. Multitenancy dapat dianalogikan dengan layanan perbankan. Banyak orang dapat menyimpan uang di bank yang sama. Namun, aset setiap nasabah berbeda. Satu nasabah tidak dapat mengakses uang dan rekening nasabah lainnya, dan mereka tidak saling mengetahui saldo dan detail rekening masing-masing.
Keunggulan Multitenancy
- Pemanfaatan sumber daya secara optimal melalui berbagi sumber daya.
- Pengurangan biaya Sistem Perangkat Keras Fisik bagi pelanggan, dan penggunaan perangkat fisik yang lebih efisien sehingga dapat menghemat daya listrik dan biaya pendinginan.
- Penghematan biaya Vendor karena menyediakan layanan fisik terpisah untuk setiap pengguna menjadi tidak efisien.
Kelemahan Multitenancy
- Keamanan data bergantung pada layanan pihak ketiga, yang dapat meningkatkan kerentanan.
- Akses tidak sah dapat menyebabkan kerusakan data.
- Data setiap penyewa tidak dapat diakses oleh semua penyewa lain dalam infrastruktur cloud dan hanya dapat diakses dengan izin dari penyedia cloud.
Pada private cloud, pelanggan atau penyewa dapat berupa individu atau kelompok yang berbeda dalam perusahaan yang sama. Sedangkan pada public cloud, organisasi yang sama sekali berbeda dapat berbagi ruang server mereka secara aman. Sebagian besar penyedia cloud publik menggunakan model multi-tenancy, yang memungkinkan mereka menjalankan server dengan instansi tunggal, yang lebih murah dan membantu menyederhanakan pembaruan.
Perbandingan Multitenant Cloud vs. Single-Tenant Cloud
Dalam single-tenant cloud, hanya satu klien yang dihosting di server dan diberikan akses ke sana. Karena arsitektur multi-tenancy menghosting banyak klien pada server yang sama, penting untuk memahami keamanan dan kinerja penyedia secara menyeluruh. Single-tenant cloud memberi pelanggan kontrol lebih besar dalam mengelola data, penyimpanan, keamanan, dan kinerja.
Keuntungan Arsitektur Multitenant
Ada berbagai keuntungan dari multitenancy, yang terlihat jelas dari popularitas komputasi awan.
- Hemat biaya: Komputasi mudah untuk diukur, dan multitenancy memungkinkan alokasi sumber daya secara koheren dan efisien, yang pada akhirnya dapat menghemat biaya operasi. Bagi pengguna individu, membayar untuk akses ke layanan cloud atau aplikasi SaaS seringkali lebih hemat biaya daripada menjalankan perangkat keras dan perangkat lunak single-tenant.
- Fleksibel: Jika Anda telah berinvestasi dalam perangkat keras dan perangkat lunak, kapasitasnya dapat mencapai batas selama periode permintaan tinggi atau menjadi idle selama permintaan rendah. Di sisi lain, cloud multitenant dapat mengalokasikan kumpulan sumber daya kepada pengguna yang membutuhkannya sesuai dengan kebutuhan mereka yang naik dan turun. Sebagai pelanggan penyedia cloud publik, Anda dapat mengakses kapasitas tambahan saat dibutuhkan dan tidak perlu membayarnya saat tidak dibutuhkan.
- Efisien: Multitenancy mengurangi kebutuhan pengguna individu untuk mengelola infrastruktur dan menangani pembaruan serta pemeliharaan. Setiap penyewa dapat mengandalkan penyedia cloud pusat alih-alih tim mereka sendiri untuk menangani tugas-tugas rutin tersebut.
Contoh Multi-Tenancy
Cloud multitenant dapat dibandingkan dengan struktur gedung apartemen. Setiap penghuni memiliki akses ke apartemen mereka sendiri di dalam keseluruhan perjanjian gedung, dan hanya orang yang berwenang yang boleh memasuki unit tertentu. Namun, seluruh gedung berbagi sumber daya seperti air, listrik, dan area umum.
Hal ini mirip dengan cloud multitenant di mana penyedia menetapkan kuota, aturan, dan harapan kinerja yang luas untuk pelanggan, tetapi setiap pelanggan memiliki akses pribadi ke informasi mereka. Multitenancy dapat menggambarkan arsitektur perangkat keras atau perangkat lunak di mana beberapa sistem, aplikasi, atau data dari berbagai perusahaan dihosting pada perangkat keras fisik yang sama. Ini berbeda dengan single-tenancy, di mana server menjalankan satu instansi sistem operasi dan aplikasi. Dalam dunia cloud, arsitektur cloud multitenant memungkinkan pelanggan (“penyewa”) untuk berbagi sumber daya komputasi di cloud publik atau privat.
Multitenancy adalah fitur umum dari layanan cloud yang dibuat khusus dan dikirimkan, karena ini memungkinkan pelanggan untuk berbagi sumber daya secara efisien sambil menskalakan dengan aman untuk memenuhi permintaan yang meningkat. Meskipun mereka berbagi sumber daya, pelanggan cloud tidak menyadari keberadaan satu sama lain, dan data mereka tetap terpisah.
Apa Arti Multitenant bagi Cloud?
Penyedia cloud menawarkan multitenancy sebagai cara untuk berbagi penggunaan sumber daya komputasi. Namun, penggunaan bersama sumber daya ini tidak boleh disamakan dengan virtualisasi, konsep yang terkait erat. Dalam lingkungan multitenant, banyak klien berbagi aplikasi yang sama, dalam lingkungan operasi yang sama.
Perbedaan Multitenancy dengan Virtualisasi
Meskipun multitenancy dan virtualisasi sering digunakan secara bergantian, keduanya adalah konsep yang berbeda. Virtualisasi adalah teknik yang memungkinkan beberapa sistem operasi atau aplikasi berjalan secara independen pada satu komputer fisik. Hal ini dicapai dengan membuat mesin virtual (VM) yang meniru lingkungan komputer fisik. Setiap VM memiliki sistem operasi, aplikasi, dan sumber dayanya sendiri.
Multitenancy, di sisi lain, adalah arsitektur perangkat lunak yang memungkinkan beberapa klien berbagi sumber daya fisik yang sama, seperti CPU, memori, dan penyimpanan. Setiap klien memiliki ruang sendiri dalam arsitektur multitenant, dan datanya diisolasi dari data klien lain.
Keamanan Multitenancy
Keamanan adalah salah satu aspek terpenting dari arsitektur multitenant. Penyedia cloud harus mengambil langkah-langkah untuk memastikan bahwa data setiap klien aman dan terlindungi dari akses tidak sah. Hal ini dapat dilakukan dengan menggunakan berbagai teknik, seperti:
- Isolasi data: Data setiap klien disimpan di ruang terpisah dalam arsitektur multitenant. Hal ini mencegah klien lain mengakses data tersebut.
- Kontrol akses: Setiap klien harus diautentikasi dan diberi otorisasi sebelum dapat mengakses sumber daya cloud.
- Enkripsi: Data dapat dienkripsi untuk melindunginya dari akses tidak sah.
- Pemantauan: Penyedia cloud harus memantau sistemnya untuk aktivitas mencurigakan.
Contoh Multitenancy di Linux
Siapa pun yang menyiapkan lingkungan multitenant akan dihadapkan pada opsi untuk mengisolasi lingkungan menggunakan mesin virtual (VM) atau container. Dengan VM, hypervisor memutar mesin tamu, yang masing-masing memiliki sistem operasi dan aplikasi serta dependensi. Hypervisor juga memastikan bahwa pengguna diisolasi satu sama lain.
Dibandingkan dengan VM, container menawarkan model yang lebih ringan, fleksibel, dan mudah diukur. Container menyederhanakan penerapan multitenancy dengan menerapkan beberapa aplikasi pada satu host, menggunakan kernel dan runtime container untuk memutar setiap container. Tidak seperti VM, yang berisi kernelnya sendiri, aplikasi yang berjalan dalam container berbagi kernel, bahkan di beberapa penyewa.
Di Linux, namespace memungkinkan beberapa container untuk menggunakan sumber daya yang sama secara bersamaan tanpa konflik. Mengamankan container sama dengan mengamankan proses yang sedang berjalan.
Database Multitenant
Saat memilih database untuk aplikasi multitenant, pengembang harus menyeimbangkan kebutuhan atau keinginan pelanggan untuk isolasi data dan solusi cepat dan ekonomis dalam menanggapi pertumbuhan atau lonjakan lalu lintas aplikasi. Untuk memastikan isolasi lengkap, pengembang dapat mengalokasikan instans database terpisah untuk setiap penyewa.
Di sisi lain, untuk memastikan skalabilitas maksimum, pengembang dapat membuat semua penyewa berbagi instans database yang sama. Namun, sebagian besar pengembang memilih untuk menggunakan penyimpanan data seperti PostgreSQL, yang memungkinkan setiap penyewa memiliki skema mereka sendiri dalam satu instans database (kadang-kadang disebut ‘isolasi lunak’) dan memberikan yang terbaik dari kedua dunia.
Bagaimana dengan Solusi Keamanan “Hybrid”?
Organisasi semakin banyak menggunakan aplikasi berbasis cloud, seperti Salesforce, Box, dan Office 365 saat bermigrasi ke layanan infrastruktur seperti Microsoft Azure dan Amazon Web Services (AWS). Oleh karena itu, banyak bisnis menyadari bahwa lebih masuk akal untuk mengamankan lalu lintas di cloud.
Sebagai tanggapan, vendor lama yang sangat bergantung pada penjualan peralatan perangkat keras secara berkala mempromosikan apa yang disebut “solusi hibrida”. Dalam hal ini, keamanan pusat data dikendalikan oleh perangkat dan keamanan seluler atau cabang mirip dengan yang ditempatkan di lingkungan cloud. Tumpukan menangani keamanan.
Strategi hybrid ini memperumit, bukan menyederhanakan, keamanan perusahaan karena pengguna dan administrator cloud tidak mendapatkan manfaat dari layanan cloud nyata – kecepatan, skala, visibilitas global, dan intelijen ancaman – yang hanya dapat disediakan melalui arsitektur global.
Kesimpulan
Multitenancy adalah konsep arsitektur yang inovatif dalam komputasi awan yang memungkinkan penyedia layanan untuk berbagi sumber daya komputasi dengan banyak klien secara efisien dan aman. Meskipun memiliki beberapa kelemahan, multitenancy menawarkan banyak manfaat bagi pelanggan, seperti penghematan biaya, peningkatan fleksibilitas, dan efisiensi yang lebih tinggi. Dengan kemajuan teknologi dan peningkatan praktik keamanan, multitenancy akan terus memainkan peran penting dalam masa depan komputasi awan.