Cloud Computing dan PaaS (Platform as a Service)

Cloud Computing

    Cloud computing merupakan suatu kemajuan teknologi informasi dimana informasi disimpan pada suatu server yang dapat diakses oleh client melalui jaringan internet. Informasi diakses melalui perangkat pengguna seperti smartphone, computer, tablet, dan lainnya. Cloud computing menggabungkan teknologi komputer dengan pengembangan internet sehingga menjadi infrastruktur komplek yang abstraksi dan tersembunyi. Pengguna tidak perlu direpotkan infrastrukturnya, karena kemampuan teknologi ini disajikan sebagai suatu layanan (as a service). 5 karakteristik yang harus dipenuhi oleh cloud computing adalah berikut ini :

  1. Resource Pooling

Pengguna dapat memakai secara dinamis sumber daya komputasi terkelompok yang disediakan oleh provider secara bersama-sama oleh sejumlah pengguna. Sumber daya termasuk dapat berupa fisik ataupun virtual yang di alokasikan secara dinamis sesuai permintaan.

  2. Broad Network Access

Layanan yang disediakan harus dapat diakses oleh berbagai jenis perangkat melalui jaringan.

  3. Measured Service

Layanan yang disediakan harus dapat dimonitor oleh pengguna melalui suatu sistem pengukuran. Sumber daya yang digunakan dapat secara transparan diukur oleh pengguna untuk dijadikan dasar dalam membayar biaya penggunaan layanan.

  4. Rapid Elasticity

Layanan yang disediakan oleh provider harus dapat memenuhi kebutuhan pengguna secara dinamis sesuai kebutuhan. Pengguna dapat menurunkan dan menaikan kapasitas layanan sesuai keinginan.

  5. Self Service

Layanan yang disediakan harus mampu memenuhi pesanan sumber daya yang dibutuhkan dengan segera melalui suatu sistem secara otomatis.

 

National Institute of Standards and Technology membagi layanan cloud computing menjadi 3 jenis layanan:

  1. Software as a service (SaaS)

SaaS merupakan layanan cloud computing dimana pelanggan dapat menggunakan perangkat lunak yang disediakan oleh provider. Pengguna tidak perlu membeli lisensi perangkat lunak lagi, cukup dengan berlangganan dan membayar sesuai dengan permintaan. Contohnya: Office365, Adobe Creative Cloud, Facebook, Twitter, Yahoo Messenger, Skype, Gtalk, dan lainnya.

  2. Platform as a service (PaaS)

PaaS merupakan layanan yang menyediakan hardware sehingga pengembang aplikasi tidak perlu memikirkan operating system, infrastructure scalling, load balancing dan lainnya. Pengembang dapat fokus pada aplikasi yang akan dikembangkan karena “tempat” untuk aplikasi sudah menjadi tanggung jawab provider. Contohnya: Microsoft Azure.

  3. Infrastructur as a Service (IaaS)

IaaS merupakan layanan yang menyediakan sumber daya teknologi informasi dasar yang dapat digunakan oleh penyewa untuk menjalankan aplikasi yang dimilikinya. Model ini seperti penyedia data center yang menyewakan ruangan, tapi ini lebih ke level mikronya. Keuntungan jenis layanan ini adalah kita tidak perlu membeli komputer fisik tetapi kita dapat melakukan konfigurasi komputer virtual yang dapat diubah dengan mudah. Contohnya: Amazon EC2, Windows Azure, dsb.

 

 

Platform as a Service

Platform as a Service (PaaS) adalah salah satu jenis layanan dari Cloud computing. PaaS merupakan layanan perangkat lunak perantara pada lingkungan cloud untuk memfasilitasi berjalannya program aplikasi-aplikasi lainnya. Layanan ini untuk membangun, menguji dan menyebarkan aplikasi yang sedang dalam tahap pengembangan. Untuk menjalankan aplikasi yang telah dibuat, pengguna bisa menyewa “rumah” berikut lingkungannya. Pengguna tidak perlu pusing untuk menyiapkan “rumah” dan memelihara “rumah” tersebut, yang penting aplikasi yang dibuat dapat berjalan dengan baik. Pemeliharaan “rumah” ini (sistem operasi, jaringan, basis data, framework aplikasi, dll) menjadi urusan provider. Perumpamaan nya adalah, ibarat kita menyewa sebuah vila, kita dapat tinggal dan tidur di vila tersebut, tanpa peduli bagaimana melakukan “perawatan” dari vila beserta isinya. Sepanjang suasananya nyaman untuk digunakan, kita dapat terus menggunakannya dan membayar sesuai dengan lamanya kita tinggal di vila tersebut. Jika suatu saat dibuat tidak nyaman, maka pengguna dapat pindah ke vila lain yang lebih bagus layanannya.

Beberapa karakteristik PaaS adalah :

1. Pengguna layanan PaaS adalah kebanyakan pengembang software.

2. Fokus pada layanan Hosting Aplikasi, Design, Development, Testing.

3. Platform yang digunakan umumnya dapat diakses melalui web browser.

4. Ruang lingkup maintenance PaaS mencakup hardware dan software pendukung pengembangan aplikasi.

5. Kebanyakan provider PaaS menawarkan fitur bagi pengembang aplikasi untuk melakukan update fitur sendiri dari sistem operasi software

6. Arsitektur multi-tenant yaitu beberapa pengguna secara bersamaan dapat memanfaatkan pengembangan aplikasi yang sama.

 

Layanan Utama PaaS biasanya berupa desain aplikasi, development, proses testing, dan deployment serta hosting. Layanan tambahan bisa berupa kolaborasi tim (memperbolehkan kita untuk membentuk tim pengembang aplikasi dengan orang-orang yang berada jauh darikita), integrasi layanan web, integrasi database, storage dan pemberian versi aplikasi.

Layanan PaaS terbagi 3 :

1. Fasilitas pengembangan Add-on. Sistem ini menawarkan beberapa aplikasi PaaS yang bisa dimodifikasi oleh pengguna.

2. Stand Alone Environment, untuk penggunaan software developing biasa.

3. Aplication Delivery-Only Environment. Juga mendukung layanan hosting, seperti keamanan dan skalabilitas tidak termasuk development dan debugging.

 

Jenis-jenis Paas

1. PaaS yang terhubung dengan produk SaaS

Platform as a service yang terhubung dengan produk SaaS adalah jenis yang paling sering digunakan oleh developer. Tujuan dari jenis PaaS ini adalah untuk menciptakan ekosistem development yang baik di sekitar aplikasi SaaS. Hal ini dilakukan dengan cara menyediakan platform yang memungkinkan independent software vendor (ISV) untuk membuat kemampuan baru pada inti platform SaaS.

Contoh kemampuan baru yang biasanya terbentuk adalah proses bisnis, ekstensibilitas platform, kustomisasi model data, dan berbagai fungsi tambahan lainnya.

2. PaaS yang terhubung dengan operation environment

Contoh paling umum dari jenis PaaS ini adalah vendor infrastructure as a Service (IaaS) yang memiliki kapabilitas PaaS. Penawaran fitur seperti ini mungkin tidak memiliki kedalaman fungsionalitas yang sama seperti platform PaaS mandiri.

Namun, PaaS yang terhubung dengan sebuah operation environment dapat bekerja dengan baik jika pengguna berkomitmen untuk hanya menggunakan satu IaaS tertentu.

Contoh-contoh dari jenis platform as a service ini adalah:

  • AWS Elastic Beanstalk
  • AT&T PaaS
  • Microsoft Azure

3. Open-cloud PaaS

Jenis PaaS ini tidak terikat dengan produk SaaS atau sebuah operation environment. Akan tetapi, open-cloud PaaS memungkinkan developer untuk menggunakan platform yang sepenuhnya terpisah.

Hal ini memberikan fleksibilitas, tetapi,juga dapat menambahkan jumlah biaya yang akan dikeluarkan. Platform ini umumnya cocok untuk lingkungan cloud hybrid.

Contoh open-cloud PaaS meliputi:

  • Engine Yard
  • Jelastic
  • Apprenda
  • Cloud Foundry


Keuntungan Layanan PaaS

Beberapa keuntungan dan manfaat layanan PaaS :

1. Menghemat biaya. Pengembang tidak perlu mengeluarkan biaya dalam melakukan perawatan dan pemeliharaan sumber daya penunjang aplikasi yang dikembangkan.

2. Efisien, tidak perlu melakukan instalasi dan konfigurasi lokal terhadap sumber daya penunjang, hal ini sudah tersedia pada layanan PaaS.

3. Sumber daya penunjang aplikasi akan selalu up to date.

4. Fleksibelitas, bila dibandingkan dengan metode komputing lama.

5. Dapat diakses dari manapundan kapanpun, sehingga memudahkan memanajemen pengembangan aplikasi dan operasional.

6. Dapat fokus pada aplikasi yang dikembangkan tanpa perlu memikirkan sumber daya penunjangnya.

7. Membayar sesuai dengan pemakaian dengan prinsip “pay as you go”.

 

Kekurangan layanan PaaS

Kekurangan layanan PaaS, akan terganggu ketika provider melakukan update platform. Hal ini bisa berdampak pada software yang sedang dikembangkan. Misalnya : perubahan bahasa pemrograman tertentu sehingga pengguna terpaksa mengubah bahasa pemrograman yang sedang dikembangkan. Selain itu, layanan ini juga membutuhkan koneksi jaringan internet yang relatif cepat dan stabil.

 

 Provider PaaS

Beberapa provider PaaS antara lain :

    1. Engine Yard

Layanan ini mendukung bahasa pemrograman seperti PHP, Ruby, Node. Js, dan aplikasi server baik yang dihosting maupun menggunakan database lokal.

    2. AppFog

Layanan ini memiliki user interface yang bagus dan mudah digunakan. Pengguna hanya perlu memilih frameworkyang ingin digunakan seperti CodeIgniter, Spring, Ruby on Rails, Ruby on Sinatra, Django, dan sebagainya. Pengguna tinggal memakainya karena semua sudah di setup secara otomatis. Layanan ini juga mengizinkan manajemen hak akses, sehingga pengguna dapat bekerja dengan rekan programmernya yang lain.

    3. Google App Engine

Layanan ini disediakan oleh Google, namun untuk proses deployment diperlukan aplikasi tambahan, yaitu Google App Engine Launcher yang dapat diunduh secara gratis.

    4. Vmware-Pivotal CF

Layanan ini dapat menangani solusi hybrid yaitu menjadi privat dan publik. Bahasa pemrograman yang didukung antara lain PHP, Python, NodeJs, Ruby dan Java.

    5. Redhat-OpenShift

Bahasa pemrograman yang didukung antara lain Perl, Python, Ruby, PHP, Java, MySQL, dan PostgreSQL. Layanan ini dapat bekerja dengan work flow sotomatis yang dapat membantu pengguna dalam mengatur dan menangani skala workload.

    6. IBM –Bluemix

Bahasa pemrograman yang didukung antara lain: Python, Ruby Sinatra, Ruby on Rails, PHP dan dapat diperluas dengan bahasa pemrograman lain melalui buildpacks

    7. Microsoft Azure

Layanan ini disediakan langsung oleh microsoft. Bahasa pemrograman yang didukung antara lain:. Net, Java, Ruby, Python, PHP dan NodeJs.

    8. Software AG-LongJump

Sebelumnya bernama LongJump, yang kemudian dibeli oleh Software AG tahun 2013. Layanan ini menawarkan versi hosting melalui server Rackspace.

    9. Salesforce

Layanan ini dapat digunakan untuk pengembangan aplikasi multi-tenant.

    10. Amazon Web Services-Elastic Beanstalk

Layanan ini menggunakan bahasa pemrograman seperti Ruby, Java,. Net, NodeJs, Go, PHP dan Docker.

 

Dengan banyaknya provider layanan PaaS yang tersedia, beberapa tips yang dapat digunakan untuk memilih sesuai dengan kondisi yang diinginkan :

1. Tentukan sistem operasi, bahasa pemrograman, dan framework yang akan dipakai.

2. Walaupun “pay as you go”, analisis harga masing-masing layanan PaaS. Carilah harga yang paling efisien.

3. Carilah lokasi layanan PaaS yang dekat dengan pengguna.

4. Carilah layanan yang paling mudah dan nyaman melalui akun gratis untuk ujicoba (free trial).

 

    Pemanfaatan dan proses pembayaran pada cloud computing ini hampir sama dan bahkan mirip dengan seperti cara kita membayar keperluan umum di kehidupan kita sehari-hari, seperti membayar tagihan listrik, tagihan telepon dan lain-lain. Sebagai pengguna listrik atau telepon, kita hanya membayar sejumlah yang kita pakai atau kitakonsumsi seberapa banyak sepanjang bulan atau sepanjang tahun. Begitu juga dengan penyedia cloud mengisi pengguna berdasarkan pada eksploitasi sistem cloud atau sumber daya seperti kekuatan, pemrosesan yang digunakan, transaksi yang dilakukan, bandwidth yang dikonsumsi, data yang ditransfer atau seberapa besar ruang penyimpanan yang digunakan.

 




Link Presentasi Youtube :

https://youtu.be/2mn6PEn6mJw





Daftar Pustaka : 

https://media.neliti.com/media/publications/127373-ID-studi-perbandingan-layanan-cloud-computi.pdf

https://en.wikipedia.org/wiki/Platform_as_a_service

https://www.trustradius.com/buyer-blog/the-3-main-types-of-paas

https://azure.microsoft.com/en-us/overview/what-is-paas/

https://ejournal.stmik-time.ac.id/index.php/jurnalTIMES/article/view/481/114

 

Comments

Popular posts from this blog

Rekursif : Faktorial, Fibonacci, Deret.

Pertemuan 7 : Hubugan Algoritma Ostrich dengan Deadlock, Preemptive dan Non Preemptive & Alur Graph

Masalah Klasik Sinkronisasi