Pada artikel kali ini ataupun tugas kali
ini saya akan membahas tentang Pengantar Komputasi Cloud, berikut saya akan
menjelaskannya secara detail :
A. Pendahuluan
· Pengertian
Cloud Computing
(komputasi awan) merupakan pemanfaatan teknologi computer oleh pengguna dengan
menjalankan sebuah aplikasi yang tidak berada di computer yang digunakannya,
namun file – file tersebut berada di computer lain yang dihubungkan dengan
internet. Dengan kata lain, cloud computing merupakan sebuah layanan dimana
informasinya disimpan di server secara permanen dan disimpan di computer client
secara temporary. Beberapa contoh penggunaan cloud computing antara lain :
email service, facebook, google apps,dll.
Cloud computing
merupakan gabungan antara virtualisasi dan grid computing. Di dalam cloud
computing dikenal istilah front-end (desktop-PC) dan back-end(server).
Front-end dan back-end harus saling terhubung di dalam sebuah jaringan
internet. Front-end mengambil data dan menjalankan aplikasi dari back-end.
Back-end merupakan sumber yang diistilahkan dengan cloud(awan).
· Kelebihan
Cloud Computing
a) Keuntungan
bagi para pelaku bisnis adalah minimalisasi biaya investasi infrastruktur
publik sehingga bisnis bisa lebih terfokus pada aspek fungsionalitasnya.
b) Bagi
application developer, layanan PaaS memungkinkan pengembangan dan implementasi
aplikasi dengan cepat sehingga meningkatkan produktivitas.
c) Bagi
para praktisi yang bergerak di industri TI, hal ini berarti terbukanya pasar
baru bagi industri jasa pengembangan teknologi informasi.
d) Bagi
pebisnis di bidang infrastruktur, hal ini merupakan peluang yang besar karena
dengan meningkatnya penggunaan layanan SaaS ini akan meningkatkan penggunaaan
bandwidth internet.
e) Integrasi
aplikasi dengan berbagai perangkat
· Kekurangan
Cloud Computing
a. Service
level, artinya kemungkinan service performance yang kurang konsisten dari
provider. Inkonsistensi cloud provider ini meliputi, data protection dan data
recovery.
b. Privacy,
yang berarti adanya resiko data user akan diakses oleh orang lain karena hosting
dilakukan secara bersama-sama.
c. Compliance,
yang mengacu pada resiko adanya penyimpangan level compliance dari provider
terhadap regulasi yang diterapkan oleh user.
d. Data
ownership mengacu pada resiko kehilangan kepemilikan data begitu data disimpan
dalam cloud.
e. Data
mobility, yang mengacu pada kemungkinan share data antar cloud service dan cara
memperoleh kembali data jika suatu saat user melakukan proses terminasi
terhadap layanan cloud Computing.
B. Pengantar
Komputasi Grid
· Pengertian
Komputasi Grid adalah
penggunaan sumber daya yang melibatkan banyak komputer yang terdistribusi dan
terpisah secara geografis untuk memecahkan persoalan komputasi dalam skala
besar.
· Konsep
Dasar Grid Computing
Beberapa konsep dasar
dari grid computing :
o
Sumber daya dikelola dan dikendalikan
secara lokal.
o Sumber daya berbeda dapat mempunyai
kebijakan dan mekanisme berbeda, mencakup Sumber daya komputasi dikelola oleh
sistem batch berbeda, Sistem storage berbeda pada node berbeda, Kebijakan
berbeda dipercayakan kepada user yang sama pada sumber daya berbeda pada Grid.
o
Sifat alami dinamis: Sumber daya dan
pengguna dapat sering berubah
o
Lingkungan kolaboratif bagi e-community
(komunitas elektronik, di internet)
o Tiga hal yang di-,sharing dalam sebuah
sistem grid, antara lain : Resource, Network dan Proses. Kegunaan / layanan
dari sistem grid sendiri adalah untuk melakukan high throughput computing
dibidang penelitian, ataupun proses komputasi lain yang memerlukan banyak
resource komputer.
· Cara
Kerja Kompputasi Grid
Menurut tulisan singkat
oleh Ian Foster ada check-list yang dapat digunakan untuk mengidentifikasi
bahwa suatu sistem melakukan komputasi grid yaitu :
o
Sistem tersebut melakukan koordinasi
terhadap sumberdaya komputasi yang tidak berada dibawah suatu kendali terpusat.
Seandainya sumber daya yang digunakan berada dalam satu cakupan domain
administratif, maka komputasi tersebut belum dapat dikatakan komputasi grid.
o
Sistem tersebut menggunakan standard dan
protokol yang bersifat terbuka (tidak terpaut pada suatu implementasi atau
produk tertentu). Komputasi grid disusun dari kesepakatan-kesepakatan terhadap
masalah yang fundamental, dibutuhkan untuk mewujudkan komputasi bersama dalam
skala besar. Kesepakatan dan standar yang dibutuhkan adalah dalam bidang
autentikasi, otorisasi, pencarian sumberdaya, dan akses terhadap sumber daya.
o
Sistem tersebut berusaha untuk mencapai
kualitas layanan yang canggih, (nontrivial quality of service) yang jauh diatas
kualitas layanan komponen individu dari komputasi grid tersebut.
Kemudian hal yang tidak
boleh dilupakan adalah mengenai keberadaan dari elemen-elemen dari grid
computing, elemen ini tidak bisa dilepaskan dari grid computing. Elemen grid
computing adalah berikut :
o
Hardware
o
Software
o
Brainware
· Kelebihan
dan Kekurangan Komputasi Grid
Penggunaan Grid
Computing System untuk perusahaan-perusahaan akan banyak memberikan manfaat,
baik manfaat secara langsung maupun tidak langsung. Beberapa manfaat tersebut
antara lain :
o Grid computing menjanjikan peningkatan
utilitas, dan fleksibilitas yang lebih besar untuk sumberdaya infrastruktur,
aplikasi dan informasi. Dan juga menjanjikan peningkatan produktivitas kerja
perusahaan.
o
Grid computing bisa memberi penghematan
uang, baik dari sisi investasi modal maupun operating cost–nya.
Dan beberapa hambatan
yang dialami oleh masyarakat Indonesia dalam mengaplikasikan teknologi grid
computing adalah sebagai berikut :
o Manajemen institusi yang terlalu
birokratis menyebabkan mereka enggan untuk merelakan fasilitas yang dimiliki
untuk digunakan secara bersama agar mendapatkan manfaat yan lebih besar bagi
masyarakat luas.
o Masih sedikitnya Sumber Daya Manusia
yang kompeten dalam mengelola grid computing. Contonhya kurangnya pengetahuan
yang mencukupi bagi teknisi IT maupun user non teknisi mengenai manfaat dari
grid computing itu sendiri.
C. Virtualisasi
Virtualisasi
merupakan teknologi yang memungkinkan pengguna untuk membuat versi virtual dari
sesuatu yang bersifat fisik, seperti system operasi, penyimpanan data atau
sumber daya jaringan. Istilah virtualisasi merupakan pemisahan sumber daya
computer yang terdiri atas jaringan, penyimpanan dan server. Virtualisasi
menyembunyikan karakteristik fisik sumber daya komputasi ke pengguna.
Sebuah
physical resources (sebuah server/aplikasi/penyimpanan) dapat terlihat seperti
beberapa resources virtual dan begitu pun sebaliknya. Berikut ini adalah
beberapa teknologi virtual : virtualisasi storage, virtualisasi komputasi dan
virtualisasi network.
Dalam
cloud computing selain ada proses virtualisasi,juga terdapat grid computing,
dimana seluruh beban proses komputasi yang ada akan didistribusikan ke berbagai
server yang saling terhubung di dalam cloud, sehingga prosesnya akan jauh lebih
ringan.
KEUNTUNGAN
PENGGUNAAN VIRTUALISASI
o
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.
o
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.
o
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
o
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
o
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
o
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
o 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
o 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
o 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
o Spesifikasi Hardware. Virtualisasi
membutuhkan spesifikasi server yang lebih tinggi untuk menjalankan server induk
dan mesin virtual didalamnya
o 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.
D. Distributed
Computation dalam Cloud Computing
Komputasi
terdistribusi merupakan bidang ilmu komputer yang mempelajari sistem
terdistribusi. Sebuah sistem terdistribusi terdiri dari beberapa komputer
otonom yang berkomunikasi melalui jaringan komputer. Komputer yang saling
berinteraksi untuk mencapai tujuan bersama. Suatu program komputer yang
berjalan dalam sistem terdistribusi disebut program didistribusikan, dan didistribusikan
pemrograman adalah proses menulis program tersebut. Distributed computing juga
mengacu pada penggunaan sistem terdistribusi untuk memecahkan masalah
komputasi. Dalam distributed computing, masalah dibagi menjadi banyak tugas,
masing-masing yang diselesaikan oleh satu komputer.
E. Map
Reduce dan NoSQL (Not Only SQL)
Map-Reduce
adalah salah satu konsep teknis yang sangat penting di dalam teknologi cloud
terutama karena dapat diterapkannya dalam lingkungan distributed computing.
Dengan demikian akan menjamin skalabilitas aplikasi kita. Salah satu contoh
penerapan nyata map-reduce ini dalam suatu produk adalah yang dilakukan Google.
Dengan inspirasi dari functional programming map dan reduce Google bisa
menghasilkan filesystem distributed yang sangat scalable, Google Big Table.
Dan
juga terinspirasi dari Google, pada ranah open source terlihat percepatan
pengembangan framework lainnya yang juga bersifat terdistribusi dan menggunakan
konsep yang sama, project open source tersebut bernama Apache Hadoop.
NoSQL
adalah istilah untuk menatakan berbagai hal yang didalamnya termasuk database
sederhana yang berisikan key dan value seperti Memcache, ataupun yang lebih
canggih yaitu non-database relational seperti MongoDB, Cassandra, CouchDB, dan
yang lainnya.
NoSQL
adalah sistem menejemen database yang berbeda dari sistem menejemen database
relasional yang klasik dalam beberapa hal. NoSQL mungkin tidak membutuhkan
skema table dan umumnya menghindari operasi join dan berkembang secara
horisontal. Akademisi menyebut database seperti ini sebagai structured storage,
istilah yang didalamnya mencakup sistem menejemen database relasional.
F. NoSQL
Database
Database
NoSQL, juga disebut Not Only SQL, adalah sebuah pendekatan untuk pengelolaan
data dan desain database yang berguna untuk set yang sangat besar data
terdistribusi.
NoSQL,
yang mencakup berbagai teknologi dan arsitektur, berusaha untuk memecahkan
masalah skalabilitas dan kinerja data yang besar yang database relasional tidak
dirancang untuk menangani. NoSQL ini sangat berguna ketika perusahaan perlu
untuk mengakses dan menganalisis sejumlah besar data terstruktur atau data yang
disimpan dari jarak jauh pada beberapa virtual server di awan. .
Berlawanan
dengan kesalahpahaman yang disebabkan oleh namanya, NoSQL tidak melarang bahasa
query terstruktur (SQL). Meskipun benar bahwa beberapa sistem NoSQL sepenuhnya
non-relasional, yang lain hanya menghindari fungsi relasional dipilih seperti
skema tabel tetap dan bergabung dengan operasi. Sebagai contoh, daripada
menggunakan tabel, database NoSQL mungkin mengatur data menjadi objek, kunci /
nilai berpasangan atau tupel.
Daftar
Pustaka
Tidak ada komentar:
Posting Komentar