Journal of Research in Computer Science and Applications – Vol. I, No. I, Juli 2012 PEMBANGUNAN WEB-OS SEBAGAI SALAH SATU PENERAPAN KONSEP CLOUD COMPUTING M. Fachrurrozi, S.Si, M.T [email protected] ABSTRACT Pada saat ini hampir semua kalangan, baik itu para profesional, pendidik, pebisnis, menggunakan jasa layanan internet. Dan hampir semua institusi dan perusahaan memiliki jaringan lokal (intranet) untuk akses dan sharing layanan ataupun data. Menurut wikipedia, Komputasi awan adalah sebuah konsep penggabungan pemanfaatan teknologi komputer dan pengembangan berbasis internet (awan). Komputasi awan ini merupakan sebuah konsep yang mengedepankan komputasi secara bersamaan oleh beberapa pengguna dari sebuah sistem komputer. Terdapat beberapa layanan (services) yang disediakan oleh satu sumber yang dapat dimanfaatkan oleh banyak pengguna. Sistem Operasi (Operating System: OS) secara garis besar adalah sebuah lingkungan dimana terdapat beberapa aplikasi yang dapat digunakan oleh pengguna. Sistem operasi yang berkembang pada saat ini adalah sistem operasi yang standalone yang dimanfaatkan oleh hanya satu komputer saja. Hal ini berdampak pada biaya yang harus dikeluarkan untuk per kali pemasangan, lemahnya proses pemeliharan, walaupun memang juga berdampak positif antara lain pembagian beban kerja (proses) untuk aplikasi yang dijalankan. Dengan penerapan konsep cloud computing dan memanfaatkan perkembangan teknologi intranet dan internet, maka sistem yang telah dibangun ini merupakan sebuah OS di atas platform web atau yang lebih dikenal dengan WebOS yang diberi nama FOS (Fasilkom Operating System). Kata kunci: cloud computing, Sistem Operasi I. PENDAHULUAN Istilah Cloud Computing (Komputasi awan) muncul pada era tahun 2000-an. Menurut wikipedia, Komputasi awan adalah sebuah konsep penggabungan pemanfaatan teknologi komputer dan pengembangan berbasis internet (awan). Komputasi awan ini merupakan sebuah konsep yang mengedepankan komputasi secara bersamaan (pararel) oleh beberapa pengguna (client) dari sebuah sistem komputer (server). Terdapat beberapa layanan (services) yang disediakan oleh satu sumber yang dapat dimanfaatkan oleh banyak pengguna. Dengan konsep komputasi awan ini diharapkan pada suatu saat nanti akan menjawab semua kebutuhan pengguna khususnya pengguna dengan ketergantungan internet yang tinggi. Sistem Operasi (Operating System: OS) secara garis besar adalah sebuah lingkungan dimana terdapat beberapa aplikasi yang dapat digunakan oleh pengguna. Sistem operasi yang berkembang pada saat ini adalah sistem operasi yang standalone, yaitu satu OS yang dimanfaatkan oleh hanya satu komputer saja. OS standalone mengharuskan pengguna untuk memasang aplikasi di setiap komputer, walaupun aplikasi tersebut sama. Hal ini berdampak pada biaya yang harus dikeluarkan untuk per kali pemasangan, lemahnya proses pemeliharan, walaupun memang juga berdampak positif antara lain pembagian beban kerja (proses) untuk aplikasi yang dijalankan. Pada saat ini hampir semua institusi dan perusahaan memiliki jaringan lokal (intranet) untuk akses dan sharing layanan ataupun data. Dengan menerapkan konsep cloud computing dan memanfaatkan perkembangan teknologi intranet dan internet, maka akan dibangun sebuah OS di atas platform web atau yang lebih dikenal dengan WebOS yang diberi nama FOS (Fasilkom Operating System). WebOS bukanlah sebuah “barang” baru di dunia komputasi awan. Terdapat banyak sekali WebOS yang telah dikembangkan oleh para peneliti dan praktisi, antara lain eyeOS [6]. Namun demikian eyeOS yang telah dikembangan tersebut memiliki karakteristik yang berbeda. eyeOS mengembangkan webOS sebagai wadah untuk meletakkan aplikasi-aplikasi awan, namun belum memperkenankan user untuk memasang aplikasi yang telah ia buat sendiri di webOS tersebut. Apabila ada customer yang akan ISSN: 2301-8488 / Copyright 2012 – JRSCA 13 Journal of Research in Computer Science and Applications – Vol. I, No. I, Juli 2012 mengimplementasikan eyeOS, dengan aplikasi yang kustom, maka aplikasi kustom tersebut harus diintegrasikan dulu ke eyeOS. Dengan kata lain eyeOS belum menyediakan fitur untuk pengguna memasang aplikasi awannya sendiri (installer/uninstaller). FOS yang akan dibangun memiliki karakteristik yang unik, yaitu menyediakan fitur bagi pengguna untuk memasang aplikasi awannya sendiri. FOS juga akan dikhususkan untuk diimplemetasikan di institusi pendidikan, dan yang terpenting mengurangi ketergantungan dengan WebOS ataupun aplikasi-aplikasi pendukung yang sudah ada. II. CLOUD COMPUTING Cloud Computing (Komputasi Awan) merupakan sebuah konsep penggabungan pemanfaatan teknologi komputer dan pengembangan berbasis internet (awan). Komputasi awan ini merupakan sebuah konsep yang mengedepankan komputasi secara bersamaan (pararel) oleh beberapa pengguna (client) dari sebuah sistem komputer (server). Terdapat beberapa layanan (services) yang disediakan oleh satu sumber yang dapat dimanfaatkan oleh banyak pengguna. Selain itu komputasi awan dapat mendukung sebuah sistem pusat data (datacenter) dengan skala besar dengan biaya yang rendah dan pengguna yang banyak dan beragam [3]. Komputasi awan juga merupakan sebuah model yang mencakup fleksibiltas, kemudahan, dan bertukar informasi di dalam sebuah jaringan komputer yang mengkofigurasikan semua sumber daya komputasi (network, server, storage, aplikasi, layana) yang secara cepat diimplementasikan dengan effort pengelolaan atau interaksi penyedia layanan yang relatif rendah [2]. Model awan mengusung ketersediaan 5 karateristik dasar, 3 model layanan dan 4 model penyebaran. Adapun 5 karakteristik dasar dari komputasi awan adalah sebagai berikut: a. On-Demand Self Service, Setiap layanan dapat dimanfaatkan sesuai dengan kebutuhan masing-masing pengguna pada saat itu saja, dengan tidak membutuhkan interaksi yang relatif banyak. b. Broad Network Acces, setiap pengguna dapat mengakses dari lokasi mana saja dan dengan platform apa saja. c. Resource Pooling, setiap layanan dapat diakses secara bersamaan oleh banyak pengguna. Dalam hal ini ruang akses (bandwidth) harus sebanding dengan jumlah pengguna. d. Rapid Elasticity, layanan dapat cepat direlease dan langsung dapat digunakan oleh semua pengguna. e. Measured Service, layanan lebih mudah dikendalikan dan diperbaharui (maintainable). Adapun 3 model layanan dari komputasi awan adalah sebagai berikut: a. Cloud Software as a Service (SaaS), memungkinkan pengguna dapat menjalankan aplikasi-aplikasi yang berjalan di infrastrukur awan (internet) dari berbagai paltform. Pengguna tidak perlu mengatur dan mengendalikan infrastruktur yang ada di sistem, seperti jaringan, server, OS, storage. b. Cloud Platform as a Service (PaaS), memungkinkan pengguna untuk men-deploy aplikasi yang dibuatnya sendiri dengan menggunakan bahasa pemrograman dan tools tertentu. c. Cloud Infrastructure as a Service (IaaS), memungkinkan pengguna untuk menentukan konfigurasi semua sumber daya untuk keperluan aplikasi yang di-deploy-nya. Adapun 4 model penyebaran dari komputasi awan adalah sebagai berikut: a. Private cloud, yaitu model sistem yang diperuntukan hanya untuk satu organisasi saja, dan dikendalikan oleh beberapa kelompok dari organisasi tersebut. b. Community cloud, yaitu model sistem yang diperuntukan hanya untuk beberapa organisasi saja, dan dikendalikan oleh beberapa kelompok dari organisasi tersebut. c. Public cloud, model infrastruktur ini disediakan untuk kepentingan publik (umum), dimiliki oleh satu organisasi yang menjual beberapa layanan di dalam sistemnya. d. Hybrid cloud,merupakan model penggabungan dari beberapa model sebelumnya. ISSN: 2301-8488 / Copyright 2012 – JRSCA 14 Journal of Research in Computer Science and Applications – Vol. I, No. I, Juli 2012 Gambar 1. Aspek Utama Pembentukan Sistem Awan [1] Gambar 1 merupakan arsitektur sistem awan terbentuk. Pada gambar tersebut terlihat bahwa dengan sistem awan dapat dibentuk dari tipe yang ada, dengan berbagai bentuk model yang beragam, menghasilkan banyak fitur dan keuntungan. Selain itu juga beragam pengguna dapat memanfaatkan mengakses sistem ini dari berbagai lokasi secara bersamaan. Adapun beberapa lingkungan sistem awan dapat berupa: a. Cloud Providers, penyedia layanan untuk pengguna. b. Cloud Resellers or Aggregators, penghubung antara awan satu dengan awan lainnya. c. Cloud Adopter (software / service) vendor, memperbaharui awan yan g telah dibuat oleh provider atau reseller secara mandiri. d. Cloud Consumers or Users, memanfaatkan langsung layanan yang disediakan oleh awan tertentu. e. Cloud Tool providers, tidak menyediakan layanan, namun digunakan sebagai pendukung untuk layanan yang ada di awan. seluruh sumber-daya yang terdapat pada sistem komputer dan menyediakan sekumpulan layanan (system calls) ke pemakai sehingga memudahkan dan menyamankan penggunaan serta pemanfaatan sumber-daya sistem komputer [4]. Sistem operasi mempunyai tiga sasaran utama yaitu kenyamanan --membuat penggunaan komputer menjadi lebih nyaman, efisien-penggunaan sumber-daya sistem komputer secara efisien, serta mampu berevolusi -- sistem operasi harus dibangun sehingga memungkinkan dan memudahkan pengembangan, pengujian serta pengajuan sistem-sistem yang baru. Menurut Tanenbaum, sebuah sistem operasi yang baik harus memiliki layanan sebagai berikut: pembuatan program, eksekusi program, pengaksesan I/O Device, pengaksesan terkendali terhadap berkas pengaksesan sistem, deteksi dan pemberian tanggapan pada kesalahan, serta akunting. IV. SISTEM OPERASI BERBASIS WEB WebOS merupakan pengembangan dari teknologi aplikasi berbasis web. Dengan bercermin ke OS yang standalone, WebOS memilki fitur dan fungsi yang serupa. Antara lain, karakteristik kernel, installer, unistaller, pengaturan sumber daya (resource) dan lain-lain. Namun bedanya adalah WebOS berjalan di web browser dengan sumber utama dari server. WebOS juga dapat dijalankan di semua platform, yaitu desktop, web, linux, windows, macOS, sistem mobile. Pada saat ini telah banyak berkembang aplikasi WebOS, baik itu yang open source mampun yang berlisensi, seperti PalmOS, eyeOS, Purefect, dan lain-lain. V. METODE PENELITIAN III. SISTEM OPERASI Sistem operasi merupakan sebuah penghubung antara pengguna dari komputer dengan perangkat keras komputer. Sebelum ada sistem operasi, orang hanya mengunakan komputer dengan menggunakan sinyal analog dan sinyal digital. Pada saat ini terdapat berbagai sistem operasi dengan keunggulan masing-masing. Pengertian sistem operasi secara umum ialah pengelola V.1. LANGKAH-LANGKAH PENELITIAN Adapun metodologi penelitian yang dilakukan penelitian ini adalah: 1. Mempelajari konsep komputasi awan. 2. Menganalisa dan membuat rancangan arsitektur WebOS yang dibangun. 3. Menganalisa dan merancang kernel WebOS 4. Menentukan fitur-fitur utama WebOS. ISSN: 2301-8488 / Copyright 2012 – JRSCA 15 Journal of Research in Computer Science and Applications – Vol. I, No. I, Juli 2012 5. Menentukan fitur-fitur dan teknologi pendukung 5. Analisa perangkat keras: Analisa WebOS. kebutuhan perangkat keras terhadap sistem 6. Membuat prototipe dari hasil analisa fitur-fitur dan seperti kecepatan processor, kapasitas teknologi yang akan diterapkan di WebOS. memori utama dan memori sekunder. 7. Membuat WebOS dengan menggunakan model b. Perancangan incremental 1. Rancangan basis data: merupakan lanjutan 8. Melakukan pengujian secara internal eksternal. dari analisa basis data. Perancangan basis 9. Release versi 1.0 data dilakukan dengan menggunakan DBMS MySQL serta melakukan V.2. PENGEMBANGAN PERANGKAT pembuatan query-query yang nanti akan LUNAK digunakan oleh sistem. Pengembangan perangkat lunak yang 2. Rancangan antarmuka: Merancang dilakukan dalam penelitian ini menggunakan tampilan masukan dan keluaran yang metode pengembangan perangkat lunak dengan berbasis GUI (Graphical User Interface), metode Incremental Model [5]. Metode ini khususnya aplikasi yang berbasiskan web. merupakan pengembangan dari metode Waterfall Bahasa pemrograman yang digunakan yang sering digunakan dalam pengembangan untuk tampilan adalah HTML, CSS, perangkat lunak. Keunggulan metode Incremental Javascript. dibandingkan dengan metode Waterfall terletak 3. Rancangan prosedural: Merancang modulpada kecepatan pengerjaan tahapan proses. modul program yang nantinya akan Metode Incremental dapat melakukan pengerjaan digunakan pada saat pengkodean sistem. tahapan proses secara paralel, tahap yang satu Rancangan modul dapat berbentuk tidak harus menunggu tahap yang lainnya. Ada algoritma, flowchart dan pseudo-code. lima tahap dalam metode incremental yaitu c. Pengkodean analisa (analysis), perancangan (design), 1. Pembuatan kode modul basis data: kode penkodean (coding), pengujian (testing) dan modul basis data dibuat terpisah dengan pemeliharaan (maintenance). kode sistem sehingga lebih bersifat reusable. Kode modul basis data berisi V.3. PENGEMBANGAN WEBOS operasi basis data seperti membuat koneksi a. Analisa ke basis data, insert, update, delete dan 1. Pengumpulan data: data yang dikumpulkan query. adalah data primer dan sekunder. Data 2. Pembuatan kode modul sistem: kode primer berasal dari data yang diambil modul sistem dibagi menjadi dua bagian langsung dari para pakar/ahli pemrograman yaitu modul program utama dan modul komputer dan data sekunder berasal dari prosedural. Modul program utama akan data buku dan internet. Tahap ini sering dijalankan pertama kali dan selama disebut juga dengan tahapan akuisisi data. operasinya akan memanggil modul-modul 2. Analisa data: data yang telah terkumpul prosedural. Modul prosedural meliputi dianalisa dan dijadikan informasi fitur dan kode-kode program yang berhubungan teknologi untuk diterapkan di WebOS dengan. 3. Analisa basis data: data yang telah 3. Perangkat lunak ini nantinya akan dibuat terkumpul kemudian dibentuk sesuai berbasiskan web, dengan menggunakan dengan format basis data supaya bisa bahasa pemrograman sisi server PHP. dimasukan ke dalam basis data seperti d. Pengujian pembuatan tabel, pembuatan kunci, relasi 1. Pengujian basis data: pengujian koneksi antar tabel dan pembentukan query. basis data dan akurasi query basis data. 4. Analisa model WebOS: model OS yang 2. Pengujian sistem: pengujian secara akan digunakan berbasis web dan languung keseluruhan dari sistem baik dari masukan, terdistribusi secara otomatis ke komputer proses dan keluaran sistem. Server yang kliennya. ISSN: 2301-8488 / Copyright 2012 – JRSCA 16 Journal of Research in Computer Science and Applications – Vol. I, No. I, Juli 2012 digunakan untuk proses pengujian adalah Widows 7, dan Linux Centos. 3. Pemeliharaan 4. Pemeliharaan dilakukan dengan backup versi release terakhir, dan tetap akan diperbahurui selama fitur-fitur utama belum terpenuhi dengan baik. V.4. UJI COBA DAN PENGGUNAAN Ujicoba dilakukan untuk melihat apakah WebOS yang dikembangkan telah berisikan fiturfitur utama dan pendukung serta dapat digunakan. Sedangkan penggunaan adalah tahapan dimana WebOS yang dibuat digunakan dan ditambahkan aplikasi-aplikasi eksternal yang telah dibuat oleh pengguna. VI. HASIL PENELITIAN FOS merupakan sebuah WebOS yang dapat diakses di atas web browser. Pada sistem ini menyediakan beberapa layanan. Adapun layanan yang disediakan antara lain file storage, games, themes management, user management, registrasi, dan fitur-fitur tambahan lainnya. Interface yang digunakan ini sudah user friendly, sehingga pengguna yang menggunakan sistem ini akan cepat beradaptasi dengan fitur-fitur sistem yang disediakan. Sistem ini juga dikatakan mobile karena bisa diakses dan digunakan dimana saja dengan koneksi internet. Fitur Dasar FOS: a. Drag and drop shortcut icon b. Ajax menu c. Ajax Taskbar dengan fish eye dan jam d. Kalender e. Penjelajah file f. Notepad dan image viewer terintergrasi dengan penjelajah file g. Pemutar multimedia dengan flash h. Pengelolaan wallpaper i. Web browser j. Encrypted URL k. Registrasi aplikasi baru dengan 3 tipe: aplikasi, aksesoris, permainan, jaringan, sistem l. Penginstal aplikasi dengan auto read icon dan auto generate database dump m. Hak akses aplikasi : individu, publik dan global n. Individu: hanya dapat diakses oleh admin o. Publik : dapat diakses oleh admin dan user dengan syarat aplikasi telah dipasang dan diaktifkan p. Global : setiap pengguna pasti memiliki aplikasi tersebut tanpa ada proses instalasi (user dipaksa memiliki aplikasi tersebut) q. Pengelolaan pengguna sistem meliputi penginputan pengguna, update data pengguna, dan hapus data pengguna Paket instalasi memiliki rule sebagai berikut : a. Instalasi file 1. File instalasi haruslah berupa file zip 2. Instalasi yang memerlukan Logo taskbar dan database harus memiliki folder bernama “dump”. 3. Nama sqldump yang digunakan adalah “dbdump.fosdb” yang merupakan sqldump yang dapat di generate dengan phpmyadmin 4. Logo taskbar yang digunakan bernama “Logo.png” dengan ukuran 64x64px dan berformat png transparan. b. Pengaksesan kernel 1. Encrypt URL : “./?action=enkripURL&url=x=tes1%%z=te s” data yang dikembalikan berupa url terenkrip 2. getAPPIcon : “./?action=enkripURL&appid=xxx” 3. load image : “./?action=loadimage&dir=yyy&download =xxx” 4. load file : “./?action=loadfile&dir=yyy&download=x xx” 5. eksekusi sistem: “./?action=eksekusi&kategori=SISTEM& kd_reg_program=1234” 6. eksekusi aplikasi: “./?action=eksekusi&kategori=APLIKASI & kd_reg_program=1234” 7. eksekusi AKSESORIS: “./?action=eksekusi&kategori=AKSESORI S& kd_reg_program=1234” 8. eksekusi jaringan: “./?action=eksekusi&kategori=JARINGAN & kd_reg_program=1234” ISSN: 2301-8488 / Copyright 2012 – JRSCA 17 Journal of Research in Computer Science and Applications – Vol. I, No. I, Juli 2012 9. eksekusiAPLIKASI: “./?action=eksekusi&kategori=APLIKASI & kd_reg_program=1234” 10. eksekusi tampil menu: “./?action= tampilmenu-bingkaikerja” VII. KESIMPULAN DAN SARAN Sistem Operasi (OS) yang dibangun berjalan di atas platform web (WebOS) dan merupakan salah satu penerapan konsep Cloud Computing (komputasi awan). Aplikasi ini dijalankan di atas web browser. Konsep komputasi ini merupakan komputasi parallel dimana pengerjaannya dibagi ke beberapa komputer client. Dengan adanya penelitian ini, maka biaya pemasangan untuk setiap aplikasi dan biaya pemeliharaan sistem dan aplikasi bisa diminimalisasi. Sistem FOS ini masih terdapat beberapa kekurangan, sehingga diharapkan apabila dikembangkan maka sebaiknya ditambahkan keamanan (security), penghandle error aplikasi diluar sistem, menggunakan desain yang lebih menarik, serta dapat berjalan pada kondisi apapun. DAFTAR PUSTAKA [1] Lutz Schubert, “The Future of Cloud Computing”, European Commision Information Society and Media, 2010. [2] Peter Mell, Timothy Grance, ”The NIST Definition of Cloud Computing (Draft)”, Computer Security Division Information Technology Laboratory National Institute of Standards and Technology Gaithersburg, 2011. [3] Yanpei Chen, Vern Paxson, Randy H. Katz, “What’s New About Cloud Computing Security?”, Electrical Engineering and Computer Sciences, University of California at Berkeley, 2010. [4] Andrew S. Tanenbaum, “Modern Operating Systems Second Edition”, Prentice Hall, 2001. [5] Roger S Pressman, “Software Engineering A Practitioner’s Approach 6th Edition”, McGraw Hill, 2005. [6] “eyeOS, Your Desktop In The Cloud”, www.eyeOS.org, 2011. ISSN: 2301-8488 / Copyright 2012 – JRSCA 18