Dalam tulisan terdahulu, sudah sedikit disinggung mengenai karakteristik dan jenis-jenis dari Cloud Computing, dan juga sejarah kemunculannya. Tulisan kali ini akan berbicara sedikit lebih dalam tentang berbagai aspek teknis dari Cloud Computing itu sendiri.
Seperti juga sudah disinggung sebelumnya, bahwa sampai saat ini paradigma cloud computing ini masih berevolusi, dan masih menjadi subyek perdebatan yang melibatkan akademisi, vendor teknologi informasi, badan pemerintah, dan pihak-pihak terkait lainnya.
Dan untuk memberikan satu common ground bagi publik, pemerintah Amerika melalui National Institut of Science and Technology (NIST) sebagai bagian dari Departemen Perdagangan Amerika, telah membuat beberapa rekomendasi standar tentang berbagai aspek dari Cloud Computing untuk dijadikan referensi. Sebagian besar isi artikel ini diambil dari dokumentasi NIST tersebut.
Kriteria Cloud Computing
Seperti sudah sedikit dijelaskan dalam tulisan terdahulu, bahwa tidak semua aplikasi berbasis web dapat dimasukkan ke dalam kategori cloud computing. NIST menetapkan setidaknya lima kriteria yang harus dipenuhi oleh sebuah sistem untuk bisa di masukkan dalam keluarga cloud computing, yaitu :
1. Swalayan (On Demand Self Service)
Seorang pelanggan dimungkinkan untuk secara langsung "memesan" sumber daya yang dibutuhkan, seperti processor time dan kapasitas penyimpanan melalui control panel elektronis yang disediakan. Jadi tidak perlu berinteraksi dengan personil customer service jika perlu menambah atau mengurangi sumberdaya komputasi yang diperlukan.
2. Akses Pita Lebar (Broadband Network Access)
Layanan yang tersedia terhubung melalui jaringan pita lebar, terutama untuk dapat diakses secara memadai melalui jaringan internet, baik menggunakan thin client, thick client ataupun media lain seperti smartphone.
3. Sumberdaya Terkelompok (Resource pooling)
Penyedia layanan cloud, memberikan layanan melalui sumberdaya yang dikelompokkan di satu atau berbagai lokasi date center yang terdiri dari sejumlah server dengan mekanisme multi-tenant. Mekanisme multi-tenant ini memungkinkan sejumlah sumberdaya komputasi tersebut digunakan secara bersama-sama oleh sejumlah user, di mana sumberdaya tersebut baik yang berbentuk fisik maupun virtual, dapat dialokasikan secara dinamis untuk kebutuhan pengguna/pelanggan sesuai permintaan.
Dengan demikian, pelanggan tidak perlu tahu bagaimana dan darimana permintaan akan sumberdaya komputasinya dipenuhi oleh penyedia layanan. Yang penting, setiap permintaan dapat dipenuhi. Sumberdaya komputasi ini meliputi media penyimpanan, memory, processor, pita jaringan dan mesin virtual.
4. Elastis (Rapid elasticity)
Kapasitas komputasi yang disediakan dapat secara elastis dan cepat disediakan, baik itu dalam bentuk penambahan ataupun pengurangan kapasitas yang diperlukan. Untuk pelanggan sendiri, dengan kemampuan ini seolah-olah kapasitas yang tersedia tak terbatas besarnya, dan dapat "dibeli" kapan saja dengan jumlah berapa saja.
5. Layanan Yang Terukur (Measured Service)
Sumberdaya cloud yang tersedia harus dapat diatur dan dioptimasi penggunaannya, dengan suatu sistem pengukuran yang dapat mengukur penggunaan dari setiap sumberdaya komputasi yang digunakan (penyimpanan, memory, processor, lebar pita, aktivitas user, dan lainnya). Dengan demikian, jumlah sumberdaya yang digunakan dapat secara transparan diukur yang akan menjadi dasar bagi user untuk membayar biaya penggunaan layanan.
Dari sisi jenis layanan cloud sendiri, sampai saat ini para pemain di area ini sepakat untuk membagi jenis layanan cloud computing ke dalam tiga jenis layanan, yaitu:
1. Software as a Service (SaaS).
SaaS ini merupakan layanan Cloud Computing yang paling dahulu populer. Software as a Service ini merupakan evolusi lebih lanjut dari konsep ASP (Application Service Provider). Sesuai namanya, SaaS memberikan kemudahan bagi pengguna untuk bisa memanfaatkan sumberdaya perangkat lunak dengan cara berlangganan. Sehingga tidak perlu mengeluarkan investasi baik untuk in house development ataupun pembelian lisensi.
Dengan cara berlangganan via web, pengguna dapat langsung menggunakan berbagai fitur yang disediakan oleh penyedia layanan. Hanya saja dengan konsep SaaS ini, pelanggan tidak memiliki kendali penuh atas aplikasi yang mereka sewa. Hanya fitur-fitur aplikasi yang telah disediakan oleh penyedia saja yang dapat disewa oleh pelanggan.
Dan karena arsitektur aplikasi SaaS yang bersifat multi tenant, memaksa penyedia untuk hanya menyediakan fitur yang bersifat umum, tidak spesifik terhadap kebutuhan pengguna tertentu. Meskipun demikian, kustomisasi tidak serta-merta diharamkan, meskipun hanya untuk skala dan fungsi yang terbatas.
Tapi dengan berkembangnya pasar dan kemajuan teknologi pemrograman, keterbatasan-keterbatasan itu pasti akan berkurang dalam waktu tidak terlalu lama. Untuk contoh layanan SaaS, tentu saja kita harus menyebut layanan CRM online Salesforce.com--yang dikomandai Marc Benioff dan telah menjadi ikon SaaS ini.
Selain itu Zoho.com, dengan harga yang sangat terjangkau, menyediakan layanan SaaS yang cukup beragam, dari mulai layanan word processor seperti Google Docs, project management, hingga invoicing online. Layanan akunting online pun tersedia, seperti yang diberikan oleh Xero.com dan masih banyak lagi. IBM dengan Lotuslive.com nya dapat dijadikan contoh untuk layanan SaaS di area kolaborasi/unified communication.
Sayangnya untuk pasar dalam negeri sendiri, seperti sudah saya sampaikan dalam tulisan terdahulu, masih sangat sedikit yang mau berinvestasi untuk menyediakan layanan SaaS ini.
2. Platform as a Service (PaaS)
Seperti namanya, PaaS adalah layanan yang menyediakan modul-modul siap pakai yang dapat digunakan untuk mengembangkan sebuah aplikasi, yang tentu saja hanya bisa berjalan diatas platform tersebut.
Seperti juga layanan SaaS, pengguna PaaS tidak memiliki kendali terhadap sumber daya komputasi dasar seperti memory, media penyimpanan, processing power dan lain-lain, yang semuanya diatur oleh provider layanan ini.
Pionir di area ini adalah Google AppEngine, yang menyediakan berbagai tools untuk mengembangkan aplikasi di atas platform Google, dengan menggunakan bahasa pemrograman Phyton dan Django.
Kemudian Salesforce juga menyediakan layanan PaaS melalui Force.com, menyediakan modul-modul untuk mengembangkan aplikasi diatas platform Salesforce yang menggunakan bahasa Apex.
Dan mungkin yang jarang sekali kita ketahui, bahwa Facebook juga bisa dianggap menyediakan layanan PaaS, yang memungkinkan kita untuk membuat aplikasi diatasnya. Salah satu yang berhasil menangguk untung besar dari layanan PaaS Facebook adalah perusahaan bernama Zynga, yang tahun lalu saja berhasil meraup keuntungan bersih lebih dari US$ 100 juta, lebih besar dari keuntungan yang didapat oleh Facebook sendiri.
Anda mungkin akan sedikit terkejut kalau saya beritahu bahwa Zynga ini bisa untung besar dari aplikasi yang sama sekali tidak serius, tapi mengandung zat adiktif luar biasa yaitu: Farmville, yang hingga kini telah berhasil menjadikan 80 juta lebih penduduk Facebook menjadi petani yang rajin mencangkul, menanam dan panen serta memerah susu sapi demi keuntungan mereka.
3. Infrastructure as a Service (IaaS).
IaaS terletak satu level lebih rendah dibanding PaaS. Ini adalah sebuah layanan yang "menyewakan" sumberdaya teknologi informasi dasar, yang meliputi media penyimpanan, processing power, memory, sistem operasi, kapasitas jaringan dan lain-lain, yang dapat digunakan oleh penyewa untuk menjalankan aplikasi yang dimilikinya.
Model bisnisnya mirip dengan penyedia data center yang menyewakan ruangan untuk co-location, tapi ini lebih ke level mikronya. Penyewa tidak perlu tahu, dengan mesin apa dan bagaimana caranya penyedia layanan menyediakan layanan IaaS. Yang penting, permintaan mereka atas sumberdaya dasar teknologi informasi itu dapat dipenuhi.
Perbedaan mendasar dengan layanan data center saat ini adalah IaaS memungkinkan pelanggan melakukan penambahan/pengurangan kapasitas secara fleksibel dan otomatis. Salah satu pionir dalam penyediaan IaaS ini adalah Amazon.com yang meluncurkan Amazon EC2 (Elastic Computing Cloud).
Layanan Amazon EC2 ini menyediakan berbagai pilihan persewaan mulai CPU, media penyimpanan, dilengkapi dengan sistem operasi dan juga platform pengembangan aplikasi yang bisa disewa dengan perhitungan jam-jaman. Untuk di dalam negeri sendiri, rencananya ada beberapa provider yang akan menyediakan layanan sejenis mulai pertengahan tahun ini.
Setelah karakteristik dan jenis layanan, sekarang kita berlanjut ke tipe-tipe penerapan (deployment) dari layanan Cloud Computing, yang terbagi menjadi empat jenis penerapan, yaitu:
1. Private cloud
Di mana sebuah infrastruktur layanan cloud, dioperasikan hanya untuk sebuah organisasi tertentu. Infrastruktur cloud itu bisa saja dikelola oleh si organisasi itu atau oleh pihak ketiga. Lokasinya pun bisa on-site ataupun off-site. Biasanya organisasi dengan skala besar saja yang mampu memiliki/mengelola private cloud ini.
2. Community cloud
Dalam model ini, sebuah infrastruktur cloud digunakan bersama-sama oleh beberapa organisasi yang memiliki kesamaan kepentingan, misalnya dari sisi misinya, atau tingkat keamanan yang dibutuhkan, dan lainnya.
Jadi, community cloud ini merupakan "pengembangan terbatas" dari private cloud. Dan sama juga dengan private cloud, infrastruktur cloud yang ada bisa di-manage oleh salah satu dari organisasi itu, ataupun juga oleh pihak ketiga.
3. Public cloud
Sesederhana namanya, jenis cloud ini diperuntukkan untuk umum oleh penyedia layanannya. Layanan-layanan yang sudah saya sebutkan sebelumnya dapat dijadikan contoh dari public cloud ini.
4. Hybrid cloud
Untuk jenis ini, infrastruktur cloud yang tersedia merupakan komposisi dari dua atau lebih infrastruktur cloud (private, community, atau public). Di mana meskipun secara entitas mereka tetap berdiri sendiri-sendiri, tapi dihubungkan oleh suatu teknologi/mekanisme yang memungkinkan portabilitas data dan aplikasi antar cloud itu. Misalnya, mekanisme load balancing yang antarcloud, sehingga alokasi sumberdaya bisa dipertahankan pada level yang optimal.
Demikian sedikit penjelasan dari model-model cloud yang disarikan dari NIST. Namun seperti diakui oleh lembaga ini, definisi dan batasan dari Cloud Computing sendiri masih mencari bentuk dan standarnya. Di mana nanti pasarlah yang akan menentukan model mana yang akan bertahan dan model mana yang akan mati.
Namun semua sepakat bahwa cloud computing akan menjadi masa depan dari dunia komputasi. Bahkan lembaga riset bergengsi Gartner Group juga telah menyatakan bahwa Cloud Computing adalah wacana yang tidak boleh dilewatkan oleh seluruh pemangku kepentingan di dunia TI, mulai saat ini dan dalam beberapa waktu mendatang.
Mochamad James Falahuddin, praktisi teknologi informasi
Friday, March 5, 2010
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment