• Tidak ada hasil yang ditemukan

INTEROPERABILITAS TINGKAT FUNGSIONALITAS APLIKASI PADA MIGRASI VIRTUAL MACHINE DI LINGKUNGAN CLOUD

N/A
N/A
Protected

Academic year: 2019

Membagikan "INTEROPERABILITAS TINGKAT FUNGSIONALITAS APLIKASI PADA MIGRASI VIRTUAL MACHINE DI LINGKUNGAN CLOUD"

Copied!
121
0
0

Teks penuh

(1)

TESIS – TE142599

INTEROPERABILITAS TINGKAT FUNGSIONALITAS APLIKASI

PADA MIGRASI VIRTUAL MACHINE DI LINGKUNGAN CLOUD

COMPUTING

SOFFA ZAHARA 2214206202

DOSEN PEMBIMBING

Dr. Surya Sumpeno S.T., M.Sc. Dr. Istas Pratomo S.T., M.T.

PROGRAM MAGISTER

BIDANG KEAHLIAN TELEMATIKA JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNOLOGI INDUSTRI

INSTITUT TEKNOLOGI SEPULUH NOPEMBER SURABAYA

(2)
(3)

TESIS – TE142599

INTEROPERABILITAS TINGKAT FUNGSIONALITAS APLIKASI

PADA MIGRASI VIRTUAL MACHINE DI LINGKUNGAN CLOUD

COMPUTING

SOFFA ZAHARA 2214206202

DOSEN PEMBIMBING

Dr. Surya Sumpeno S.T., M.Sc. Dr. Istas Pratomo S.T., M.T.

PROGRAM MAGISTER

BIDANG KEAHLIAN TELEMATIKA JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNOLOGI INDUSTRI

INSTITUT TEKNOLOGI SEPULUH NOPEMBER SURABAYA

(4)
(5)
(6)

iv

(7)

v

PERNYATAAN KEASLIAN TESIS

Dengan ini saya menyatakan bahwa isi keseluruhan Tesis saya dengan

judul “INTEROPERABILITAS TINGKAT FUNGSIONALITAS APLIKASI

PADA VIRTUAL MACHINE DI LINGKUNGAN CLOUD COMPUTING

adalah benar-benar hasil karya intelektual mandiri, diselesaikan tanpa menggunakan bahan-bahan yang tidak diijinkan dan bukan merupakan karya pihak lain yang saya akui sebagai karya sendiri.

Semua referensi yang dikutip maupun dirujuk telah ditulis secara lengkap pada daftar pustaka. Apabila ternyata pernyataan ini tidak benar, saya bersedia menerima sanksi sesuai peraturan yang berlaku.

Surabaya, 12 Januari 2017

(8)

vi

(9)

vii

INTEROPERABILITAS TINGKAT FUNGSIONALITAS

APLIKASI PADA VIRTUAL MACHINE DI LINGKUNGAN

CLOUD COMPUTING

Nama mahasiswa : Soffa Zahara

NRP : 2214206202

Pembimbing : 1. Dr. Surya Sumpeno, S.T., M.Sc. 2. Dr. Istas Pratomo, S.T., M.T.

ABSTRAK

Pesatnya perkembangan internet diiringi dengan meningkatnya aplikasi yang memanfaatkan teknologi cloud computing. Bertambahnya proses bisnis suatu aplikasi dalam suatu sistem juga fitur layanan yang ditawarkan cloud provider lain yang lebih baik, seperti harga yang lebih murah, performansi sistem yang lebih tinggi, sistem yang lebih handal, teknologi security terbaru yang digunakan serta SLA(Service Level Agreement) yang lebih baik, memungkinkan untuk berpindah layanan ke cloud provider lain. Namun, dalam prakteknya sering terjadi kegagalan fungsionalitas aplikasi dalam proses migrasi ke sistem cloud yang baru yang salah satunya disebabkan oleh masalah vendor lock-in. Vendor lock-in muncul disebabkan banyaknya cloud provider yang mempunyai standar tersendiri dalam pembangunan sistemnya yang mengakibatkan terbatasnya kemampuan migrasi antar cloud.

Penelitian ini memperkenalkan metode baru untuk menguji interoperabilitas sistem khususnya di tingkat fungsionalitas aplikasi diantara dua cloud provider IaaS (Infrastructure as a Service). Tujuannya adalah untuk mengetahui tingkat interoperabilitas aplikasi dalam sistem virtual machine yang berpindah dari sebuah cloud provider ke cloud provider lain. Pengujian migrasi yang dilakukan dalam penelitian ini terbagi menjadi 2 skenario yaitu dari Amazon EC2 ke Indonesian Cloud, kemudian dari Amazon EC2 ke Google Compute Engine. Dari hasil pengujian yang didapatkan bahwa tingkat interoperabilitas migrasi dari Amazon EC2 ke Google Compute Engine lebih tinggi dikarenakan pada migrasi Amazon EC2 ke Indonesian Cloud terdapat fungsionalitas aplikasi yang tidak berjalan.

(10)

viii

(11)

ix

APPLICATION LEVEL INTEROPERABILITY ON VIRTUAL

MACHINE IN CLOUD COMPUTING ENVIRONMENT

By : Soffa Zahara

Student Identity Number : 2214206202

Supervisor(s) : 1. Dr. Surya Sumpeno, S.T., M.Sc. 2. Dr. Istas Pratomo, S.T., M.T.

ABSTRACT

The rapid development of internet nowadays impact on increasing many applications that utilizing cloud computing technology for the sake of organization. Increasing requirements in applications caused by inevitable business process growth in organization, increased security, better availability and QOS enabling a tendency to switch from old cloud provider to more reliable one. However, in practice, application functionality failures often occur in case of migrating process to new cloud system due to several circumstances e.g. vendor lock-in problem.

This paper introduces a development method for system migration testing between two cloud providers. The goal is to determine the interoperability level of application in virtual machine within hypervisor system that moves from one cloud provider to another cloud provider. Migration testing is done by 2 types of scenario. First, from Amazon EC2 to Indoensian Cloud. Second, from Amazon EC2 to Google Compute Engine. After several testings, the result is the interoperability level of migration from Amazon EC2 to Google Compute Engine is higher than Amazon EC2 to Indonesian Cloud caused by there is application functionality that can not work after migration.

(12)

x

(13)

xi

KATA PENGANTAR

Segala puja dan puji syukur kepada Allah SWT atas segala rahmat dan karunia yang telah dilimpahkan kepada penulis sehingga penulisan tesis dengan judul :

“APPLICATION LEVEL INTEROPERABILITY ON VIRTUAL MACHINE IN CLOUD COMPUTING ENVIRONMENT”

Dapat diselesaikan dengan baik. Buku tesis ini disusun untuk memenuhi salah satu syarat memperoleh gelar magister pada program studi Teknik Elektro dengan bidang keahlian Telematika, Institut Teknologi Sepuluh Nopember.

Pada kesempatan ini penulis sampaikan terima kasih yang sedalam-dalamnya kepada :

1. Kedua orangtua, suami, adik, serta keluarga yang selalu memberikan dorongan semangat dalam mengerjakan dan menyelesaikan tesis ini.

2. Bapak Surya Sumpeno dan Istas Pratomo atas bimbingan, kesabaran dan pendorong semangat dalam menyelesaikan thesis ini.

3. Rekan-rekan lab Jaringan Telekomunikasi B301, rekan-rekan jurusan telematika, terima kasih atas kebaikan dan kerjasamanya dalam penelitian ini.

Penulis menyadari bahwa dalam penulisan tesis ini masih jauh dari kata sempurna, untuk itu demi perbaikan dan penyempurnaan tesis ini maka saran dan kritik membangun sangat diharapkan. Besar harapan penulis bahwa buku tesis ini dapat memberikan informasi dan manfaat bagi pembaca pada umumnya dan mahasiswa jurusan Teknik Elektro pada khususnya.

(14)

xii

(15)

xiii

DAFTAR ISI

LEMBAR PENGESAHAN ... iii

PERNYATAAN KEASLIAN TESIS ... v

ABSTRAK ... vii

ABSTRACT ... ix

KATA PENGANTAR ... xi

DAFTAR ISI ... xiii

DAFTAR GAMBAR ... xv

DAFTAR TABEL ... xvii

BAB 1 PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Rumusan Masalah ... 2

1.3 Tujuan ... 2

1.4 Batasan Masalah ... 3

1.5 Kontribusi ... 3

1.6 Metodologi Penelitian ... 3

BAB 2 KAJIAN PUSTAKA ... 7

2.1 Cloud Computing ... 7

2.1.1 Amazon EC2 ... 11

2.1.2 Indonesian Cloud ... 13

2.1.3 Google Compute Engine ... 14

2.2 Teknologi Virtualisasi ... 15

2.3 Migrasi Cloud ... 20

2.4 Interoperabilitas ... 22

2.5 Pengujian Aplikasi ... 25

2.6 Penelitian Sebelumnya ... 30

BAB 3 METODE PENELITIAN... 35

3.1 Metode Penelitian ... 35

3.2 Rancangan Sistem ... 36

(16)

xiv

3.2.2 Aplikasi E-Commerce ... 38

3.3 Skenario Pengujian ... 53

3.4 Rancangan Evaluasi Hasil Pengujian ... 54

3.5 Rancangan Parameter Level Evaluasi Interoperabilitas ... 58

BAB 4 HASIL DAN PEMBAHASAN ... 61

4.1 Migrasi Amazon EC2 ke Indonesian Cloud ... 61

4.2 Migrasi Amazon EC2 ke Google Compute Engine ... 71

BAB 5 KESIMPULAN DAN SARAN ... 83

5.1 Kesimpulan ... 83

5.2 Saran ... 84

DAFTAR PUSTAKA ... 85

(17)

xv

DAFTAR GAMBAR

Gambar 1.1 Metodologi Penelitian ... 3

Gambar 2.1 Model Cloud Computing NIST (Sosinky, 2011) ... 8

Gambar 2.2 Amazon EC2 Hypervisor (Badola, 2015) ... 12

Gambar 2.3 Fitur Amazon VM Export/Import (Amazon Web Services, 2016) ... 13

Gambar 2.4 Arsitektur Hypervisor VMWare (Amazon Web Services, 2016) ... 14

Gambar 2.5 Arsitektur layanan Google Compute Engine ... 15

Gambar 2.6 Arsitektur Hypervisor Google Cloud Engine ... 15

Gambar 2.7 Prinsip Virtualisasi ... 16

Gambar 2.8 Perbedaan 2 Jenis Hypervisor (Sosinky, 2011) ... 18

Gambar 2.9 Model McCall (Galin, 2004) ... 26

Gambar 2.10 Proses Pengujian (Galin. D, 2004) ... 27

Gambar 2.11 Metode TIOSA (Lenk dkk, 2014) ... 30

Gambar 2.12 Hasil Pengujian CentOS 6.6 (Lenk dkk, 2014) ... 31

Gambar 2.13 Hasil Pengujian Ubuntu 12.04 (Lenk dkk, 2014)... 32

Gambar 2.14 Hasil Pengujian Windows Server 2008 R2 (Lenk dkk, 2014) ... 32

Gambar 2.15 Hasil Keseluruhan (Lenk dkk, 2014) ... 33

Gambar 3.1 Metode Penelitian ... 35

Gambar 3.2 Skenario Migrasi Pertama ... 37

Gambar 3.3 Skenario Migrasi Kedua ... 38

Gambar 3.4 Diagram Use Case Aplikasi Pengujian ... 39

Gambar 3.5 Diagram Aktifitas Mesanan Barang ... 41

Gambar 3.6 Diagram Aktifitas Menambah Komentar Pada Artikel ... 42

Gambar 3.7 Diagram Aktifitas Menambah Produk ... 43

Gambar 3.8 Diagram Aktifitas Mengubah Produk ... 44

Gambar 3.9 Diagram Aktifitas Menghapus Produk ... 45

Gambar 3.10 Diagram Aktifitas Menambah Review Produk ... 46

Gambar 3.11 Diagram Aktifitas Menambah Artikel Baru ... 47

Gambar 3.12 Diagram Aktifitas Mengubah Artikel ... 48

Gambar 3.13 Diagram Aktifitas Menghapus Artikel ... 49

Gambar 3.14 Diagram Aktifitas Report ... 50

Gambar 3.15 Diagram Aktifitas Menambah User Baru ... 51

Gambar 3.16 Diagram Aktifitas Mengubah User ... 52

Gambar 3.17 Diagram Aktifitas Menghapus User ... 53

Gambar 4.1 Konfigurasi Hardware Server Fisik... 67

Gambar 4.2 Konfigurasi Hardware Server Amazon EC2 ... 67

Gambar 4.3 Perubahan Konfigurasi Aplikasi ... 68

Gambar 4.4 Akses Aplikasi Setelah Migrasi Dari Server Fisik ... 68

(18)

xvi

(19)

xvii

DAFTAR TABEL

Tabel 2.1 Metodologi Cloud-RMM (Pappas, 2014) ... 21

Tabel 2.2 Metodologi ARTIST(Pappas, 2014) ... 22

Tabel 3.1 Rancangan Testbed Fungsionalitas Aplikasi ... 54

Tabel 3.2 Rancangan Testbed Pengujian Migrasi VM ... 57

Tabel 3.3 Deskripsi Level Interoperabilitas Aplikasi ... 59

Tabel 3.4 Evaluasi Hasil Keseluruhan ... 60

Tabel 4.1 Hasil Pengujian Migrasi Image VM Amazon EC2 ke Indonesian Cloud ... 64

Tabel 4.2 Hasil Pengujian Fungsionalitas Aplikasi dari Amazon EC2 ke Indonesian Cloud ... 64

Tabel 4.3 Hasil Pengujian Migrasi Image VM Amazon EC2 ke Google Compute Engine ... 74

Tabel 4.4 Hasil Pengujian Fungsionalitas Aplikasi dari Amazon EC2 ke Google Compute Engine ... 77

Tabel 4.5 Hasil Evaluasi Secara Keseluruhan... 78

Tabel 4.6 Perbandingan Hasil dengan Penelitian Sebelumnya ... 79

(20)

xviii

(21)

1

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Beragamnya cloud provider atau penyedia layanan cloud computing mengakibatkan munculnya masalah vendor lock-in. Vendor lock-in merupakan keadaan dimana pengguna suatu produk bergantung pada satu provider dan tidak dapat berpindah ke provider lain tanpa biaya yang besar dan waktu yang lama (Opera-Martins dkk, 2014). Setiap cloud provider memiliki format tersendiri dalam membangun produk layanan yang dimiliki yang menyebabkan terbatasnya kemampuan sistem bermigrasi antar cloud. Dalam proses migrasi atau perpindahan dari satu sistem ke sistem lainnya terutama dalam lingkungan cloud computing kemampuan interoperabilitas menjadi faktor yang penting. Interoperabilitas cloud merupakan kemudahan migrasi dan integrasi aplikasi dan data diantara penyedia layanan cloud computing (Dowell dkk, 2011).

Virtual Machine (VM) merupakan bagian terkecil dalam sistem khususnya dalam layanan IaaS(Infrastructure as a Service) yang dapat dilakukan proses migrasi (Lenk dkk, 2014). Dalam proses migrasi IaaS, berhasilnya proses konversi image virtual machine dari satu sistem ke sistem lain tidak menjamin berhasilnya proses migrasi. Terdapat kecenderungan beberapa parameter seperti konfigurasi jaringan, CPU, memory, parameter security, struktur aplikasi dan data yang mungkin berubah dalam proses migrasi. Masalah lain yang dapat terjadi dalam proses migrasi di level IaaS yaitu ketika aplikasi yang berjalan telah terintegrasi secara kompleks di sistem lama sehingga sistem sulit melakukan migrasi di sistem baru (Villary dkk, 2012).

(22)

2

TIOSA (Lenk dkk, 2014) merupakan suatu metode pengujian interoperabilitas pada Virtual Machine berbasis Open Data Center Alliance(ODCA). Kekurangan dari metode TIOSA ini yaitu hanya menguji dari sisi fungsionalitas sistem operasi dan hypervisor dan belum menguji pada tingkat fungsionalitas yang lebih spesifik yaitu aplikasi di sistem yang baru. Selain itu pengujian interoperabilitas yang dilakukan masih dalam tahap simulasi di jaringan lokal sehingga belum mendekati evaluasi interoperabilitas di sistem sebenarnya khususnya di bidang industri.

Tujuan dari penelitian ini yaitu untuk memperkenalkan metode untuk mengukur tingkat interoperabilitas fungsionalitas aplikasi yang bermigrasi diantara dua provider cloud IaaS yang berbeda. Manfaat dari penelitian ini yaitu memberikan referensi metode pengujian interoperabilitas migrasi sistem antar cloud yang lebih spesifik ke fungsionalitas aplikasi sehingga dapat diimplementasikan di bidang industri sesuai proses bisnis yang berjalan.

1.2 Rumusan Masalah

Munculnya masalah vendor lock-in yang disebabkan banyaknya cloud provider yang mempunyai format dan tipe pembangunan sistem yang berbeda membatasi kemungkinan migrasi aplikasi diantara cloud provider tersebut. Selain itu, belum tersedianya metode yang menguji tingkat interoperabilitas sistem yang bermigrasi diantara dua lingkungan cloud IaaS pada tingkat fungsionalitas aplikasi menyebabkan banyak organisasi kesulitan untuk mengetahui tingkat interoperabilitas sistem cloud tujuan ketika bermigrasi.

1.3 Tujuan

(23)

3

1.4 Batasan Masalah

Batasan masalah dalam penelitian ini yaitu :

1. Model layanan cloud yang digunakan yaitu IaaS(Infrastructure as a Service)

2. Aplikasi yang akan diuji menggunakan E-Commerce

3. Penelitian yang dilakukan tidak membahas interoperabilitas data dalam sistem

4. Penelitian yang dilakukan tidak membahas dari sisi keamanan sistem 5. Jenis cloud provider yang akan digunakan yaitu Amazon EC2, Indonesian

Cloud dan Google Compute Engine

6. Sistem operasi yang akan digunakan yaitu Ubuntu 12.04

1.5 Kontribusi

Kontribusi dari penelitian ini yaitu:

1. Memberikan referensi metode pengujian interoperabilitas migrasi sistem antar cloud yang lebih spesifik ke aplikasi sehingga dapat diimplementasikan di bidang industri sesuai proses bisnis yang berjalan. 2. Memberikan referensi untuk menghindari masalah vendor lock-in dalam

proses migrasi antar cloud provider terutama dalam layananan IaaS.

3. Memberikan kontribusi pengembangan metode pengujian interoperabilitas pada cloud computing khususnya pada jenis layanan IaaS.

1.6 Metodologi Penelitian

Tahapan metodologi penelitian yang akan dilakukan pada penelitian ini yaitu:

Migrasi Sistem

Pengujian dan Verifikasi Fungsionalitas Sistem Setelah

Migrasi

Analisa Hasil Pengujian Perencanaan

Desain Sistem dan Migrasi Cloud

Verifikasi Fungsionalitas Aplikasi Sebelum

Migrasi

(24)

4

Tahapan – tahapan yang dilalui dalam penelitian ini adalah sebagai berikut:

1. Perencanaan Desain Sistem dan Migrasi Cloud

Dalam tahapan perencanaan desain sistem cloud, akan dilakukan desain skenario sistem cloud yang akan dibangun dan diuji baik dari cloud sumber maupun cloud tujuan termasuk pemilihan jenis cloud dan cloud provider yang akan dipilih.

Dalam tahap perencanaan migrasi terdapat beberapa proses yang dilakukan yaitu:

a. Melakukan analisis kemungkinan migrasi antara dua cloud provider dengan mencari dan mempelajari tools yang tersedia untuk melakukan transformasi atau konversi image sistem yang didukung oleh dua cloud provider baik secara otomatis maupun manual.

b. Melakukan analisis perbandingan teknologi yang digunakan diantara dua cloud provider seperti jenis teknologi hypervisor yang digunakan, sistem operasi yang didukung oleh masing-masing cloud provider.

c. Merencanakan skenario dan metode migrasi yang akan dilakukan d. Merencanakan skenario pengujian migrasi

e. Melakukan analisis ukuran untuk menentukan tingkat interoperabiltas aplikasi diantara dua cloud provider

2. Verifikasi Fungsionalitas Aplikasi Sebelum Migrasi

Dalam tahapan ini pengujian fungsionalitas aplikasi akan dilakukan sebagai sebagai parameter acuan atau pembanding aplikasi setelah dilakukan proses migrasi.

3. Migrasi Sistem

(25)

5

4. Pengujian dan Verifikasi Fungsionalitas Sistem

Setelah proses migrasi berhasil, selanjutnya akan dilakukan tahap pengujian fungsionalitas seluruh komponen aplikasi sesuai dengan skenario pengujian yang telah dibuat

5. Analisa Hasil Uji

(26)

6

(27)

7

BAB 2

KAJIAN PUSTAKA

2.1 Cloud Computing

Cloud computing merupakan tren baru dalam bidang teknologi informasi yang memindahkan komputasi dan penyimpanan data dari perangkat komputer fisik ke data center yang besar (Lenk dkk, 2014). Barry Sosinsky (Sosinky, 2011 dalam bukunya mendefinisikan cloud computing sebagai kumpulan aplikasi dan layanan yang berjalan dan beroperasi dalam jaringan terdistribusi atau tersebar dengan memanfaatkan sumber daya virtual dan standar internet. Sejarah cloud computing berawal dari layanan baru perusahaan telekomunikasi yang menawarkan produk VPN (Virtual Private Network) yang sebelumnya merupakan sirkuit data yang bersifat to-point (Jadeja, 2012). Kekurangan layanan point-to-point ini adalah mahal dan boros bandwidth, sehingga muncul teknologi VPN sebagai layanan alternatif dimana kualitas yang ditawarkan sama dengan point-to-point tetapi jauh lebih murah jika ditinjau dari segi biaya.

(28)

8

NIST membagi deployment model menjadi 4 tipe yaitu :

1. Public Cloud : Jenis infrastruktur cloud yang bertujuan untuk penggunaan publik

2. Private Cloud : Jenis cloud yang beroperasi khusus untuk sebuah organisasi atau perusahaan

3. Hybrid Cloud : Merupakan infrastruktur campuran atau gabungan dari private dan public cloud

4. Community Cloud : Community Cloud merupakan cloud yang dibangun khusus dengan tujuan tertentu. Contohnya yaitu satu atau beberapa organisasi yang berbagi kepentingan seperti kebijakan, keamanan, regulasi dll.

Sedangkan untuk service models dibagi menjadi 3 tipe (Sosinky, 2011) yaitu :

1. IaaS (Infrastructure as a Service) : menyediakan infrastruktur komputasi yang berbasis internet meliputi mesin virtual, storage virtual, dan seluruh hardware yang dapat diakses oleh pengguna. Penyedia mengelola keseluruhan infrastruktur, sedangkan user mengelola dari segi pembangunan.

Contoh penyedia layanan IaaS :

 Amazon Elastic Compute Cloud (EC2)

 Eucalyptus

 GoGrid

 FlexiScale

(29)

9

 Linode

 RackSpace Cloud

 Terremark

2. PaaS (Platform as a Service): memungkinkan pengguna dapat membangun dan menggunakan aplikasi sendiri dalam sistem cloud yang dibangun menggunakan bahasa pemrograman dan perangkat yang didukung oleh penyedia layanan. Dari segi pengelolaan, pengelola PaaS bertanggung jawab dalam infrastruktur cloud, sistem operasi, sedangkan pengguna melakukan penginstalan dan pengelolaan aplikasi.

Contoh penyedia layanan PaaS :

 Force.com

 GoGrid CloudCenter

 Google AppEngine

 Windows Azure Platform

3. SaaS (Software as a Service): mendukung dan menyediakan layanan lengkap mulai dari aplikasi, pengelolaan, dan user interface menggunakan browser. Pengguna dapat menggunakan layanan software yang berjalan dalam lingkungan cloud sesuai kebutuhan dan tidak bertanggungjawab dalam sisi penginstalan dan perawatan software.

Contoh penyedia layanan SaaS :

 GoogleApps

 Oracle On Demand

 SalesForce.com

 SQL Azure

Terdapat beberapa karakteristik dari cloud computing yaitu (Sosinky, 2011) :

(30)

10

2. Broad Netwok Access : salah satu karakteristik cloud computing yaitu ketersediaan akses jaringan yang mendukung berbagai tipe pengaksesan dan sistem operasi yang digunakan oleh pengguna seperti laptop, handphone, dan PDA.

3. Resource Pooling : Dalam pengelolaan layanan, penyedia menyatukan seluruh sumber daya yang dapat dipakai oleh banyak penguna atau penyewa. Konsep abstraksi digunakan sehingga user tidak mengetahui posisi fisik sumber daya yang sedang diakses, juga tidak dapat membedakan apakah sumber daya yang dipakai memakai perangkat fisik ataau virtual

4. Rapid Elasticity : Sumber daya sistem dapat diperluas secara elastis sesuai kebutuhan pengguna baik dari segi perangkat fisik seperti penambahan komputer yang lebih powerful.

5. Measured Serviced : Penggunaan sumber daya dalam cloud dapat diukur, diaudit, dan dilaporkan ke pengguna berdasarkan meter system. Pengguna membayar sesuai dengan layanan yang disewa.

Terdapat beberapa manfaat yang dapat diperoleh dalam penggunaan cloud computing (Sosinky, 2011):

1. Penggunaan cloud computing dapat menekan biaya operasional karena sistem beroperasi dengan efisiensi dan pemanfaatan sumber daya yang lebih besar.

2. Tidak memerlukan lisensi software dan hardware untuk membangun sistem yang diinginkan.

3. Adanya jaminan QOS(Quality of Service) dari penyedia layanan cloud computing.

4. Beberapa fitur seperti load balancing dan failover menjamin kehandalan dalam layanan cloud computing

(31)

11

6. Pemeliharaan sistem dan infrastruktur menjadi lebih sederhana dan mudah karena sistem tersentralisasi

Selain berbagai macam keuntungan diatas, penggunaan layanan cloud computing juga memiliki beberapa kekurangan (Sosinky, 2011) yaitu :

1. Meskipun layanan cloud computing mendukung elastisitas sesuai proses bisnis dan keinginan pengguna, tetapi tidak semua keinginan pengguna akan dilayani dan diimplementasikan.

2. Seluruh aplikasi cloud computing memiliki masalah yang sama dalam hal koneksi jaringan internet khususnya latensi. Model cloud computing tidak cocok ketika aplikasi yang digunakan oleh pengguna membutuhkan transfer data dalam jumlah besar.

2.1.1 Amazon EC2

Amazon EC2 atau Amazon Elastic Compute Cloud merupakan salah satu penyedia layanan infrastruktur cloud computing komersial yang terintegrasi yang diperuntukkan untuk individu atau perusahaan. Amazon EC2 berbentuk platform komputasi berupa virtual komputer yang dapat dikostumisasi maupun dikembangkan dengan menggunakan prinsip cluster dan load balance (Amazon Web Services, 2016).

Beberapa fitur yang disediakan oleh Amazon EC2 yaitu : 1. Lingkungan virtual computing atau komputasi virtual

2. Menyediakan preconfigured templates yang disebut Amazon Machine Images (AMIs) dimana dapat digunakan untuk membangun mesin virtual, dapat berupa sistem operasi atau software tambahan lainnya. 3. Berbagai macam jenis konfigurasi CPU, memory, storage, networking

untuk kostumisasi mesin virtual

4. Layanan secure login menggunakan key pairs

(32)

12

6. Persistent storage volumes menggunakan Amazon Elastic Block Store (Amazon EBS)

7. Tersedianya berbagai lokasi fisik untuk resource yang kita gunakan 8. Firewall memungkinkan untuk mengatur protocol, port, dan range IP

yang mengakses sumber daya cloud kita

9. Alamat IPv4 statis untuk cloud computing dinamis 10.Metadata

11.Virtual network yang memungkinkan untuk melakukan isolasi secara logic dari resource Amazon EC2 lain

Amazon EC2 menggunakan hypervisor tipe XEN yang dikustom untuk pembangunan seluruh mesin virtual yang dimilikinya.

Gambar 2.2 Amazon EC2 Hypervisor (Badola, 2015)

(33)

13

Gambar 2.3 Fitur Amazon VM Export/Import (Amazon Web Services, 2016) Alur proses mekanisme untuk melakukan Import VM pada Amazon EC2 yaitu melakukan bundle VM image menjadi beberapa bentuk format yang didukung oleh Amazon EC2 yaitu RAW, VHD, VMDK, dan OVA kemudian file tersebut diupload ke Amazon S3. Ketika proses import berhasil maka image akan terdaftar dalam katalog kemudian ditransformasi menjadi AMI(Amazon Machine Image) yang selanjutnya dibedakan menurut region yang ditentukan. Sedangkan untuk proses Export VM catalog yang telah ada akan dibundle menjadi beberapa format file yaitu OVA, VHD, dan VMDK.

Untuk dapat mengakses sumber daya sistem yang ada di Amazon EC2 seperti login, Amazon EC2 menggunakan sistem keamanan kriptografi untuk melakukan enkrip dan dekrip informasi login. Kriptografi public key digunakan untuk melakukan enkrip data seperti password kemudian penerima menggunakan private key untuk melakukan dekrip data. Kedua kombinasi public key dan private key tersebut disebut key pairs.

2.1.2 Indonesian Cloud

(34)

14

of failure (Indonesian Cloud, 2016). vCloud Air merupakan secure cloud IaaS yang dibangun menggunakan fondasi hypervisor VMware vSphere.

Gambar 2.4 Arsitektur Hypervisor VMWare (Amazon Web Services, 2016)

2.1.3 Google Compute Engine

(35)

15

Gambar 2.5 Arsitektur layanan Google Compute Engine

Gambar 2.5 menunjukkan arsitektur layanan Virtual Machine pada Google Cloud Engine. Sedangkan teknologi hypervisor KVM (Kernel Based Virtual Machine).

Gambar 2.6 Arsitektur Hypervisor Google Cloud Engine

2.2 Teknologi Virtualisasi

(36)

16

2013). Virtualisasi memisahkan aplikasi, desktop, mesin, jaringan, data, dan layanan dari sumber daya fisik (PCI Security Standard Council, 2011).

Cloud computing berasal dari 2 konsep penting yaitu konsep abstraksi dimana menyembunyikan detail implementasi sistem seperti pengguna tidak mengetahui dimana letak perangkat fisik yang diakses dan konsep virtualisasi dimana menyatukan dan membagi sumber daya yang tersedia (Sosinky, 2011).. Beberapa tipe virtualisasi dalam lingkungan cloud computing yaitu :

1. Akses : Pengguna atau penyewa layanan cloud computing dapat melakukan permintaan akses dari suatu layanan cloud dari lokasi yang berbeda

2. Aplikasi : Cloud mengelola banyak aplikasi dan pengguna dapat melakukan permintaan untuk terhubung langsung sesuai kondisi.

3. CPU : Data komputer fisik dapat dibagi menjadi beberapa virtual mesin yang berjalan bersamaan dimana masing-masing mesin mempunyai beban kerja yang berbeda.

4. Storage : Data tersimpan di perangkat penyimpanan dan direplikasi untuk menyediakan layanan redundansi.

Selain tipe virtualisasi dalam cloud computing, terdapat beberapa tipe virtualisasi lain (PCI Security Standard Council, 2011) yaitu :

1. Virtualisasi Sistem Operasi

(37)

17

Umumnya digunakan untuk mengelola sumber daya dalam sistem operasi yang terletak di satu server fisik serta membagi sumber daya tersebut menjadi bagian-bagian yang lebih kecil dan masih terletak dalam kernel OS yang sama tetapi berbeda library atau distribusi seperti sumber daya virtual, aplikasi virtual, dan server privat virtual.

2. Virtualisasi Hardware/Platform

Salah satu contoh dari virtualisasi hardware yaitu teknologi partisi hardware atau bisa disebut hypervisor. Terdapat 2 jenis hypervisor (Sosinky, 2011) yaitu :

a. Type 1 VM bisa juga disebut Native VM atau Bare Metal VM dimana sistem operasi yang dijalankan dalam virtual mesin disebut guest operating sistem atau sistem operasi tamu serta dapat menjalankan beberapa tamu dalam satu mesin fisik. Sistem operasi yang berjalan dapat melakukan virtualisasi penuh dan hypervisor tipe ini tidak mempunyai sistem operasi host. Contoh produk hypervisor tipe 1 yaitu LynxSecure, RTS Hypervisor, Oracle VM, Sun xVM Server, VirtualLogix VLX, VMware ESX and ESXi, dan Wind River VxWorks

(38)

18

Gambar 2.8 Perbedaan 2 Jenis Hypervisor (Sosinky, 2011) c. Virtualisasi jaringan

Virtualisasi jaringan membedakan komponen logic dalam jaringan fisik. Seluruh komponen fisik jaringan seperti router, switch, firewall terdapat komponen logic yang berfungsi sebagai perangkat virtual.

Beberapa tipe komponen logic dalam perangkat jaringan yaitu :

1. Data plane : berfungsi melakukan forward komunikasi data diantara host dalam suatu jaringan

2. Control Plane : berfungsi mengelola traffic, jaringan, dan informasi routing

3. Management Plane : mengelola komunikasi langsung diantara 2 perangkat dengan tujuan mengatur dan mengelola perangkat menejemen perangkat jaringan

d. Data Storage

Virtualisasi penyimpanan data mengelola beberapa perangkat penyimpanan fisik yang bergabung menjadi satu perangkat menjadi sebuah subuah perangkat penyimpanan

(39)

19

Merupakan penggabungan memory fisik yang tersedia dari beberapa sistem untuk membuat sebuah kolam memory virtual yang dapat diakses antar komponen sistem

Salah satu komponen dari sistem virtualisasi yaitu virtual machine (PCI Security Standard Council, 2011). Virtual machine(VM) yaitu software komputer yang beroperasi layaknya komputer fisik yang menjalankan sistem operasi dan aplikasi (VMWare, 2015). Virtual machine berjalan secara pararel dan berbagi sumber daya dengan VM lainnya. Komponen yang mengatur dan menjalankan beberapa VM disebut hypervisor atau virtual machine monitor(VMM).

Dalam lingkungan virtualisasi terdapat suatu mekanisme yang menyediakan aspek portabilitas dalam melakukan pembangunan sistem dalam cloud menggunakan image system (Sosinky, 2011). Image system mempunyai kemampuan untuk melakukan pengkopian dan pengandaan seluruh komponen sistem dalam satu file. File image ini berisi sistem operasi, driver perangkat, aplikasi, informasi status sistem, file data yang dapat digunakan untuk melakukan restore sistem.

Virtual machine image menyediakan fasilitas pembangunan dan perbaikan secara cepat sistem virtual di beberapa host yang berbeda (PCI Security Standard Council, 2011). VM image menyimpan data-data sensitif sistem ketika image tersebut diambil seperti data konten aktif memory yang dapat mengakibatkan proses pengambilan komponen sistem yang kurang lengkap seperti penyimpanan data atau informasi penting lainnya.

Komponen file virtual machine :

1. .XML : File xml berisi detail konfigurasi di setiap virtual machine

2. .BIN : File bin berisi memory virtual machine atau snapshot dari status terakhir yang tersimpan

3. .VSV : File vsv berisi status tersimpan dari peralatan-peralatan yang berhubungan dengan virtual machine

(40)

20

5. AVHD : file disk berbeda yang digunakan dalam pembuatan virtual machine snapshot

2.3 Migrasi Cloud

Migrasi virtual machine merupakan salah satu kemampuan virtualisasi sistem dimana memungkinkan suatu aplikasi dapat dipindahkan secara transparan dari satu host fisik ke host fisik lainnya tanpa kehilangan fitur yang dimiliki (Strunk dan Dargie, 2013). Secara umum migrasi dilakukan dengan memindah/ mentransfer aplikasi beserta seluruh sistem virtual machine termasuk CPU, memory, disk dari sistem asal ke sistem tujuan. Selain dimanfaatkan untuk mengelola aplikasi beserta sumber daya dalam lingkungan data center dan sistem cloud yang tervirtualisasi, migrasi virtual machine juga memungkinkan untuk merelokasi sistem secara dinamis ke sistem lain yang memiliki eksekusi yang lebih cepat dan lebih handal (Open Data Center Alliance, 2013).

DMTF mendefinisikan tiga tipe operasi migrasi untuk virtual machine (Open Data Center Alliance, 2013):

1. Level 1 : VM hanya berjalan di produk virtualisasi/arsitektur CPU/virtual hardware tertentu. Migrasi level 1 setara dengan operasi „suspend‟ di sistem awal/sumber dan operasi „resume‟ di sistem tujuan/target. Mekanisme „Live Migration‟ dimungkinkan berjalan di Level 1.

2. Level 2 : VM berjalan di keluarga perangkat virtual yang lebih spesifik. Migrasi level 2 setara dengan operasi „shut-down‟ di sistem sumber diikuti

dengan „reboot‟ di sistem target. Migrasi berbeda hypervisor

dimungkinkan berjalan pada level ini.

(41)

21

Beberapa metodologi dalam migrasi cloud (Pappas, 2014) yaitu: 1. Cloud-RMM (Cloud-Reference Migration Model)

Merupakan model konseptual yang menggunakan pendekatan bottom-up untuk mengidentifikasi aktivitas low-level dan teknik yang kemudian dikategorisasikan untuk membentuk proses. Cloud-RMM juga menggunakan pendekatan top down untuk mementik framework yang terdiri dari beberapa proses, aktifitas, dan teknik. Tabel 1 mendeskripsikan tahapan metodologi migrasi Cloud-RMM.

Tabel 2.1 Metodologi Cloud-RMM (Pappas, 2014)

Proscess Task

Planning Feasibility study, migration requirement analysis, decisions of provider and services, migration strategies

Execution Code modification, architecture extraction, data extraction, transformation

Evaluation Deployment, Testing, Validation Crosscutting

concerns

Governance, Security, Training, Effort estimation,organizational change, Multitenancy

2. ARTIST (Advanced software-based service provisioning and migration of legacy software)

(42)

22

Tabel 2.2 Metodologi ARTIST(Pappas, 2014)

Proscess Task

Pre-migration Migration Feasibility Assesment

Migration Application Discovery & Understanding and Migration

Provisioning Testing, Verification, & Certification

2.4 Interoperabilitas

Dalam proses migrasi dari satu sistem ke sistem lainnya terutama dalam lingkungan cloud computing kemampuan interoperabilitas menjadi faktor yang penting. Interoperabilitas cloud mengacu pada kemudahan migrasi dan integrasi aplikasi,data, dan beban kerja diantara penyedia layanan cloud (Dowell dkk, 2011). Selain itu adanya incompatibilitas standar diantara penyedia cloud platform provider mengakibatkan migrasi aplikasi dari suatu provider ke provider lain masih menjadi proses yang sulit (Gholami dkk, 2016)

LISI (Levels of Information System Interoperability) (Dowell dkk, 2011) mengklasifikasikan atribut pertukaran dan pembagian informasi dan layanan antar sistem yaitu :

1. Prosedur

Mencerminkan tingkat interoperabilitas yang dihasilkan dari kebijakan operasional, panduan pembangunan fungsi program, standar arsitektur sistem seperti standar hardware, software sistem, komunikasi, dan aplikasi.

2. Aplikasi

Mencerminkan kemampuan software aplikasi yang dapat bekerja di sistem dan platform yang berbeda.

3. Infrastruktur

(43)

23 4. Data

Mencerminkan kemampuan fleksibilitas format data dan kekayaan informasi yang dipertukarkan di seluruh sistem dan domain.

Vendor lock-in merupakan merupakan keadaan dimana pengguna suatu produk bergantung pada satu provider dan tidak dapat berpindah ke provider lain tanpa biaya yang besar dan waktu yang lama (Opera-Martins dkk, 2014). Salah satu cara untuk mengatasi masalah vendor lock-in yaitu pembuatan standar interoperabilitas untuk mendukung mudahnya migrasi beban kerja, aplikasi, data dari satu cloud provider ke provider lainnya (Lewis, 2013).

Menurut (Cloud Standards Customer Council, 2013) salah satu isu utama dalam cloud computing yaitu cloud service provider lock-in, dimana ketika suatu layanan cloud dari suatu cloud provider telah diadopsi, akan sangat sulit jika akan berganti menggunakan layanan cloud yang setara di cloud provider lain. Munculnya berbagai macam standar akan meningkatkan portabilitas dan interoperabilitas sistem diantara berbagai macam cloud provider dan nantinya akan mengurangi permasalahan cloud service provider lock-in ini.

Paper (Lewis, 2013) mendefinisikan 4 dasar interoperabilitas kasus dalam lingkungan cloud computing:

1. Otentikasi user

Setiap pengguna harus teridentifikasi dalam lingkungan cloud. Beberapa standar yang mendukung kasus ini yaitu :

a. Amazon Web Services Identity Access Management (AWS IAM) merupakan mekanisme otentifikasi dan menejemen user yang digunakan oleh Amazon yang mendukung pembuatan user beserta menejemen perizinan beberapa user dalam satu akun AWS. Selain Amazon, Eucalyptus juga menggunakan standar ini untuk otentikasi user.

(44)

24

c. OpenID merupakan open standard yang memungkinkan pengguna terotentikasi dengan metode terdesentralisasi

d. WS-Security merupakan standar keamanan OASIS yang mengamankan pesan bertipe SOAP menggunakan XML Signature dan XML Encryption

2. Migrasi Beban Kerja

Migrasi beban kerja merepresentasikan migrasi VM image dari satu cloud provider ke cloud provider lain. Tipe migrasi bebean kerja membutuhkan ekstraksi beban kerja di cloud provider sumber dan upload beban kerja tersebut di cloud provider lain. Beberapa standar yang mendukung yaitu : a. Amazon Machine Image(AMI) merupakan jenis VM tertentu yang

dapat dibangun dalam lingkungan Amazon EC2. Eucalyptus dan OpenStack juga mendukung tipe AMI.

b. Open Virtualization Framework(OVF) merupakan standar pembangunan VM yang didukung oleh DMTF. Beberapa provider cloud yang mendukung yaitu Amazon EC2, Eucalyptus, dan OpenStack

c. Virtual Hard Disk(VHD) merupakan format VM yang didukung oleh Microsoft. Platform cloud yang mendukung VHD yaitu Amazon EC2 dan Microsoft Azure.

3. Migrasi Data

Dalam konteks interoperabilitas, ketika data telah dipindah ke cloud provider yang baru, seluruh program yang melakukan operasi CRUD(create, retrieve, update, delete) di cloud sebelumnya harus dapat melakukan operasi tersebut di cloud provider yang baru. Beberapa standar yang mendukung migrasi data yaitu :

a. Cloud Data Management Interface(CDMI) meruapakan standar yang didukung oleh SNIA(Storage Networking Industry Association) dimana mendefinisikan API untuk operasi CRUD pada elemen data di lingkungan cloud.

(45)

25 4. Menejemen workload

Merupakan menejemen beban kerja sistem yang dibangun dalam lingkungan cloud.

Terdapat beberapa faktor yang mempengaruhi aspek bisnis dari Interoperabilitas Virtual Machine yaitu (Open Data Center Alliance, 2013) :

1. Migrasi Aplikasi : merupakan kemampuan memindahkan aplikasi dari satu mesin Virtual Mesin di satu lingkungan cloud provider ke cloud provider lain dengan usaha minimal dengan pertimbangan efisiensi biaya, fungsionalitas, level layanan dll

2. Pengembangan Private Cloud : penambahan sumber daya komputasi pada jaringan cloud private lokal dengan mudah seperti kemudahan pengelolaan dan migrasi beban kerja antara lingkungan cloud privat dan cloud public 3. Keberlangsungan Bisnis : proses migrasi atau replikasi aplikasi

diantara provider menyebabkan beberapa masalah dan gangguan salah satunya yaitu pelanggaran keamanan.

2.5 Pengujian Aplikasi

Dalam dunia pengujian aplikasi, faktur kualitas software merupakan komponen yang tidak dapat dipisahkan. Terdapat beberapa model faktor penentu kualitas software, salah satunya yaitu model McCall (Galin, 2004) yang terdiri dari 11 faktor diantaranya yang dikategorikan dalam 3 kelompok yaitu:

1. Product operation factors: Correctness, Reliability, Efficiency, Integrity, Usability.

(46)

26

Gambar 2.9 Model McCall (Galin, 2004)

Fokus utama pengujian aplikasi cloud dalam penelitian ini yaitu faktor interoperability yang dalam konteks (Galin, 2004) disebut portability dimana merupakan kemampuan adaptasi dari sistem software ketika dipindah ke lingkungan lain yang berbeda hardware, sistem operasi, dan sebagainya.

Pengujian aplikasi atau bisa disebut software test merupakan komponen dari software quality assurance yang bertujuan untuk melakukan review terhadap software yang telah berjalan. Pengujian aplikasi yang dilakukan berdasarkan pada list test case yang telah disiapkan yang merepresentasikan berbagai macam skenario yang diinginkan. Dalam pengujian aplikasi juga dikenal istilah white box dan black box testing.

(47)

27

dari white box testing ini membutuhkan verifikasi dari setiap baris program. Terlihat pada tabel di bawah bahwa untuk portability test cukup menggunakan black box testing.

Dalam melakukan proses pengujian juga terdapat langkah-langkah proses yang diikuti.

(48)

28

Tahap pertama yaitu menentukan metodologi pengujian termasuk strategi pengujian yang akan digunakan apakah menggunakan big bag atau incremental testing. Selanjutnya yaitu melakukan merencanakan pengujian apakah unit test, integration test, maupun system test. Unit test mencakup pengujian unit kecil dari software atau modul, integration test mencakup gabungan dari beberapa unit yang bergabung menjadi sub sistem, sedangkan sistem test mengacu pada keseluruhan sistem.

Pada banyak perusahaan proses pengujian terdiri unit testing kemudian black box testing yang terdiri dari build acceptance test, fungsional test, system test, dan reliability test. Salah satu teknik black box testing yang digunakan untuk menguji dan memvalidasi software berbasis cloud yaitu BAT (Build Acceptance Test). Pengujian aplikasi menggunakan BAT menggunakan 2 metrik yaitu melakukan pemeriksaan jumlah layanan yang terlibat dalam use case yang dapat mempengaruhi test case dalam menemukan kesalahan dan mencari layanan yang spesifik berhubungan dengan banyaknya kesalahan pada software sebelumnya.

Selain itu (Srikanth dkk, 2016) dalam jurnalnya menjelaskan tentang teknik membagi prioritas test case, salah satunya yaitu total greedy prioritization technique dimana memilih test case di setiap step yang mewakili keseluruhan elemen.

Secara umum terdapat beberapa pengujian untuk aplikasi website (Cai dkk, 2014), diantaranya yaitu:

1. Unit Testing: Pengujian yang berfokus pagian kecil dari kode seperti class, method, function atau interface untuk memastikan kode yang telah dibuat berfungsi.

(49)

29

3. Compatibility Testing: Pengujian untuk mencari seberapa bagus performansi sistem website ketika dipindah ke lingkungan sistem lain yang berbeda dari segi hardware, network, sistem operasi, web browser dll.

4. Performance Testing: Pengujian untuk mengukur stabilitas, response time, scalability, dan throughpuy dari aplikasi website. Pengujian ini berfokus pada mencari masalah performansi dalam design dan arsitektur dari software.

5. Load Testing : Pengujian yang bertujuan untuk mengukur reaksi aplikasi ketika berada pada kondisi beban normal dan dalam kondisi beban yang tinggi.

6. Stress Testing : Pengujian untuk mengevaluasi reaksi aplikasi jika berada dalam kondisi diluar spesifikasinya

7. Regression Testing : Bertujuan untuk mencari kembali bugs setelah perubahan komponen sistem

8. Security Testing : Bertujuan untuk memastikan apakah aplikasi yang digunakan dapat mencegah pencurian data atau ancaman lainnya.

Dalam melakukan pengujian fungsionalitas program tentunya akan ditemukan suatu error/defect software jika terdapat masalah pada aplikasi. Penggolongan/klasifikasi defect severity terdiri dari 4 klasifikasi.

1. Critical : jika error yang terjadi mempengaruhi fungsionalitas aplikasi yang bersifat kritis. Seperti kegagalan instalasi.

2. Major : jika error yang terjadi mempengaruhi fungsionalitas utama aplikasi yang bersifat major seperti fitur dari suatu modul tidak berjalan sesuai proses bisnisnya.

3. Minor : jika error yang terjadi mempengaruhi fungsionalitas utama aplikasi.

(50)

30

2.6 Penelitian Sebelumnya

TIOSA (Testing VM Interoperability at an OS and Aplication Level) (Lenk dkk, 2014) merupakan suatu metode untuk mengukur interoperabilitas sistem antara dua hypervisor yang berbeda. TIOSA menggunakan metode pengetesan berbasis greybox yang berfokus pada verifikasi aplikasi dan sistem operasi.

Metode pengujian TIOSA yaitu :

1. Proses model yang terstruktur dan terulang a. Melakukan pengecekan interoperabilitas

Menentukan kemungkinan migrasi antara dua hypervisor dengan mengumpulkan metadata yang dibutuhkan untuk proses migrasi tersedia dan memungkinkan untuk terjadi proses migrasi.

b. Melakukan proses copy VM diantara dua hypervisor

Proses ini memastikan VM berhasil dikonversi dan dapat berjalan di hypervisor tujuan. Seluruh hasil test yang telah dilakukan masih dalam batas yang tolerable

2. Ukuran untuk menggambarkan hasil tes

Hasil test dikelompokkan dalam kategori Success, Warning, dan Failure 3. Metrik evaluasi pembanding

(51)

31

Terdapat metrik evaluasi pembanding untuk menentukan indikator hasil keseluruhan pengujian.

Implementasi metode pengujian TIOSA menggunakan kombinasi dari beberapa produk virtualisasi server yaitu VMWare, Citrix Xen, KVM dan Microsoft Hyper-V. Total kombinasi migrasi berjumlah 12 kombinasi untuk masing-masing sistem operasi. Sistem operasi yang digunakan dalam implementasi yaitu CentOS 6.2, Ubuntu 12.0.4, dan Microsoft Windows 2008 R2 64-bit. Hasil dari pengujian interoperabilitas antar hypervisor pada TIOSA dapat dilihat pada gambar sebagai berikut :

Gambar 2.12 Hasil Pengujian CentOS 6.6 (Lenk dkk, 2014)

(52)

32

Gambar 2.13 Hasil Pengujian Ubuntu 12.04 (Lenk dkk, 2014)

Dari hasil pengujian didapatkan hasil bahwa skenario pengujian konversi image menggunakan sistem operasi Ubuntu 12.04 yang mendapatkan status Successful yaitu dari Citrix Xen ke HyperV.

(53)

33

Gambar 2.15 Hasil Keseluruhan (Lenk dkk, 2014)

Dari 36 kemungkinan migrasi image VM yang diuji sebanyak 2 skenario konversi yang berhasil mendapatkan status Successful, 15 mendapatkan status Warning, sedangkan sisanya yaitu 19 konversi image mendapatkan status Failure.

(54)

34

(55)

35

BAB 3

METODE PENELITIAN

3.1 Metode Penelitian

Metode penelitian yang akan dilakukan pada penelitian ini merupakan metode pengembangan dari metode TIOSA (Lenk dkk, 2014), dimana terdapat penambahan komponen pengujian yaitu pengujian fungsionalitas aplikasi sebelum dan sesudah proses migrasi.

Konversi Image Sistem

Import Image Sistem

Pengujian Fungsionalitas

Aplikasi

Cloud Sumber

Cloud Tujuan

Evaluasi Hasil Pengujian Fungsionalitas

Aplikasi

Gambar 3.1 Metode Penelitian Tahapan metode dari penelitian yang akan dilakukan yaitu:

1. Pengujian Fungsionalitas Aplikasi di Cloud Sumber

Sebelum dilakukan proses migrasi, pengujian fungsionalitas aplikasi dilakukan untuk memastikan fungsionalitas berjalan dengan baik sebelum dilakukan proses migrasi. Pengujian fungsionalitas aplikasi di cloud sumber ini yang akan dijadikan sebagai acuan sebagai untuk pengujian fungsionalitas selanjutnya yaitu pada saat setelah migrasi.

(56)

36

Pada tahap ini dilakukan pencarian informasi dan studi mengenai kemungkinan migrasi antara dua cloud provider yang akan dilakukan proses migrasi seperti adanya tools untuk melakukan konversi image dari cloud sumber ke cloud tujuan kemudian pencarian informasi mengenai standar image sistem yang digunakan di kedua cloud provider. Proses konversi image sistem dilakukan menggunakan tools yang tersedia yang disesuaikan dengan jenis cloud provider sumber dan tujuan. Proses konversi image sistem dapat bersifat otomatis dan manual.

3. Import Image Sistem di Cloud Tujuan

Proses impor sistem dilakukan setelah seluruh konfigurasi di cloud tujuan telah siap untuk dilakukan proses impor image dari cloud sumber. Proses impor image dalam tahap ini dapat bersifat otomatis atau manual sesuai dengan jenis cloud sumber dan cloud tujuan yang digunakan.

4. Menguji aplikasi

Setelah tahap impor image sistem berhasil dilakukan dan seluruh layanan dalam sistem yang telah dimigrasi mulai dijalankan termasuk aplikasi yang akan dilakukan pengujian fungsionalitasnya.

Pengujian fungsionalitas aplikasi pada cloud tujuan menggunakan testbed yang memiliki komponen pengujian yang sama dengan pengujian di server fisik. Tujuannya yaitu melakukan verifikasi fungsionalitas aplikasi.

5. Mengevaluasi hasil

Setelah seluruh data pengujian migrasi terkumpul maka akan dapat ditentukan tingkat interoperabilitas sesuai dengan parameter ukuran yang telah ditentukan. Untuk setiap kemungkinan migrasi akan digolongkan sesuai dengan tingkat interoperabilitas aplikasinya.

3.2 Rancangan Sistem

(57)

37

3.2.1 Skenario Desain Migrasi Sistem

Terdapat 2 macam infrastruktur cloud yang akan dilakukan pengujian tingkat interoperabilitasnya. Infrastruktur pertama yaitu migrasi cloud antara Amazon Elastic Compute Cloud (EC2) dimana jenis hypervisor yang dipakai yaitu Xen dengan Indonesian Cloud dimana hypervisor yang dipakai yaitu VMware vCloud Air. Sedangkan untuk infrastruktur migrasi cloud yang kedua yaitu antara Amazon EC2 (Elastic Compute Cloud) dimana jenis hypervisor yang dipakai yaitu Xen dengan Google Compute Engine yang memakai KVM sebagai hypervisornya. Skenario migrasi yang dilakukan terbagi menjadi 2 skenario yaitu:

1. Migrasi Amazon EC2 ke Indonesian Cloud

Pada infrastruktur migrasi cloud dari Amazon EC2 ke Indonesian Cloud tahapan yang dilakukan yaitu:

a. Melakukan pengujian fungsionalitas aplikasi di server fisik b. Migrasi image dari server fisik ke server Amazon EC2 c. Melakukan pengujian fungsionalitas aplikasi

d. Migrasi image dari server Amazon EC2 ke Indonesian Cloud e. Melakukan pengujian fungsionalitas aplikasi di server

Indonesian Cloud

Sistem Operasi Aplikasi Server FIsik Source Cloud (Amazon EC2)

Virtual Machine Sistem Operasi

Aplikasi

Virtual Machine Sistem Operasi

Aplikasi Migrasi

Target Cloud 1 (Indonesian Cloud)

Virtual Machine Migrasi

(58)

38

2. Migrasi Amazon EC2 ke Google Compute Engine

Pada insfrastruktur migrasi cloud dari Amazon EC2 ke Google Compute Engine tahapan yang dilakukan yaitu :

a. Melakukan pengujian fungsionalitas aplikasi di server Amzon EC2

b. Migrasi image dari server Amazon EC2 ke Google Compute Engine

c. Melakukan pengujian fungsionalitas aplikasi di server Google Compute Engine

Source Cloud (Amazon EC2)

Target Cloud 2(Google Cloud Engine)

Virtual Machine Sistem Operasi

Aplikasi

Virtual Machine Sistem Operasi

Aplikasi Migrasi

Gambar 3.3 Skenario Migrasi Kedua

3.2.2 Aplikasi E-Commerce

Aplikasi yang akan diuji tingkat interoperabilitasnya dalam penelitian ini yaitu layanan E-Commerce. E-Commerce merupakan website yang menyediakan fasilitas membeli dan menjual produk melalui internet. Terdapat berbagai macam fitur layanan dalam suatu website E-Commerce mulai dari pencarian produk yang diinginkan pembeli, pemesanan produk, hingga transaksi.

(59)

39

Use Case dan Diagram Activity dalam penelitian ini digunakan untuk mempermudah dalam menentukan fungsionalitas aplikasi apa saja yang akan diuji.

1. Diagram Use Case Aplikasi

Diagram use case pada aplikasi menggambarkan menggambarkan fungsi-fungsi yang terdapat pada sebuah sistem dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut.

Gambar 3.4 Diagram Use Case Aplikasi Pengujian

(60)

40

artikel yang dibuat oleh administrator, melakukan submit komentar pada artikel, melakukan submit review pada produk, melihat komentar artikel, serta melihat review produk.

Sedangkan untuk aktor Administrator merupakan pengelola dari aplikasi E-Commerce yang mempunyai beberapa fungsi yaitu menambah produk, mengubah produk, menghapus produk, memproses pesanan, memproses komentar artikel, memproses review produk, menambah artikel, mengubah artikel, emnghapus artikel, melihat report penjualan, menambah, mengubah user, serta menghapus user.

2. Diagram Activity Aplikasi

Diagram activity menggambarkan alur proses yang terjadi pada aplikasi. Pada penelitian ini digunakan diagram activity /aktifitas untuk menggambarkan alur proses yang terjadi pada pada tiap modul yang akan diuji. Adapun beberapa flow aktifitas yang akan diuji yaitu:

a. Memesan Barang

(61)

41

customer. Setelah proses pemesanan berhasil customer juga dapat melihat status pemesanan untuk mengetahui status dari pemesanan yang telah dilakukan.

(62)

42 b. Menambah Komentar Artikel

Alur sistem pada aktifitas penambahan komentar artikel yaitu setelah customer mengakses halaman toko, lalu mengakses ke halaman artikel. customer harus melakukan login terlebih dahulu untuk dapat mengisi komentar artikel. Setelah proses submit artikel berhasil, selanjutnya yaitu administrator akan melakukan persetujuan komentar, setelah itu sistem akan menampilkan komentar customer tersebut. Jika komentar ditolak maka komentar akan dibuang dan tidak akan ditampilkan

Gambar 3.6 Diagram Aktifitas Menambah Komentar Pada Artikel c. Menambah Produk

(63)

43

dan administrator, serta customer akan dapat melihat produk baru yang telah dibuat.

Gambar 3.7 Diagram Aktifitas Menambah Produk d. Mengubah Produk

(64)

44

Gambar 3.8 Diagram Aktifitas Mengubah Produk e. Menghapus Produk

(65)

45

Gambar 3.9 Diagram Aktifitas Menghapus Produk f. Menambah Review Produk

(66)

46

Gambar 3.10 Diagram Aktifitas Menambah Review Produk g. Menambah Artikel Baru

(67)

47

Gambar 3.11 Diagram Aktifitas Menambah Artikel Baru h. Mengubah Artikel

(68)

48

Gambar 3.12 Diagram Aktifitas Mengubah Artikel i. Menghapus Artikel

(69)

49

Gambar 3.13 Diagram Aktifitas Menghapus Artikel j. Melihat Report

(70)

50

Customer Admin Sistem

Login

Mengakses Halaman Report

Memilih Tipe Report

Download File Laporan

Gambar 3.14 Diagram Aktifitas Report k. Menambah User Baru

(71)

51

Gambar 3.15 Diagram Aktifitas Menambah User Baru l. Mengubah Data User

(72)

52

Gambar 3.16 Diagram Aktifitas Mengubah User m. Menghapus Data User

(73)

53

Gambar 3.17 Diagram Aktifitas Menghapus User

3.3 Skenario Pengujian

Terdapat beberapa tahap dalam skenario pengujian dalam penelitian ini yaitu: 1. Pengujian Migrasi dari Amazon EC2 ke Indonesian Cloud

a. Pengujian fungsionalitas aplikasi di server fisik

b. Pengujian eksport image dari server fisik ke server Amazon EC2 c. Pengujian import image di server Amazon EC2

d. Pengujian fungsionalitas aplikasi di server Amazon EC2

e. Pengujian eksport image dari server Amazon EC2 ke server Indonesian Cloud

f. Pengujian import image di server Indonesian Cloud

g. Pengujian fungsionalitas aplikasi di server Indonesian Cloud 2. Pengujian Migrasi dari Amazon EC2 ke Indonesian Cloud

a. Pengujian fungsionalitas aplikasi di server Amazon EC2

(74)

54

c. Pengujian import image di server Google Cloud Engine

d. Pengujian fungsionalitas aplikasi di server Google Cloud Engine

3.4 Rancangan Evaluasi Hasil Pengujian

Rancangan hasil evaluasi yang pertama yaitu evaluasi fungsionalitas aplikasi. Rancangan evaluasi pengujian aplikasi ini dirancang berdasarkan alur sistem yang telah disusun pada diagram aktifitas sehingga pengujian dapat dilakukan secara terurut dan memudahkan evaluasi jika terjadi fungsionalitas yang tidak berjalan saat pengujian. Evaluasi ini akan selalu dipakai untuk pengujian fungsionalitas aplikasi baik di cloud sumber maupun di cloud tujuan setelah proses migrasi berhasil.

Tabel 3.1 Rancangan Testbed Fungsionalitas Aplikasi

No Aktifitas Detail Aktifitas Aktor Hasil 1

1.1 Mengakses Halaman

Homepage Customer

1.2 Memilih Produk Customer

1.3 Masuk ke Keranjang Belanja Customer

1.4 Memasukkan Kupon Customer

1.5 Mengubah Keranjang Belanja Customer

1.6 Melakukan Proses Checkout Customer

1.7 Mengisi Form Registrasi Akun Customer

1.8 Mengisi Form Alamat

Pengiriman Customer

1.9 Memilih Metode Pembayaran Customer

1.10 Memesan Barang Customer

1.11 Mengurangi Stok Barang Sistem

1.12 Memproses Pemesanan Administrator

1.13 Melihat Status Pemesanan Customer

2

2.2 Mengakses Halaman Produk Administrator 2.3 Mengakses Halaman Add

Product Administrator

2.4 Mengisi Deskripsi Produk Administrator 2.5 Mengunggah Gambar Produk Administrator

2.6 Mempublish Produk Administrator

2.7 Menampilkan Produk Sistem

(75)

55

No Aktifitas Detail Aktifitas Aktor Hasil

3.2 Mengakses Halaman Produk Administrator 3.3 Mengakses Halaman Edit

Produk Administrator

3.4 Mengubah Informasi Produk Administrator 3.6 Mengupdate Informasi Produk

Terbaru Sistem

3.5 Melihat Produk Administrator

3.6 Melihat Produk Customer

4.3 Mengakses Halaman Produk Administrator 4.4 Memindah Produk Ke Menu

Trash Administrator

4.5 Mengakses Halaman Trash Administrator

4.6 Menghapus Permanen Produk Administrator

4.7 Menghapus Permanen Produk Sistem

5.1 Mengakses Halaman

Homepage Customer

5.2 Mengakses Halaman Artikel Customer

5.2 Login Customer

5.3 Mengisi form komentar Customer

5.4 Submit komentar Customer

5.5 Menyetujui komentar Administrator

5.6 Menampilkan komentar Sistem

5.7 Menyetujui komentar Administrator

5.8 Melihat Komentar Customer

6

Mensubmit Review Produk

6.2 Mengakses Detail Produk Customer

6.3 Login Customer

6.4 Mengisi Kolom Review

Customer

6.5 Submit Review Customer

6.6 Menyetujui Review Administrator

(76)

56

No Aktifitas Detail Aktifitas Aktor Hasil

Customer

6.9 Melihat Review Customer Administrator

6.10 Melihat Review Customer

7.2 Mengakses Halaman Artikel Administrator 7.3 Mengakses Halaman Tambah

Artikel Administrator

7.4 Mengisi Informasi Artikel Administrator

7.5 Publish Artikel Administrator

7.6 Menampilkan Artikel Baru Sistem

7.7 Melihat Artikel Baru Administrator

7.8 Melihat Artikel Baru Customer

8.2 Mengakses Halaman Artikel Administrator 8.3 Mengakses Halaman Ubah

Artikel Administrator

8.4 Mengubah Artikel Administrator

8.5 Menampilkan Artikel Terbaru Sistem

8.6 Melihat Artikel Terbaru Administrator

8.7 Melihat Artikel Terbaru Customer

9

9.2 Mengakses Halaman Artikel Administrator

9.3 Memilih Menu Trash Administrator

9.4 Mengakses Halaman Trash Administrator

9.5 Memilih Menu Hapus

Permanen Administrator

9.6 Menghapus Artikel Sistem

10

Melihat Report

10.1 Login Administrator

10.2 Mengakses Halaman Report Administrator

10.3 Memilih Tipe Report Administrator

10.4 Download File Laporan Administrator

11

11.2 Mengakses Halaman User Administrator

11.3 Mengakses Halaman Tambah

User Administrator

11.4 Mengisi Informasi User Baru Administrator 11.5 Menyimpan Data User Baru Administrator 11.6 Menampilkan Data User

Baru Sistem

12 Mengubah User

12.1 Login Administrator

(77)

57

No Aktifitas Detail Aktifitas Aktor Hasil

12.3 Mengakses Halaman Ubah

User Administrator

12.4 Mengubah Data User Administrator

12.5 Menyimpan Perubahan User Administrator 12.6 Menampilkan Data User

Terbaru Sistem

13.2 Mengakses Halaman User Administrator

13.3 Memilih Menu Hapus User Administrator 13.4 Konfirmasi Penghapusan

User Administrator

13.5 Menghapus Data User Sistem

Setelah rancangan evaluasi pengujian aplikasi, selanjutnya yaitu rancangan pengujian migrasi yang akan dilakukan. Rancangan ini dirancang sesuai dengan skenario pengujian yang dilakukan yang dibagi menjadi 2 skenario. Jenis pengujian dibagi menjadi 2 sub pengujian yaitu Booting dan Login.

Tabel 3.2 Rancangan Testbed Pengujian Migrasi VM

No Jenis Pengujian Hasil

1 Migrasi Server Fisik ke Amazon EC2

Booting Login Migrasi Server

Amazon EC2 ke Indonesian Cloud

Booting Login 2 Migrasi Server

Amazon EC2 ke Google Compute Engine

Booting Login

(78)

58

3.5 Rancangan Parameter Level Evaluasi Interoperabilitas

Rancangan parameter evaluasi interoperabilitas disusun sebagai hasil akhir yang menentukan level interoperabilitas migrasi. Penentuan level yang digunakan mengacu dari penelitan sebelumnya (Lenk dkk, 2014). Terdapat 2 jenis rancangan evaluasi level interoperabilitas yaitu evaluasi di setiap proses migrasi yang terdiri fungsionalitas yang diuji dan evaluasi fungsionalitas secara keseluruhan yang menentukan tingkat interoperabilitas migrasi cloud.

Evaluasi level interoperabilitas ini akan dipakai untuk menguji 2 jenis pengujian yaitu pengujian migrasi image VM sistem dan pengujian fungsionalitas aplikasi setelah proses migrasi. Evaluasi fungsionalitas dibagi menjadi 3 level yaitu “Berhasil”, “Peringatan”, dan “Gagal”.

Jika pada pengujian fungsionalitas aplikasi level “Berhasil” berarti jika setelah terjadi migrasi tidak ada perubahan fungsionalitas aplikasi yang diuji. Tidak ada error/defect software yang ditemukan baik dari secara mayor maupun minor. Fungsionalitas aplikasi berhasil berjalan di cloud baru sesuai dengan fungsionalitas nya di sistem atau cloud yang lama. Level “Peringatan” diberikan jika setelah migrasi fungsionalitas yang diuji berjalan sesuai dengan fungsionalitasnya di cloud lama, tetapi terjadi beberapa perubahan di fungsionalitas lain seperti fungsionalitas minor. Level “Gagal” diberikan jika setelah terjadi migrasi, fungsionalitas yang diuji tidak berjalan sesuai dengan fungsionalitas asli di cloud lama baik fungsionalitas mayor maupun minor.

(79)

59

Tabel 3.3 Deskripsi Level Interoperabilitas Aplikasi

Level Aplikasi

Berhasil Jika setelah migrasi tidak ditemukan error/defect software kategori mayor maupun minor.

Peringatan Jika setelah migrasi ditemukan error/defect yang bersifat minor seperti :

1. Banner website tidak muncul pada homepage

2. Terdapat kesalahan redaksional pada aplikasi

Gagal Jika setelah terjadi migrasi, fungsionalitas yang diuji tidak berjalan sesuai dengan fungsionalitas asli di cloud lama dan ditemukan defect software dikategorikan sebagai defect mayor.

Contoh :

1. Custumer gagal melakukan pemesanan barang setelah memilih menu submit pemesanan

2. Administrator gagal menyimpan produk baru

3. Administrator tidak bisa login ke dalam aplikasi

(80)

60

diujikan seperti booting/reboot berjalan normal tetapi terdapat perubahan di parameter lain yang tidak terlalu signifikan. Level “Gagal” diberikan jika setelah terjadi migrasi, parameter sistem yang diuji tidak berjalan sebagaimana mestinya. Tabel 3.4 Evaluasi Hasil Keseluruhan

Level Dekripsi Penilaian

Berhasil Jika seluruh parameter yang

diujikan mendapatkan status level „Berhasil‟.

Peringatan Jika dari seluruh parameter yang diuji terdapat minimal 1 parameter yang mendapatkan status ‟Peringatan‟

Gagal Jika dari seluruh parameter yang

diuji terdapat 1 parameter yang mendapatkan status „Gagal‟

Gambar

Gambar 2.5 Arsitektur layanan Google Compute Engine
Gambar 2.7 Prinsip Virtualisasi
Tabel 2.1 Metodologi Cloud-RMM (Pappas, 2014)
Gambar 2.9 Model McCall (Galin, 2004)
+7

Referensi

Dokumen terkait

Terbukti secara sah dan meyakinkan bersalah melakukan tindak pidana pengeroyokan sebagaimana dan diancam dalam Pasal 170 ayat (2) ke-1 KUHP, dijatuhkan pidana penjara

Berdasarkan hasil analisis dari penelitian yang dilakukan, maka dapat disimpulkan bahwa work family conflict berpengaruh negatif terhadap kepuasan kerja pada karyawan

(1).Penerimaan yang tidak berupa uang atau surat berharga tetapi yang mengakibatkan penambahan satu atau beberapa pasal pengeluaran dan/atau pengurangan satu atau beberapa ayat

Pengujian dilakukan dengan mengirim data berupa sebuah unsigned char (byte) dari aplikasi Client TCP di komputer client ke aplikasi Server Virtual IP di komputer

Penelitian ini tidak menggunakan bayi yang tidak diberikan intervensi sebagai kontrol oleh karena hipotesis penelitian ini adalah menyusui memberikan respon nyeri yang

• Menjelaskan konsep dasar teori perkembangan kognitif dan tahap-tahap perkembangan kognitif • Kelompok penyaji mempresentasikan materi laporan bacaan yang disiapkan.. •

Remaja rentan dalam melakukan perilaku seks yang menyimpang salah satunya faktor ketidaktahuan orang tua dalam memberikan pendidikan seks secara dini serta adanya sikap

Hasil penelitian menun- jukkan bahwa penurunan aktivitas antioksidan serum setelah intervensi minuman bekatul le- bih nyata dibandingkan yang diintervensi jus