Pendahuluan
Cloud Computing? Pasti banyak dari para pembaca yang sudah sering dengar kata tersebut, atau jika belum pernah dengar, mungkin pernah dengar istilah
dalam bahasa Indonesia-nya, yaitu
“Komputasi Awan”. Ada banyak tulisan dan sudut pandang untuk menjelaskan apa itu
Cloud Computing, namun banyak dari penjelasan tersebut yang terlalu teknis, sehingga
bagi
orang awan akan
kesulitan untuk memahaminya. Tulisan ini sengaja dibuat untuk
mempermudah orang awam memahami Cloud Computing. Diharapkan setelah membaca
tulisan ini, para pembaca akan bisa memahami dasar
pengetahuan mengenai
Cloud Computing dengan lebih mudah.
Apa itu
Cloud Computing?
Untuk memudahkan pemahaman
mengenai model cloud computing kita ambil analogi dari layanan
listrik
PLN. Tentu kita semua adalah para
pemakai
listrik
dalam kehidupan
sehari-hari.
Untuk bisa
menikmati listrik, kita tidak perlu
mendirikan
infrastruktur pembangkit listrik sendiri, bukan? Yang
perlu kita
lakukan adalah mendaftar ke PLN karena PLN sudah
menyediakan layanan listrik ini untuk pelanggan.
Kalau Anda pernah
melihat
gardu
induk
PLN, Anda akan
melihat
bagaimana rumitnya instalasi listrik disana dengan banyak sekali
transformator dan peralatan berat lainnya (Resource Pooling). Disinilah sumber daya listrik berpusat untuk kemudian didistribusikan ke pelanggan. Distribusi listrik ke pelanggan dari gardu induk ini menggunakan kabel listrik yang
sudah distandarisasi. Kabel antara pembangkit listrik dengan gardu induk biasa dikenal dengan istilah SUTET (Saluran Udara Tegangan Ektra Tinggi). Dari gardu induk, distribusi kemudian dipecah ke gardu-gardu lain sampai akhirnya sampai di rumah pelanggan dengan kabel yang lebih
kecil. Kabel listrik
yang
ada
ini menjamin koneksi
listrik yang
cepat,
sehingga layanan listrik bisa dinikmati terus menerus (Broad Network Access).
Setelah mendaftar,
pelanggan bisa
memakai
energi
listrik dan membayar
kepada
PLN berdasarkan jumlah penggunaan listrik kita
tiap bulan. Jumlah yang dibayar dihitung
dari meteran listrik di
rumah pelanggan (Measured Service). Saat pelanggan butuh daya
tambahan karena suatu tujuan khusus (misalnya saat acara pernikahan keluarga), pelanggan
tinggal
meminta kepada PLN untuk
menambahkan daya, dan suatu saat nanti ketika ingin menurunkan daya lagi,
pelanggan tinggal meminta juga kepada PLN.
Bisa dikatakan penambahan daya listrik
ini
bersifat elastis, untuk
menambah daya atau menurukannya
bisa dilakukan segera (Rapid Elasticity).
Akan sangat menarik
jika
kedepannya untuk
melakukan penambahan/penurunan daya
tersebut, pelanggan bisa melakukannya sendiri dari suatu alat yang disediakan oleh PLN., sehingga tidak dibutuhkan
lagi interaksi dengan pegawai PLN (Self Service).
Ketika memakai layanan listrik dari PLN, pelanggan tidak perlu pusing untuk memikirkan bagaimana PLN memenuhi kebutuhan listrik . Hal terpenting yang
perlu diketahui adalah listrik
menyala
untuk
kebutuhan sehari-hari, serta berapa
tagihan
listrik yang perlu dibayar tiap bulannya. Pelanggan tidak perlu mengetahui secara detail bagaimana
PLN merawat infrastruktur
listriknya, bagaimana ketika mereka ada kerusakan alat,
bagaimana proses
perawatan alat-alat tersebut, dsb. Intinya, pelanggan cukup tahu bahwa dapat menikmati listrik dan berkewajiban membayar
biaya tersebut tiap bulannya, sedangkan PLN
sendiri berkewajiban untuk
memenuhi kebutuhan listrik pelanggannya.
Nah, analogi PLN di atas adalah gambaran dari layanan Cloud Computing. Menurut NIST (National Institute of Standards and
Technology), terdapat
5 karakteristik sehingga sistem
tersebut
disebut Cloud Computing, yaitu:
1. Resource Pooling
Sumber daya komputasi (storage, CPU, memory, network bandwidth, dsb.) yang
dikumpulkan oleh penyedia layanan (service provider) untuk
memenuhi kebutuhan banyak pelanggan (service consumers) dengan
model multi-tenant. Sumber daya komputasi ini
bisa berupa sumber daya
fisik ataupun virtual dan juga
bisa
dipakai secara dinamis oleh para pelanggan untuk
mencukupi kebutuhannya.
2. Broad Network Access
Kapabilitas layanan dari cloud provider tersedia lewat jaringan dan bisa
diakses oleh berbagai jenis perangkat, seperti smartphone, tablet, laptop, workstation, dsb.
3. Measured Service
Tersedia layanan untuk
mengoptimasi dan memonitor layanan yang dipakai secara
otomatis. Dengan monitoring sistem ini, kita bisa melihat berapa resources
komputasi yang telah dipakai, seperti: bandwidth , storage, processing, jumlah pengguna aktif, dsb.
Layanan monitoring ini sebagai bentuk transparansi antara
cloud provider dan cloud consumer.
4. Rapid Elasticity
Kapabilitas dari layanan cloud
provider bisa dipakai oleh cloud consumer secara
dinamis
berdasarkan
kebutuhan. Cloud consumer bisa menaikkan atau menurunkan
kapasitas layanan. Kapasitas layanan yang disediakan ini biasanya tidak terbatas,
dan
service
consumer bisa dengan bebas dan mudah memilih kapasitas yang
diinginkan setiap
saat.
5. Self Service
Cloud Consumer bisa mengkonfigurasikan secara mandiri layanan yang
ingin dipakai
melalui sebuah sistem, tanpa perlu interaksi manusia dengan pihak cloud provider. Konfigurasi layanan yang dipilih ini harus tersedia segera dan saat itu juga secara
otomatis.
Kelima karakteristik Cloud Computing
tersebut harus ada
di service
provider
jika ingin disebut sebagai penyedia layanan Cloud Computing.
Salah satu saja
dari layanan tersebut tidak terpenuhi, maka penyedia layanan tersebut belum/tidak pantas disebut sebagai cloud provider.
Layanan Cloud Computing
Setelah pengguna mengetahui karakteristik
dari
Cloud Computing, berikutnya akan
dibahas
jenis-jenis layanan dari Cloud Computing. NIST sendiri membagi
jenis layanan Cloud Computing menjadi tiga sebagai berikut:
1. Software as a Service
(SaaS)
SaaS
adalah layanan dari Cloud
Computing dimana
pelanggan dapat
menggunakan software (perangkat lunak)
yang
telah
disediakan oleh
cloud provider.
Pelanggan cukup tahu bahwa perangkat lunak bisa berjalan dan bisa digunakan dengan
baik.
Contoh dari layanan
SaaS
ini antara lain adalah:
- Layanan produktivitas: Office365, GoogleDocs, Adobe Creative Cloud, dsb.
- Layanan email: Gmail, YahooMail, LiveMail, dsb.
- Layanan social network: Facebook, Twitter, Tagged, dsb.
- Layanan instant messaging: YahooMessenger, Skype, GTalk, dsb.
Keuntungan
dari SaaS ini adalah
kita tidak
perlu
membeli lisensi
software lagi.
Kita tinggal berlangganan ke cloud provider dan tinggal membayar berdasarkan pemakaian.
2. Platform as a Service
(PaaS)
PaaS adalah
layanan dari Cloud Computing kita bisa menyewa “rumah” berikut lingkungannya,
untuk
menjalankan aplikasi yang telah dibuat. Pelanggan tidak perlu
pusing
untuk menyiapkan “rumah” dan memelihara “rumah” tersebut. Yang penting
aplikasi yang dibuat dapat berjalan dengan
baik. Pemeliharaan “rumah” ini (sistem operasi, network, database engine, framework aplikasi, dll) menjadi tanggung jawab dari
penyedia layanan. Sebagai analogi, misalkan ingin menyewa kamar hotel, kita tinggal tidur di kamar yang sudah disewa, tanpa peduli bagaimana “perawatan” dari kamar dan lingkungan kamar.
Yang
terpenting adalah, suasananya nyaman untuk digunakan. Jika suatu saat dibuat
tidak
nyaman, maka pelanggan dapat
pindah ke hotel lain yang lebih bagus
layanannya. Contoh penyedia layanan PaaS: Amazon Web Service, Windows Azure, dan GoogleApp
Engine Keuntungan
dari PaaS bagi pengembang dapat fokus
pada
aplikasi yang sedang dikembangkan
tanpa harus memikirkan
“rumah” untuk aplikasi, dikarenakan ahl tersebut sudah menjadi tanggung jawab cloud provider.
3. Infrastructure as a Service (IaaS)
IaaS adalah layanan dari
Cloud Computing
sewaktu kita bisa “menyewa” infrastruktur IT
(unit komputasi, storage, memory, network, dsb). Dapat didefinisikan berapa besar unit
komputasi
(CPU),
penyimpanan data
(storage), memory (RAM),
bandwidth , dan
konfigurasi lainnya yang akan disewa. Untuk lebih mudahnya, layanan
IaaS
ini adalah seperti menyewa komputer yang masih kosong. Kita sendiri yang mengkonfigurasi komputer
ini
untuk digunakan sesuai
dengan kebutuhan kita dan bisa kita install sistem
operasi dan aplikasi apapun diatasnya.
Contoh penyedia layanan IaaS :
Amazon EC2, Rackspace Cloud, Windows Azure, dsb. Keuntungan dari IaaS ini adalah kita tidak perlu membeli komputer fisik, dan konfigurasi
komputer virtual tersebut dapat diubah
(scale
up/scale down) dengan mudah. Sebagai contoh, saat komputer virtual tersebut sudah kelebihan beban, kita bisa tambahkan CPU, RAM, Storage, dsb. dengan segera.
Untuk lebih memudahkan pemahaman mengenai
model
cloud computing, perhatikan gambar transformasi dari on-premise model ke cloud model dibawah ini:
Gambar 1: Transformasi on-premise model ke cloud
model
Deployment Model
Cloud Computing?
Setelah kita tahu jenis layanan
dari cloud
computing, sekarang kita bahas tentang deployment model dari cloud computing. Menurut NIST, ada empat deployment model
dari
cloud computing ini, yaitu:
1. Public
Cloud
Adalah layanan Cloud Computing yang disediakan untuk masyarakat umum. Pengguna
bisa langsung mendaftar
ataupun memakai layanan yang ada. Banyak
layanan Public Cloud yang
gratis, dan
ada
juga
yang
perlu membayar untuk
bisa menikmati layanannya.
Contoh Public Cloud yang gratis:
GoogleMail, Facebook, Twitter, Live Mail, dsb.
Contoh Public Cloud yang berbayar: Sales Force, Office365, GoogleApps, dsb.
Keuntungan:
Pengguna tidak perlu berinvestasi untuk merawat serta membangun infrastruktur, platform, ataupun aplikasi. Kita
tinggal
memakai secara gratis (untuk layanan yang gratis) atau membayar sebanyak pemakaian (pay as you go). Dengan pendekatan ini, kita bisa mengurangi dan merubah biaya Capex (Capital Expenditure) menjadi Opex (Operational Expenditure).
Kerugian:
Sangat tergantung dengan kualitas layanan internet (koneksi)
yang kita pakai. Jika
koneksi internet mati, maka tidak ada layanan yang dapat diakses. Untuk itu, perlu
dipikirkan secara matang infrastruktur internetnya.
2. Private Cloud
Adalah layanan cloud computing yang
disediakan
untuk memenuhi kebutuhan internal dari organisasi/perusahaan. Biasanya departemen IT akan berperan sebagai service
provider
(penyedia layanan)
dan
departemen lain menjadi service
consumer.
Sebagai service provider, tentu saja Departemen IT harus bertanggung
jawab agar layanan bisa
berjalan dengan baik sesuai dengan standar kualitas layanan yang
telah ditentukan oleh perusahaan, baik infrastruktur, platform, maupun aplikasi yang
ada.
Contoh layanannya:
SaaS: Web Application, Mail Server, Database Server untuk
keperluan internal. PaaS: Sistem Operasi + Web Server + Framework
+ Database yang untuk internal
IaaS: Virtual machine yang bisa di-request sesuai dengan kebutuhan internal
Keuntungan:
Menghemat
bandwidth internet ketika
layanan
itu hanya
diakses
dari jaringan
internal.Proses bisnis tidak tergantung dengan koneksi internet, akan tetapi tetap
saja tergantung dengan koneksi jaringan lokal (intranet).
Kerugian:
Investasi besar, karena kita sendiri yang harus menyiapkan infrastrukturnya.Butuh tenaga kerja untuk merawat dan menjamin layanan berjalan dengan baik.
3. Hybrid Cloud
Adalah gabungan
dari
layanan Public Cloud dan
Private
Cloud yang diimplementasikan oleh suatu organisasi/perusahaan. Dalam Hybrid Cloud ini, kita bisa memilih proses bisnis mana yang bisa dipindahkan ke
Public Cloud
dan proses
bisnis mana yang harus tetap
berjalan di Private Cloud.
Contohnya:
Perusahaan A menyewa
layanan dari GoogleApp
Engine (Public Cloud) sebagai “rumah” yang dipakai
untuk aplikasi yang mereka
buat. Di negara tersebut ada aturan kalau data
nasabah dari sebuah perusahaan tidak boleh disimpan pada pihak ketiga. Untuk menaati peraturan yang ada, data
nasabah dari perusahaan A tetap disimpan pada database mereka sendiri (Private Cloud), dan aplikasi akan melakukan konektifitasnya ke database internal tersebut.
Perusahaan B menyewa layanan dari Office365 (Public Cloud). Karena perusahaan B
tersebut sudah mempunyai banyak user yang tersimpan di Active Directory yang berjalan di atas Windows Server mereka (Private Cloud), akan lebih efektif kalau Active Directory tersebut dijadikan identity untuk login ke Office365.
Keuntungan:
Keamanan data terjamin karena data dapat dikelola sendiri (hal ini TIDAK berarti penyimpan
data di public cloud tidak aman, ya).
Lebih leluasa untuk memilih mana proses bisnis yang harus tetap berjalan di
private
cloud
dan mana proses bisnis yang bisa dipindahkan ke public cloud dengan tetap menjamin integrasi dari keduanya.
Kerugian:
Untuk aplikasi yang membutuhkan integrasi antara public cloud dan
private cloud, infrastruktur internet
harus dipikirkan secara matang.
4. Community Cloud
Adalah layanan Cloud Computing yang dibangun
eksklusif untuk komunitas tertentu, yang
consumer-nya berasal dari organisasi yang mempunyai perhatian yang sama atas sesuatu/beberapa hal, misalnya saja standar keamanan, aturan, compliance, dsb. Community Cloud ini
bisa dimiliki, dipelihara, dan dioperasikan oleh satu atau lebih organisasi dari komunitas tersebut, pihak ketiga, ataupun kombinasi dari
keduanya.
Keuntungan:
Bisa bekerja sama dengan organisasi lain dalam komunitas yang
mempunyai kepentingan yang sama. Melakukan hal
yang sama bersama-sama tentunya lebih
ringan daripada
melakukannya sendiri.
Kerugian:
Ketergantungan antar organisasi jika tiap-tiap organisasi tersebut saling berbagi sumber daya.
Kesimpulan
Tulisan Pengantar Cloud Computing ini
diharapkan bisa memberikan gambaran awal
bagi Anda yang belum memahami mengenai Cloud Computing. Setelah Anda paham mengenai karakteristik, jenis layanan,
dan
deployment model dari cloud computing ini, Anda bisa
mulai untuk mendalami sesuai dengan ketertarikan masing-masing. Dalam perkembangannya banyak sekali penyedia layanan SaaS, PaaS ataupun IaaS yang bisa Anda pertimbangkan
untuk memenuhi kebutuhan anda.
Bagi end
user,
Anda
bisa
mendalami bagaimana memakai
layanan SaaS
sesuai dengan aplikasi yang Anda butuhkan karena tren ke depan akan semakin banyak aplikasi yang biasa Anda
gunakan
di desktop akan ada di cloud. Untuk
software
developer dan
software architect mulai sekarang
Anda
bisa mendalami bagaimana
memanfaatkan
layanan
PaaS untuk membuat aplikasi
yang Anda buat berjalan di cloud. Anda cukup fokus kepada aplikasi yang Anda buat,
dan biarkan
PaaS provider
memastikan
“rumah” yang nyaman untuk
aplikasi Anda. Jika Anda seorang SysAdmin,
IT Pro Anda bisa
mendalami IaaS karena Anda yang akan menyiapkan dan memelihara infrastruktur dari cloud.
Referensi
