Pengantar • Cloud computing atau komputasi awan merupakan definisi untuk teknologi komputasi grid (grid computing) yang digunakan pada pertengahan hingga akhir 1990-an. Jargon komputasi awan mulai muncul pada akhir tahun 2007, digunakan untuk memindahkan layanan yang digunakan sehari-hari ke Internet, bukan disimpan di komputer lokal lagi. • Cloud computing atau komputasi awan merupakan tren baru di bidang komputasi terdistribusi dimana berbagai pihak dapat mengembangkan aplikasi dan layanan berbasis SOA (Service Oriented Architecture) di jaringan internet. Definisi Cloud Computing Layanan komputasi berbasis Internet, dimana server sebagai media penyimanan data atau informasi yang digunakan bersama-sama untuk menyediakan sumber daya, perangkat lunak, data atau perangkat lain pada saat dibutuhkan. Cont.. • CLOUD : Awan (Internet) • COMPUTING : Proses komputasi • Penggunaan teknologi komputer untuk pengembangan berbasis Internet dengan piranti lunak lengkap dan sistem operasional juga tersedia secara online. Dengan kata lain, internet dan semua yang terkait dengannya, menjadi terminal pusat. Cont.. • "Internet bisa dianggap awan besar. Awan berisi komputer yang semuanya saling tersambung. Dari situlah berasal istilah 'cloud'. Jadi semuanya disambungkan ke 'cloud', atau awan itu.“ (Stevan Greve) • “Cloud computing is a style of computing in which dynamically scalable and often virtualized resources are provided as a service over the internet. Users need not have knowledge of, expertise in, or control over the technology infrastructure in the cloud that supports them.” Mengapa Cloud Computing? Ini adalah sebuah model layanan berbasis Internet untuk menampung sumber daya sebuah perusahaan. Artinya sebuah perusahaan tak perlu lagi memiliki atau mendirikan infrastruktur lantaran sudah ada perusahaan lain yang menyediakan “penampung” di cloud alias Internet. Memiliki teknologi atau menyewa? • Menyewa akan menimbulkan biaya yang disebut OpEx – Operasional Expenditure, yang sifatnya rutin dan cenderung tetap. • Membeli akan menimbulkan CapEx – Capital Expenditure, yang sifatnya hanya sekali pada saat membeli, namun disertai dengan biaya-biaya lain seperti pemeliharaan maupun biaya depresiasi capital. • Perusahaan pengadopsi teknologi ini tidak perlu membeli peralatan/hardware. • Perusahaan juga tidak perlu membeli lisensi/software. • Ekstrimnya, perusahaan tersebut juga tidak perlu memiliki departemen IT yang bertugas untuk memonitor server, storage, jaringan, dan aplikasi bisnis. Karakteristik Cloud Computing Suatu layanan dapat dikatakan sebagai cloud computing apabila layanan tersebut memiliki 5 karakteristik sbb: • On-Demand Self-Services • Broad Network Access • Resource Pooling • Rapid Elasticity • Measured Service Cont.. • On-Demand Self-Services 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. Cont.. • 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. Kapabilitas layanan dari cloud provider tersedia lewat jaringan dan bisa diakses oleh berbagai jenis perangkat, seperti smartphone, tablet, laptop, workstation, dsb. Cont.. • 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. Cont.. • 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. Misalnya, 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. Cont.. • Measured Service Sebuah layanan cloud computing harus disediakan secara terukur, karena nantinya akan digunakan dalam proses pembayaran. 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. Harap diingat bahwa layanan cloud computing dibayar sesuai penggunaan, sehingga harus terukur dengan baik. Cont.. 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 dalam Cloud Computing • Infrastructure as a Service (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. • 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. Layanan dalam Cloud Computing • Platform as a Service (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. • 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 hal tersebut sudah menjadi tanggung jawab cloud provider. Layanan dalam Cloud Computing • Software as a Service (SaaS) adalah layanan dari Cloud Computing dimana pelanggan dapat menggunakan software (perangkat lunak) yang telah disediakan oleh cloud provider. • Contoh dari layanan SaaS: Layanan produktivitas: Office365, GoogleDocs, Adobe Creative Cloud, dsb. ; Layanan Gmail, YahooMail, Liv , dsb. ; Layanan social network: Facebook, Twitter, Tagged, dsb. ; Layanan instant messaging: YahooMessenger, Skype, GTalk, dsb. • Keuntungan dari SaaS ini adalah tidak perlu membeli lisensi software lagi karena dapat berlangganan ke cloud provider dan membayar berdasarkan pemakaian. Deployment Model Cloud Computing • Public Cloud adalah layanan Cloud Computing yang disediakan untuk masyarakat umum. Pengguna bisa langsung mendaftar ataupun memakai layanan yang ada. • Contoh Public Cloud yang gratis: Google, 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. • Kerugian: Sangat tergantung dengan kualitas layanan internet (koneksi) yang kita pakai. Deployment Model Cloud Computing • 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. • Contoh layanannya: 1. SaaS: Web Application, Mail Server, Database Server untuk keperluan internal. 2. PaaS: Sistem Operasi + Web Server + Framework + Database yang untuk internal. 3. IaaS: Virtual machine yang bisa di-request sesuai dengan kebutuhan internal Deployment Model Cloud Computing • 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. Deployment Model Cloud Computing • Hybrid Cloud adalah gabungan dari layanan Public Cloud dan Private Cloud yang diimplementasikan oleh suatu organisasi/perusahaan. • Contohnya: 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. 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. Deployment Model Cloud Computing • 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.
• Keuntungan: Bisa bekerja sama dengan
organisasi lain dalam komunitas yang mempunyai kepentingan yang sama. • Kerugian: Ketergantungan antar organisasi jika tiap-tiap organisasi tersebut saling berbagi sumber daya. Kompenen Cloud Computing Cloud Clients adalah seperangkat komputer ataupun software yang didesain secara khusus untuk penggunaan layanan berbasis cloud computing. • Mobile (Windows Mobile, Symbian, dll.) • Thin Client (Windows Terminal Service, CherryPal, dll.) • Thick Client (Internet Explorer, FireFox, Chrome, dll.) Kompenen Cloud Computing Cloud Services adalah produk, layanan dan solusi yang dipakai dan disampaikan secara real-time melalui media Internet. Contoh yang paling popular adalah web service. • Identitas – OpenID, OAuth, dan lain2. • Integration – Amazon Simple Queue Service. • Payments – PayPal, Google Checkout. • Mapping – Google Maps, Yahoo! Maps. Kompenen Cloud Computing Cloud Applications memanfaatkan cloud computing dalam hal arsitektur software. Sehingga user tidak perlu menginstal dan menjalankan aplikasi dengan menggunakan komputer. • Peer-to-peer – BitTorrent, SETI, dan lain-lain. • Web Application – Facebook. • SaaS – Google Apps, SalesForce.Com, dan lain-lain. Cloud Platform : merupakan layanan berupa platform komputasi yang berisi hardware dan software2 infrasktruktur. Biasanya mempunyai aplikasi bisnis tertentu dan menggunakan layanan PaaS sebagai infrastruktur aplikasi bisnisnya. Contoh : • Web Application Frameworks – Python Django, Rubyon Rails, .NET • Web Hosting • Propietary – Force.Com Kompenen Cloud Computing Cloud Storage melibatkan proses penyampaian penyimpanan data sebagai sebuah layanan. Misal : • Database – Google Big Table, Amazon SimpleDB. • Network Attached Storage – Nirvanix CloudNAS, MobileMe iDisk. Cloud Infrastructure merupakan penyampaian infrastruktur komputasi sebagai sebuah layanan. Contohnya : • Grid Computing – Sun Grid. • Full Virtualization – GoGrid, Skytap. • Compute – Amazon Elastic Compute Cloud. Keuntungan Keuntungan • Cloud computing membantu konsumen menggunakan aplikasi komputer – Tanpa perlu software tambahan atau server – Tanpa melakukan instalasi. – Hanya perlu koneksi internet
• Teknologi ini memungkinkan efisiensi lebih
– Memusatkan penyimpanan – Memusatkan memory – Memusatkan pemrosesan – Memusatkan bandwith – Green Energy Resiko Cloud Computing • Service level – Cloud provider mungkin tidak akan konsisten dengan performance dari application atau transaksi. Hal ini mengharuskan anda untuk memahami service level yang anda dapatkan mengenai transaction response time, data protection dan kecepatan data recovery. • Privacy - Karena orang lain / perusahaan lain juga melakukan hosting kemungkinan data anda akan keluar atau di baca oleh pemerintah U.S. dapat terjadi tampa sepengetahuan anda atau approve dari anda. • Compliance - Anda juga harus memperhatikan regulasi dari bisnis yang anda miliki, dalam hal ini secara teoritis cloud service provider diharapkan dapat menyamakan level compliance untuk penyimpanan data didalam cloud, namun karena service ini masih sangat muda anda diharapkan untuk berhati hati dalam hal penyimpanan data. Resiko Cloud Computing • Data ownership – Apakah data anda masih menjadi milik anda begitu data tersebut tersimpan didalam cloud? mungkin pertanyaan ini sedikit aneh, namun anda perlu mengetahui seperti hal nya yang terjadi pada Facebook yang mencoba untuk merubah terms of use aggrement nya yang mempertanyakan hal ini. • Data Mobility – Apakah anda dapat melakukan share data diantara cloud service? dan jika anda terminate cloud relationship bagaimana anda mendapatkan data anda kembali? Format apa yang akan digunakan ? atau dapatkah anda memastikan kopi dari data nya telah terhapus ? Cloud Computing dikatakan aman jika ? Diketahui juga komunikasi pada cloud computing dikatakan aman jika telah memastikan beberapa hal yaitu: • Confidentiality, kepastian bahwa hanya orang/bagian yang berhak atau yang seharusnya, yang boleh mengakses data dan menerima data. Beberapa hal yang menjadi bagian dari kebutuhan telekomunikasi dalam menjamin confidentiality: 1. Network security protocols 2. Network authentication services 3. Data encription services Cloud Computing dikatakan aman jika ? • Integrity, kepastian bahwa data tidak berubah karena suatu yang tidak direncanakan atau tidak diinginkan. Integrity berarti menjamin pesan telah terkirim dan diterima. Dan pesan tersebut tidak berubah. Beberapa bagian dari integrity yaitu: 1. Firewall services 2. Communications Security Management 3. Intrusion detection services Cloud Computing dikatakan aman jika ? • Availability, kepastian bahwa data atau informasi pada jaringan dapat diakses di waktu dan dimana data/informasi itu dibutuhkan. User yang terotorisasi dapat diijinkan mengakses jaringan atau sistem saat dibutuhkan. Beberapa bagian yang harus diperhatikan untuk menjamin availability yaitu: 1. Fault tolerance untuk availability data, seperti backups, redundant disk system. 2. Acceptable logins and operating process performances. 3. Reliable and interoperable security processes and network security mechanisms. Contoh Aplikasi Berbasis Cloud Computing • Salesforce.com Salesforce.com adalah aplikasi Customer Relationship Management (CRM) berbasis software as services, dimana kita bisa mengakses aplikasi bisnis: kontak, produk, sales tracking, dashboard, dll. • Google Docs Google Docs adalah aplikasi word processor, spreadsheet, presentasi semacam Microsoft Office, yang berbasis di server. Terintegrasi dengan Google Mail, file tersimpan dan dapat di proses dari internet.