Thursday, May 26, 2011

Cloud Computing

Akhir-akhir ini, cloud computing adalah topik yang selalu menjadi bahan pembicaraan di dunia Teknologi Informasi (TI). Hampir setiap hari selalu ada berita seputar cloud computing, baik secara teknologi maupun dari aspek bisnis. Apa sebenarnya Cloud Computing itu? Apakah hanya sekadar “hype”, atau memang sesuatu yang nyata? Dan apa dampaknya bagi kita semua?

Definisi Cloud Computing
Ketika kita membicarakan Cloud Computing, sebenarnya apakah kita membicarakan hal yang sama?
Banyak pihak memberikan definisi cloud computing dengan perbedaan di sana-sini. Wikipedia mendefinisikan cloud computing sebagai “komputasi berbasis Internet, ketika banyak server digunakan bersama untuk menyediakan sumber daya, perangkat lunak dan data pada komputer atau perangkat lain pada saat dibutuhkan, sama seperti jaringan listrik”. Gartner mendefinisikannya sebagai “sebuah cara komputasi ketika layanan berbasis TI yang mudah dikembangkan dan lentur disediakan sebagai sebuah layanan untuk pelanggan menggunakan teknologi Internet.” Forester mendefinisikannya sebagai “standar kemampuan TI, seperti perangkat lunak, platform aplikasi, atau infrastruktur, yang disediakan menggunakan teknologi Internet dengan cara swalayan dan bayar-per-pemakaian.” Secara sederhana, Cloud Computing dapat kita bayangkan seperti sebuah jaringan listrik. Apabila kita membutuhkan listrik, apakah kita harus punya pembangkit listrik sendiri? Tentu tidak. Kita tinggal menghubungi penyedia layanan (dalam hal ini, PLN), menyambungkan rumah kita dengan jaringan listrik, dan kita tinggal menikmati layanan tersebut. Pembayaran kita lakukan bulanan sesuai pemakaian.

Kalau listrik bisa seperti itu, mengapa layanan komputasi tidak bisa? Misalnya, apabila sebuah perusahaan membutuhkan aplikasi CRM (Customer Relationship Management). Kenapa perusahaan tersebut harus membeli aplikasi CRM, membeli hardware server, dan kemudian harus memiliki tim TI khusus untuk menjaga server dan aplikasi tersebut? Di sinilah cloud computing berperan. Penyedia jasa cloud computing seperti Microsoft, telah menyediakan aplikasi CRM yang dapat digunakan langsung oleh perusahaan tadi. Mereka tinggal menghubungi penyedia layanan (dalam hal ini, Microsoft), “menyambungkan” perusahaannya dengan layanan tersebut (dalam hal ini, melalui Internet), dan tinggal menggunakannya. Pembayaran? Cukup dibayar per bulan (atau per tahun, tergantung kontrak) sesuai pemakaian. Tidak ada lagi investasi di awal yang harus dilakukan.

Karakteristik Cloud Computing
Dengan semakin maraknya pembicaraan seputar cloud computing, semakin banyak perusahaan yang mengumumkan bahwa mereka menyediakan layanan cloud computing.
Akan sangat membingungkan bagi kita para pengguna untuk memastikan bahwa layanan yang akan kita dapatkan adalah cloud computing atau bukan.
Untuk mudahnya, dari semua definisi yang ada, dapat diintisarikan bahwa cloud computing ideal adalah layanan yang memiliki 5 karakteristik berikut ini.

1. On-Demand Self-Services
Sebuah layanan cloud computing harus dapat dimanfaatkan oleh pengguna melalui mekanisme swalayan dan langsung tersedia pada saat dibutuhkan. Campur tangan penyedia layanan adalah sangat minim. Jadi, apabila kita saat ini membutuhkan layanan aplikasi CRM (sesuai contoh di awal), maka kita harus dapat mendaftar secara swalayan dan layanan tersebut langsung tersedia saat itu juga.

2. Broad Network Access
Sebuah layanan cloud computing harus dapat diakses dari mana saja, kapan saja, dengan alat apa pun, asalkan kita terhubung ke jaringan layanan. Dalam contoh layanan aplikasi CRM di atas, selama kita terhubung ke jaringan Internet, saya harus dapat mengakses layanan tersebut, baik itu melalui laptop, desktop, warnet, handphone, tablet, dan perangkat lain.

3. Resource Pooling
Sebuah layanan cloud computing harus tersedia secara terpusat dan dapat membagi sumber daya secara efisien. Karena cloud computing digunakan bersama-sama oleh berbagai pelanggan, penyedia layanan harus dapat membagi beban secara efisien, sehingga sistem dapat dimanfaatkan secara maksimal.

4. Rapid Elasticity
Sebuah layanan cloud computing harus dapat menaikkan (atau menurunkan) kapasitas sesuai kebutuhan. Misalnya, apabila pegawai di kantor bertambah, maka kita harus dapat menambah user untuk aplikasi CRM tersebut dengan mudah. Begitu juga jika pegawai berkurang. Atau, apabila kita menempatkan sebuah website berita dalam jaringan cloud computing, maka apabila terjadi peningkatkan traffic karena ada berita penting, maka kapasitas harus dapat dinaikkan dengan cepat.

5. Measured Service
Sebuah layanan cloud computing harus disediakan secara terukur, karena nantinya akan digunakan dalam proses pembayaran. Harap diingat bahwa layanan cloud computing dibayar sesuai penggunaan, sehingga harus terukur dengan baik.

Kelebihan Cloud Computing
Dari semua penjelasan di atas, apa sebenarnya kelebihan dari Cloud Computing, terutama bagi dunia bisnis? Berikut beberapa di antaranya.

Tanpa Investasi Awal
Dengan cloud computing, kita dapat menggunakan sebuah layanan tanpa investasi yang signifikan di awal. Ini sangat penting bagi bisnis, terutama bisnis pemula (startup). Mungkin di awal bisnis, kita hanya perlu layanan CRM untuk 2 pengguna. Kemudian meningkat menjadi 10 pengguna. Tanpa model cloud computing, maka sejak awal kita sudah harus membeli hardware yang cukup untuk sekian tahun ke depan. Dengan cloud computing, kita cukup membayar sesuai yang kita butuhkan.

Mengubah CAPEX menjadi OPEX
Sama seperti kelebihan yang pertama, kelebihan yang kedua masih seputar keuangan. Tanpa cloud computing, investasi hardware dan software harus dilakukan di awal, sehingga kita harus melakukan pengeluaran modal (Capital Expenditure, atau CAPEX). Sedangkan dengan cloud computing, kita dapat melakukan pengeluaran operasional (Operational Expenditure, atau OPEX). Jadi, sama persis dengan biaya utilitas lainnya seperti listrik atau telepon ketika kita cukup membayar bulanan sesuai pemakaian. Hal ini akan sangat membantu perusahaan secara keuangan.

Lentur dan Mudah Dikembangkan
Dengan memanfaatkan Cloud Computing, bisnis kita dapat memanfaatkan TI sesuai kebutuhan.  Penggunaan TI secara bisnis biasanya tidak datar-datar saja. Dalam skenario “Predictable Bursting”, ada periode di mana penggunaan TI meningkat tajam. Contoh mudah adalah aplikasi Human Resource (HR) yang pada akhir bulan selalu meningkat penggunaannya karena mengelola gaji karyawan. Untuk skenario “Growing Fast”, bisnis meningkat dengan pesat sehingga kapasitas TI juga harus mengikuti. Contoh skenario “Unpredictable Bursting” adalah ketika sebuah website berita mendapat pengunjung yang melonjak karena ada berita menarik. Skenario “On and Off” adalah penggunaan TI yang tidak berkelanjutan. Misalnya, sebuah layanan pelaporan pajak, yang hanya digunakan di waktu-waktu tertentu setiap tahun.Tanpa layanan cloud computing, ke empat skenario ini akan membutuhkan perencanaan TI yang sangat tidak efisien, karena investasi TI harus dilakukan sesuai kapasitas tertinggi, walaupun mungkin hanya terjadi di saat-saat tertentu. Hal ini dilakukan untuk mencegah terjadi kegagalan layanan pada saat “peak time” tersebut. Dengan cloud computing, karena sifatnya yang lentur dan mudah dikembangkan (elastic and scalable), maka kapasitas dapat ditingkatkan pada saat dibutuhkan, dengan biaya penggunaan sesuai pemakaian.

Fokus pada Bisnis, bukan TI
Dengan menggunakan Cloud Computing, kita dapat fokus pada bisnis utama perusahaan, dan bukan berkecimpung di dalam pengelolaan TI. Hal ini dapat dilakukan karena pengelolaan TI dilakukan oleh penyedia layanan, dan bukan oleh kita sendiri. Misalnya, melakukan patching, security update, upgrade hardware, upgrade software, maintenance, dan lain-lain. Apabila kita memiliki tim TI, maka tim tersebut dapat fokus pada layanan TI yang spesifik untuk bisnis kita, sedangkan hal-hal umum sudah ditangani oleh penyedia layanan.

Software as a Service (SaaS)
Sebagai konsumen individual, kita sebenarnya sudah akrab dengan layanan cloud computing melalui Yahoo Mail, Hotmail, Google Search, Bing, atau MSN Messenger. Contoh lain yang cukup populer adalah Google Docs ataupun Microsoft Office Web Applications yang merupakan aplikasi pengolah dokumen berbasis internet. Di dunia bisnis, kita mungkin familiar dengan SalesForce.com atau Microsoft CRM yang merupakan layanan aplikasi CRM. Di sini, perusahaan tidak perlu setup hardware dan software CRM di server sendiri. Cukup berlangganan SalesForce.com maupun Microsoft CRM, kita bisa menggunakan aplikasi CRM kapan dan dari mana saja melalui internet. Kita tidak perlu melakukan investasi server maupun aplikasi. Kita juga akan selalu mendapat aplikasi terbaru jika terjadi upgrade. Intinya, kita benar-benar hanya tinggal menggunakan aplikasi tersebut. Pembayaran biasanya dilakukan bulanan, dan sesuai jumlah pemakai aplikasi tersebut. Dengan kata lain, pay as you go, pay per use, per seat. Nah, semua layanan ini, dimana suatu aplikasi software tersedia dan bisa langsung dipakai oleh seorang pengguna, termasuk ke dalam kategori Software as a Services (SaaS). Secara sederhana, kita langsung mengkonsumsi layanan aplikasi yang ditawarkan.

Platform as a Service (PaaS)
Sering terjadi, suatu aplikasi software yang sifatnya package tidak dapat memenuhi kebutuhan proses bisnis kita. Demikian pula dengan SaaS, di mana aplikasi yang ditawarkan sebagai layanan tidak sesuai dengan proses bisnis kita. Nah, pada skenario ini, kita dapat menggunakan jenis layanan yang disebut Platform as a Service (PaaS). Pada PaaS, kita membuat sendiri aplikasi software yang kita inginkan, termasuk skema database yang diperlukan. Skema itu kemudian kita pasang (deploy) di server-server milik penyedia jada PaaS. Penyedia jasa PaaS sendiri menyediakan layanan berupa platform, mulai dari mengatur server-server mereka secara virtualisasi sehingga sudah menjadi cluster sampai menyediakan sistem operasi di atasnya. Alhasil, kita sebagai pengguna hanya perlu memasang aplikasi yang kita buat di atasnya. Jika kita adalah perusahaan pembuat software, PaaS juga memberi alternatif lain. Alih-alih memasang software di server konsumen, kita bisa memasang software tersebut di server milik penyedia layanan PaaS, lalu menjualnya ke konsumen dalam bentuk langganan. Dengan kata lain, kita membuat sebuah SaaS. Singkatnya, dengan PaaS, kita membangun aplikasi kita sendiri di atas layanan PaaS tersebut. Adapun contoh vendor penyedia layanan Paas adalah Microsoft Azure dan Amazon Web Services.

Infrastructure as a Service (IaaS)
Ada kasus ketika konfigurasi yang disediakan oleh penyedia PaaS tidak sesuai dengan keinginan kita. Kita berniat menggunakan aplikasi yang memerlukan konfigurasi server yang unik dan tidak dapat dipenuhi oleh penyedia PaaS. Untuk keperluan seperti ini, kita dapat menggunakan layanan cloud computing tipe Infrastructure as a Service (IaaS). Pada IaaS, penyedia layanan hanya menyediakan sumber daya komputasi seperti prosesor, memori, dan storage yang sudah tervirtualisasi. Akan tetapi, penyedia layanan tidak memasang sistem operasi maupun aplikasi di atasnya. Pemilihan OS, aplikasi, maupun konfigurasi lainnya sepenuhnya berada pada kendali kita. Jadi, layanan IaaS dapat dilihat sebagai proses migrasi server-server kita dari on-premise ke data center millik penyedia IaaS ini. Para vendor cloud computing lokal rata-rata menyediakan layanan model IaaS ini, dalam bentuk Virtual Private Server.

SaaS, PaaS & IaaS: Kendali dan Tanggung Jawab
Perbedaan SaaS, PaaS dan IaaS dapat dilihat dari sisi kendali atau tanggung jawab yang dilakukan oleh vendor penyedia jasa layanan cloud maupun customer.  Mulai dari kanan, pada SaaS, seluruh stack merupakan tanggung jawab penyedia layanan cloud. Konsumen benar-benar hanya mengkonsumsi aplikasi yang disediakan. Pada PaaS, penyedia layanan cloud bertanggung jawab mengelola Networking hingga Runtime. Konsumen memiliki kendali dan bertanggung jawab membuat aplikasi dan juga skema database-nya. Pada IaaS, penyedia layanan Cloud bertanggung jawab untuk Networking hingga Virtualization. Konsumen sudah mulai bertanggung jawab untuk Operating System ke atas. Sebagai perbandingan, ditunjukkan arsitektur tradisional on-premise (bukan cloud), alias semua ada di data center kita. Di sini kita bertanggung jawab untuk seluruh stack, dari Networking hingga Application.

Kesimpulan
Kesimpulannya, dengan cloud computing konsumen membebaskan diri dari tanggung jawab untuk mengelola stack sumber daya komputasi. Levelnya mulai dari SaaS ketika kita benar-benar bebas, PaaS ketika kita masih harus membuat aplikasi, dan IaaS di mana kita juga masih harus sibuk dengan Operating System. Ini berbeda dengan On-Premise di mana kita harus mengurus semua sendiri. Cloud computing sudah hadir saat ini, termasuk di Indonesia. Jadi, cloud computing bukanlah sebuah hype, melainkan sudah menjadi kenyataan dalam dunia TI. Bukan berarti kita semua langsung harus berpindah saat ini juga: pada kenyataannya cloud computing bukanlah untuk semua orang. Masih tetap terdapat jenis-jenis layanan yang memang harus dilakukan secara on-premise, walaupun terdapat juga layanan yang menjadi sangat efisien bila dilakukan dengan cloud computing. Beberapa jenis layanan bahkan dapat dilakukan secara bersamaan (hybrid) dengan menggabungkan kedua jenis implementasi tersebut.

Oleh karena itu, carilah penyedia layanan yang dapat memberikan saran yang tepat dan terbaik bagi kebutuhan anda. Kesuksesan penggunaan cloud computing akan sangat ditentukan oleh kemampuan penyedia layanan dalam memberikan layanan yang tepat dan terbaik bagi pelanggan.

4 comments:

  1. Wah,artikel yang jelas nih ngebahas cloud computingnya...bisa jadi referensi nih :D
    oh ya salah satu perusahaan yang bergerak di jasa penyediaan cloud computing www.telkomcloud.com

    ReplyDelete
    Replies
    1. Okay,,.. makasih yah commentnya... sering-sering mampir ya mba.

      Delete
  2. Yeah bookmaking this wasn't a bad determination outstanding post!


    Here is my web site - 오피
    (jk)

    ReplyDelete