a. Pengertian
Cloud Computing (komputasi awan)
merupakan gabungan pemanfaatan teknologi komputer (komputasi) dalam suatu
jaringan dengan pengembangan berbasis internet (awan) yang mempunyai fungsi
untuk menjalankan program atau aplikasi melalui komputer – komputer yang
terkoneksi pada waktu yang sama, tetapi tak semua yang terkonekasi melalui
internet menggunakan cloud computing. Teknologi komputer berbasis sistem Cloud
ini merupakan sebuah teknologi yang menjadikan internet sebagai pusat server
untuk mengelola data dan juga aplikasi pengguna. Teknologi ini mengizinkan para
pengguna untuk menjalankan program tanpa instalasi dan mengizinkan pengguna
untuk mengakses data pribadi mereka melalui komputer dengan akses internet.
Cloud computing bisa dianggap sebagai
perluasan dari virtualisasi. Perusahaan bisa menempatkan aplikasi atau sistem
yang digunakan di internet, tidak mengelolanya secara internal. Contoh cloud
computing untuk versi public adalah layanan-layanan milik Google seperti Google
Docs dan Google Spreadsheet. Adanya kedua layanan tersebut meniadakan kebutuhan
suatu aplikasi office untuk pengolah kata dan aplikasi spreadsheet di internal
perusahaan. Contoh cloud computing untuk keperluan non public adalah Amazon EC2
( Amazon Elastic Compute Cloud ). Amazon menyediakan komputer induk, kita bisa
mengirim dan menggunakan sistem virtual dan menggunakannya dalam jangka waktu
dan biaya sewa tertentu.
b.
Virtualisasi
Virtualisasi bisa diartikan sebagai
pembuatan suatu bentuk atau versi virtual dari sesuatu yang bersifat fisik,
misalnya sistem operasi, perangkat
storage/penyimpanan data atau sumber daya jaringan. Virtualisasi bisa
diimplementasikan kedalam berbagai bentuk, antara lain (Harry Sufehmi, Pengenalan
Virtualisasi, 20090607) :
·
Network
Virtualization : VLAN, Virtual IP (untclustering), Multilink
·
Memory
Virtualization : pooling memory dari node-node di cluster
·
Grid
Computing : banyak komputer = satu
·
Application
Virtualization : Dosemu, Wine
·
Storage
Virtualization : RAID, LVM
·
Platform
Virtualization : virtual computer
KEUNTUNGAN PENGGUNAAN VIRTUALISASI
1. Pengurangan Biaya Investasi Hardware.
Investasi hardware dapat ditekan lebih rendah karena virtualisasi hanya
mendayagunakan kapasitas yang sudah ada. Tak perlu ada penambahan perangkat
komputer, server dan pheriperal secara fisik. Kalaupun ada penambahan kapasitas
harddisk dan memori, itu lebih ditujukan untuk mendukung stabilitas kerja
komputer induk, yang jika dihitung secara finansial, masih jauh lebih hemat
dibandingkan investasi hardware baru.
2. Kemudahan Backup & Recovery.
Server-server yang dijalankan didalam sebuah mesin virtual dapat disimpan dalam
1 buah image yang berisi seluruh konfigurasi sistem. Jika satu saat server
tersebut crash, kita tidak perlu melakukan instalasi dan konfigurasi ulang.
Cukup mengambil salinan image yang sudah disimpan, merestore data hasil backup
terakhir dan server berjalan seperti sedia kala. Hemat waktu, tenaga dan sumber
daya.
3. Kemudahan Deployment. Server virtual
dapat dikloning sebanyak mungkin dan dapat dijalankan pada mesin lain dengan
mengubah sedikit konfigurasi. Mengurangi beban kerja para staff IT dan
mempercepat proses implementasi suatu sistem
4. Mengurangi Panas. Berkurangnya jumlah
perangkat otomatis mengurangi panasnya ruang server/data center. Ini akan
berimbas pada pengurangan biaya pendinginan/AC dan pada akhirnya mengurangi
biaya penggunaan listrik
5. Mengurangi Biaya Space. Semakin
sedikit jumlah server berarti semakin sedikit pula ruang untuk menyimpan
perangkat. Jika server ditempatkan pada suatu co-location server/data center,
ini akan berimbas pada pengurangan biaya sewa
6. Kemudahan Maintenance &
Pengelolaan. Jumlah server yang lebih sedikit otomatis akan mengurangi waktu
dan biaya untuk mengelola. Jumlah server yang lebih sedikit juga berarti lebih
sedikit jumlah server yang harus ditangani
7. Standarisasi Hardware. Virtualisasi
melakukan emulasi dan enkapsulasi hardware sehingga proses pengenalan dan
pemindahan suatu spesifikasi hardware tertentu tidak menjadi masalah. Sistem
tidak perlu melakukan deteksi ulang hardware sebagaimana instalasi pada
sistem/komputer fisik
8. Kemudahan Replacement. Proses
penggantian dan upgrade spesifikasi server lebih mudah dilakukan. Jika server
induk sudah overload dan spesifikasinya tidak mencukupi lagi, kita bisa dengan
mudah melakukan upgrade spesifikasi atau memindahkan virtual machine ke server
lain yang lebih powerful
KERUGIAN PENGGUNAAN VIRTUALISASI
1. Satu Pusat Masalah. Virtualisasi bisa
dianalogikan dengan menempatkan semua telur didalam 1 keranjang. Ini artinya
jika server induk bermasalah, semua sistem virtual machine didalamnya tidak
bisa digunakan. Hal ini bisa diantisipasi dengan menyediakan fasilitas backup
secara otomatis dan periodik atau dengan menerapkan prinsip fail
over/clustering
2. Spesifikasi Hardware. Virtualisasi
membutuhkan spesifikasi server yang lebih tinggi untuk menjalankan server induk
dan mesin virtual didalamnya
3. Satu Pusat Serangan. Penempatan semua
server dalam satu komputer akan menjadikannya sebagai target serangan. Jika
hacker mampu menerobos masuk kedalam sistem induk, ada kemungkinan ia mampu
menyusup kedalam server- server virtual dengan cara menggunakan informasi yang
ada pada server induk
c.
Database yang terintegrasi dalam Cloud Computing
NoSQL
adalah sebuah konsep mengenai penyimpanan data non-relasional. Berbeda dengan
model basis data relasional yang selama ini digunakan, NoSQL menggunakan
beberapa metode yang berbeda-beda ( Wikipedia ). Metode ini bergantung dari
jenis database yang digunakan. Karena NoSQL sendiri merupakan konsep database,
dan pada implementasinya, banyak jenis-jenis dari NoSQL ini.
NoSQL sangat berguna pada data-data yang terus-menerus
berkembang, dimana data tersebut sangat kompleks
sehingga sebuah database relational tidak lagi bisa mengakomodir. Salah satu
bentuknya adalah ketika suatu data saling berhubungan satu sama lain, maka akan
muncul proses duplikasi data. Dimana data saling memanggil ke beberapa
permintaan, tambahan data baru, perubahan data, dan lain-lain dengan key yang
sama. Karena faktor hubungan antar data yang sama terjadi terus-menerus,
mendorong faktor redudansi data, data menjadi berlipat-lipat, dan pada akhirnya
akan menyebabkan crash pada database berkonsep RDBMS.
Harus ada cara lain untuk menanggulangi masalah ini, dan NoSQL lah solusinya. NoSQL
menyederhanakan proses yang terjadi dalam sistem basis data relasional. Dimana
hal-hal yang menyebabkan redudansi, dihilangkan sehingga trafik server akan
seimbang. Penyederhanaan proses ini memungkinkan data direplikasi di banyak
server secara mudah dan menjamin ketersediaan data.
d.
Komputasi Terdistribuasi dalam Cloud
Cloud computing adalah teknologi yang memberikan berbagai
jenis sumber daya sebagai layanan, terutama melalui internet, sedangkan
komputasi terdistribusi adalah konsep menggunakan sistem terdistribusi terdiri
dari banyak node diatur sendiri untuk memecahkan masalah yang sangat besar
(yang biasanya sulit untuk diselesaikan dengan satu komputer). Cloud computing
pada dasarnya adalah penjualan dan model distribusi untuk berbagai jenis sumber
daya melalui internet, sedangkan komputasi terdistribusi dapat diidentifikasi
sebagai jenis komputasi, yang menggunakan sekelompok mesin untuk bekerja
sebagai satu kesatuan untuk memecahkan masalah skala besar. Komputasi
terdistribusi mencapai hal ini dengan memecah masalah ke tugas sederhana, dan
menugaskan tugas-tugas ke node individu.
e.
Map Reduce
MapReduce
pun punya definisi. MapReduce adalah model pemrograman rilisan Google yang
ditujukan untuk memproses data berukuran raksasa secara terdistribusi dan
paralel dalam cluster yang terdiri atas ribuan komputer. Dalam memproses data,
secara garis besar MapReduce dapat dibagi dalam dua proses yaitu proses Map dan
proses Reduce. Kedua jenis proses ini didistribusikan atau dibagi-bagikan ke
setiap komputer dalam suatu cluster (kelompok komputer yang salih terhubung)
dan berjalan secara paralel tanpa saling bergantung satu dengan yang lainnya.
Proses Map bertugas untuk mengumpulkan informasi dari potongan-potongan data
yang terdistribusi dalam tiap komputer dalam cluster. Hasilnya diserahkan
kepada proses Reduce untuk diproses lebih lanjut. Hasil proses Reduce merupakan
hasil akhir yang dikirim ke pengguna.
f.
Komputasi Greed
Grid computing merupakan salah satu jenis dari komputasi
modern. Grid computing adalah arsitektur TI baru yang menghasilkan sistem informasi
perusahaan yang berbiaya rendah dan lebih adaptif terhadap dinamika bisnis.
Dengan grid computing, sejumlah komponen hardware dan software yang modular dan
independen akan dapat dikoneksikan dan disatukan untuk memenuhi tuntutan
kebutuhan bisnis. Lebih jauh, dari sisi ekonomi, implementasi grid computing
berarti membangun pusat komputasi data yang tangguh dengan struktur biaya
variatif yang bias disesuaikan dengan kebutuhan.
Secara singkat, grid computing berarti menyatukan seluruh
sumberdaya TI ke dalam sekumpulan layanan yang bisa digunakan secara
bersama-sama untuk memenuhi kebutuhan komputing perusahaan. Infrastruktur grid
computing secara kontinyu menganalisa permintaan terhadap sumberdaya dan
mengatur suplai untuk disesuaikan terhadap permintaan tersebut. Dimana data
disimpan atau computer mana yang memproses permintaan tidak perlu dipikirkan.
Sebagaimana arus listrik; untuk memanfaatkannya, tempat pembangkit atau
bagaimana pengabelan jaringan listrik tidak perlu diketahui. Dalam
menyelesaikan masalah system monolitik dan sumberdaya yang terfragmentasi, grid
computing bertujuan menciptakan keseimbangan antara pengaturan suplai
sumberdaya dan kontrol yang fleksibel. Sumberdaya TI yang dikelola dalam grid
mencakup:
Konsep Grid Computing :
a. 1. Sumberdaya Infrastruktur
Mencakup hardware seperti penyimpan, prosesor, memori, dan
jaringan; juga software yang didisain untuk mengelola hardware ini, seperti
database, manajemen penyimpan, manajemen sistem, server aplikasi dan system
operasi.
b. 2. Sumberdaya Aplikasi
Adalah perwujudan logika bisnis dan arus proses dalam
software aplikasi. Sumberdaya yang dimaksud bisa berupa aplikasi paket atau
aplikasi buatan, ditulis dalam bahasa pemrograman, dan merefleksikan tingkat
kompleksitas. Sebagai contoh, software yang mengambil pesanan dari seorang
pelanggan dan mengirimkan balasan, proses yang mencetak slip gaji, dan logika
yang menghubungkan telepon dari pelanggan tertentu kepada pihak tertentu pula.
3. Prinsip
Kerja Grid Computing
Dua prinsip
kerja utama grid computing yang membedakannya dari arsitektur komputasi yang
lain, semisal mainframe, klien-server, atau multi-tier: virtualisasi dan
provisioning.
4.irtualisasi
Setiap
sumberdaya (semisal komputer, disk, komponen aplikasi dan sumber informasi)
dikumpulkan bersama-sama menurut jenisnya, lalu disediakan bagi konsumen
(semisal orang atau program software). Virtualisasi berarti meniadakan koneksi
secara fisik antara penyedia dan konsumen sumberdaya, dan menyiapkan sumberdaya
untuk memenuhi kebutuhan tanpa konsumen mengetahui bagaimana permintaannya bisa
terlayani.
5.Provisioning
Ketika
konsumen meminta sumberdaya melalui layer virtualisasi, sumberdaya tertentu di
belakang layer didefinisikan untuk memenuhi permintaan tersebut, dan kemudian
dialokasikan ke konsumen. Provisioning sebagai bagian dari grid computing
berarti bahwa system menentukan bagaimana cara memenuhi kebutuhan konsumen
seiring dengan mengoptimasi jalannya sistem secara keseluruhan.