## PENGAMANAN NESTED VIRTUALIZATION SERVER
UNTUK E-LEARNING MOODLE PADA PROXMOX VE

## MENGGUNAKAN METODE HIGH AVAILABILITY
1 Asep Sofyan Wahyudin
2 Muhamad Abdul Aziz 3 Eryan Ahmad Firdaus
4 Kanggep Andrijana Kusuma
1,2,3,4 Program Studi Pascasarjana, Magister Sistem Informasi, Sekolah Tinggi Manajemen Informatika Dan Komputer Likmi Email: 1 sofyan.wahyudin@gmail.com, 2 ziz.boxer@gmail.com,
3 eryan.ahmad@gmail.com, 4 kanggepandriana@gmail.com

## ABSTRAK
Perkembangan teknologi komputasi saat ini luar biasa sangan pesat, tak sedikit sebuah server yang  dulunya  hanya  dimanfaatkan  untuk  menangani  satu  layanan  saja,  kini  hal  itu  sudah  di anggap  sebagai  pemborosan  resource,  salah  satu  penyebabnya  adalah  perkembangan  metode virtualisasi yang di anggap dapat mengoptimalkan sebuah server untuk menangani lebih banyak layanan  dengan  cara  membuat  beberapa  mesin  virtual  dalam  satu  mesin  real  untuk memaksimalkan kemampuan server, lalu apakan dalam sebuah mesin virtual dapat menjalakan mesin virtual lagi, amankah bila digunakan untuk menangani layanan sistem informasi secara optimal.
Kata Kunci - Virtualisasi Bersarang, E-Learning, High Availability.

## ABSTRACT
The  development  of  computing  technology  is  currently  very  fast,  not  a  few  servers  that  were previously only used to handle one service, now it is considered a waste of resources, one of the causes is the development of virtualization methods which are considered to optimize servers for more  services  by  creating  several  virtual  machines  in  to one  real  machine  to  maximize  server capabilities, so in a virtual machine can it run the virtual machine again, is it safe to using it for optimal information system services.
Keyword - Nested Virtualization, E-Learning, High Availability.

## 1. PENDAHULUAN
Tren  komputer  saat  ini  semakin  matang,  dengan  harga  semakin  murah,  yang memungkinkan pengguna rumahan dan bisnis memiliki komputer multi-core dan multi- thread seperti seri dari Intel Core dan seri AMD Ryzen. Faktanya, tidak semua aplikasi
saat ini, terutama yang bukan diperuntukan untuk proses render video dan aplikasi game, dapat memanfaatkan prosesor multi-core ini dengan sebaik-baiknya [1].
Menurut  pengamatan Tony  Iams ,  seorang  analis  senior  di  D.H.  Brown  Associates Inc,  NY,    sebagian  besar  server  hanya  menggunakan  15%  hingga  20%  dari  kapasitas sebenarnya. Tentu saja, jumlah ini jauh dari ideal [2]. Virtualisasi adalah salah satu solusi memaksimalkan kemampuan sebuah PC untuk dijadikan sebuah server
Untuk  meningkatkan  kualitas  server  diperlukan  solusi  dimana  ketika  sebuah  node mengalami  kendala  maka  mesin  virtual  dapat  dipindahkan  ke  node  lain  untuk meminimalisir  penurunan layanan  yang diakses oleh klien.  Mayoritas praktisi  IT tidak akan  menyarankan  penggunaan  server  virtual  secara nested ,  karena  diragukan kemampuannya  akan  berjalan  secara  optimal,  namun  tidak ada  salahnya  kita  mencoba mencari  solusi  memanfaatkan  teknologi  ini  untu  kebutuhan  penyedia  layanan  sistem informasi  dan  mencari  solusi  tengah  karena  makin  kesini  software  virtualisasi  terus dikembangkan dan kinerjanya makin optima
Salah  satu  contoh  software  virtualisasi  yaitu VMware  Workstation yang  berfungsi sebagai  perangkat  lunak  mesin  virtual  untuk  arsitektur  komputer  x86  dan  x86-64  dari VMware (bagian dari EMC Corporation). Perangkat lunak ini digunakan untuk membuat beberapa  komputer  virtual  x86  dan  x86-64  dan  menggunakannya  secara  bersamaan dengan sistem operasi  yang digunakan. Setiap mesin virtual dapat menjalankan sistem operasi yang dipilih, seperti varian Windows, Linux, BSD, dll. Sederhananya, VMware Workstation dapat menggunakan mesin fisik untuk menjalankan beberapa sistem operasi pada waktu yang bersamaan.
Mesin virtual yang handal lainnya adalah Proxmox VE, dimana server open source untuk  virtualisasi  ini  sudah  terintegrasi  dengan  hypervisor  KVM  dan  LXC.  Dengan antarmuka  pengguna  berbasis  web  terintegrasi,  sehingga  kita  dapat  dengan  mudah mengelola VM dan kontainer (LXC).
Terminologi Nested  Virtualization sendiri  merujuk  pada  mode  virtualisasi  yang beroperasi  di  dalam  lingkungan  yang  telah  tervirtualisasi.  Dengan  kata  lain, nested virtualization merupakan  kemampuan  untuk  menjalankan hypervisor di  dalam Virtual Machine (VM) dimana VM tersebut juga beroperasi di atas hypervisor.
Fitur  utama  yang  dapat  dimanfaatkan  dari Proxmox  VE adalah High  Availability server yang  berguna  untuk  memprediksi  kegagalan  atau  kerusakan  peralatan  pada komputer server yang dapat mengganggu kinerja sistem jaringan.
Tidak  semua hypervisor dan  sistem  operasi  mendukung  virtualisasi  bersarang. Hypervisor yang  mendukung  virtualisasi  bertingkat  mencakup  hypervisor  KVM  dan VMware  ESXi.  ESXi  bersarang  juga  mendukung  hypervisor  tamu  Hyper-V,  Xen,  dan KVM pada ESXi 6.0.
Virtualisasi  bersarang  dapat  dimanfaatkan  untuk  tujuan  pengembangan,  pengujian dan pelatihan virtualisasi [3].

## 2. METODE PENELITIAN
Ujicoba  penelitian  sengaja  dilakukan  menggunakan hardware yang  secara kemampuan  bisa  dikatakan  sangat  kurang  ideal  dengan  tujuan  untuk  mencari  jawaban seberapa  jauh  kemampuan  mesin  virtualisasi  dapat  bekerja  secara nested ,    kegiatan penelitian  di  lakukan  pada  Lab.  jaringan  di  SMK  Pasundan  1  Banjaran  dengan memanfaatkan server yang sedang berjalan dengan bantuan mesin virtualisasi VMWare Workstation  yang  nantinya  akan  di  kombinasikan  dengan  Proxmox  VE  untuk menjalankan LMS e-learning Moodle pada Container LXC , dimana untuk mendapatkan hasil pengujian dilakukan dengan melakukan benchmarking pada moodle, pemantauan trafik jaringan dan aktifitas media storange.
Pada simulasi ini dua buah Proxmox VE diajalankan secara nested di dalam VMware yang berjalan diatas Windows 10, sekemanya seperti gambar di bawah ini.
Gambar 1
Contoh skema penerapan Nested Virtualization
3. HASIL DAN PEMBAHASAN
3.1 Penerapan Nested Virtualisasi dan Clustering Server
Spesifikasi  hardware  yang  digunakan  yaitu  Prosesor:  Intel  Core  i5  4460  Processor (4C/4T,  6MB  cache,  3.40GHz  Boost),  Memori  RAM:  16GB  DDR3.  Dengan penyimpanan: 256GB SSD dan 500GB HDD.
Dua  buah  Proxmox  VE  dijalankan  dengan  memanfaatkan  fitur  VT-x  atau  AMD-V yang mana keduanya adalah fitur yang mengijinkan sebuah prosessor mengekspos semua kemampuannya prosessor fisik ke mesin virtual yang sedang berjalan.

## Gambar 2
Mengaktifkan fitur VT-x/AMD-V
Setelah kita membangun dua buah server Proxmox VE secara nested pada VMware, langkah  selanjutnya  adalah  menghubungkan  kedua  server  virtualisasi  itu  secara clustering, untuk mengaktifkannya kita dapat masuk di menu Datacenter  Cluster
Gambar 3
Membuat cluster pada server Proxmox VE
Gambar 4
Melakukan join dua buah Node server Proxmox VE

## 3.2. Mengaktifkan High Availability
a. Ceph adalah penyimpanan objek dan sistem file terdistribusi yang dirancang untuk memberikan kinerja, keandalan, dan skalabilitas yang sangat baik, untuk melakukan failover kita perlu memasang ceph pada tiap node

## Gambar 5
Melakukan instalasi dan konfigurasi pada tiap node Proxmox VE
b. Membuat OSD ( Object Storage Daemon ) pada masing masing node yang berfungsi untuk menyimpan virtual disk vm dan container . Untuk define awal OSD harus hati- hati karena akan menghapus semua data pada disk yang didaftarkan sebagai OSD.
c. Membuat pool penyimpanan  untuk  menempatkan Virtual  Machine atau Container LXC
d. Jika tahap di atas telah di lakukan maka kita sudah siap memasang sebuah Container

## Gambar 6
Membuat OSD pada tiap node dan mengabungkan menjadi sebuah pool penyimpanan
e. LXC yang dikelola oleh HA ( High Availability )

## Gambar 7
Mengaktifkan mode HA untuk LXC yang akan dibagun sebagai server
3.3. Instalasi Web Server dan Database Server pada LXC
Linux Container (LXC) adalah virtualisasi sistem operasi yang memungkinkan kita menjalankan beberapa sistem Linux pada sistem komputer pada waktu yang bersamaan. Tentu  saja,  platform  ini  hanya  berlaku  untuk  Linux.  Kelebihan  menggunakan  LXC
dibandingkan Virtual Machine adalah karena ketika kita menggunakan Container LXC , performanya tidak jauh beda ketika kita menjalankan pada mesin secara langsung.
Tahapannya sebagai berikut:
a. Update repository dan upgrade LXC
# apt update
# apt upgrade
b. Install Web server, Database server dan PHP beserta extension yang akan dibutuhkan
# apt install apache2 mysql-client mysql-server php libapache2-mod-php
# apt install graphviz aspell ghostscript clamav php7.4-pspell php7.4-curl php7.4-gd php7.4-intl php7.4-mysql php7.4-xml php7.4-xmlrpc php7.4-ldap php7.4-zip php7.4- soap php7.4-mbstring
c. Sekarang kita perlu membuat Database menggunakan MySQL Server untuk Moodle dan membuat user baru
# mysql
mysql> CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
mysql> CREATE USER 'admin'@'%' IDENTIFIED BY 'pass';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;
mysql> quit;
d. Membuat folder untuk menyimpan data LMS Moodle
# chmod -R 777 /var/www/html/moodle
# chmod -R 0755 /var/www/html/moodle
e. Download LMS Moodle dan masukan ke dalam folder /var/www/html/ untuk tahap ini banyak cara yang bisa di lakukan, misalnya dengan membuka akses ssh supaya dapat di akses oleh root menggunakan aplikasi WinSCP atau FileZilla.
Setelah  berhasil  melakukan  instalasi,  untuk  menguji  performa  Web  Server  dan Database yang kita bangun, di sini saya mengunakan plugin Moodle Benchmark yang di instal  secara  manual  dari https://moodle.org/plugins/report_benchmark ,  berikut  adalah hasilnya:

## Gambar 8
Hasil benchmark pada LMS Moodle untuk melihat performa server pada sebuah Nested Virtualisasi

## 4. KESIMPULAN DAN IMPLIKASI

## 4.1 Kesimpulan
Pengguanaan Nested  Virtualization dapat  menjadi  solusi  ketika  kita  mengiginkan server yang  fleksible  dalam  melakukan Availability dan Scalability dengan  penurunan performa yang hanya berkisar di bawah angka 5-10% dibandingkan ketika menjalankan langsug pada server fisik, namun ada beberapa hasil yang harus menjadi pertimbangan ketika melakukan metode ini, diantaranya:
a. penerapan  teknik High  Availability pada server yang  di  konfigurasi  secara Nested cukup  membebani  kerja  media  penyimpanan  ketika  melaukan  singkronisasi  untuk mengabungkan dua buah storange menjadi satu
b. trafik jaringan terpantau cukup tinggi, dikarenakan komunikasi jaringan mengunakan bantuan emulasi secara software.
4.2 Implikasi
Ujicoba  sengaja  dilakukan  pada  kondisi  yang  sangan  tidak  ideal  supaya  dapat mengukur sejauh kemampuan sebuah nested virtualisasi dapat bekerja, untuk kedepannya ujicoba  dapat  dikakukang  menggunakan  hardware  yang  lebih  layak  minimal menggunakan dua buah server dalam satu jaringan dengan menggunakan SSD lebih besar dan Interface Gigabit Ethernet supaya dapat bekerja lebih optimal.

## DAFTAR PUSTAKA
[1]. Novan  A.,  Widyawan,  Sujoko  S.  2012,  Pengembangan  Virtual  Appliance  Server Dengan Metode Virtualisasi, JNTETI, vol. 1, hal 18-23\
[2]. D.H.  Brown  Associates,  Inc.  2001.  VMware:  Tool  for  Server  Consolidation http://www.vmware.com/pdf/vmware-dhbrown.pdf, diakses tgl 6 Desember 2020
[3]. C. Zonyfar, S. Sihabudin, and A. Khusaeri, “Peningkatan Kemampuan Siswa dalam Memanfaatkan  Sumber  Belajar  di  Internet  Melalui  Sosialisasi  Edukasi  Internet Cerdas, Sehat, dan Aman”, tribhakti, vol. 1, no. 1, pp. 17-20, Dec. 2019.
[4]. Forrest Stroud, Nested Virtualization,
https://www.webopedia.com/definitions/nested-virtualization/,  diakses  tanggal  6 Februari 2020
[5]. KVM  &  OpenVZ  virtualization  based  IaaS  open  source  cloud  virtualization platforms:  OpenNode,  Proxmox  VE,  http://ieeexplore.ieee.org/document/6339540/, diakses tanggal 6 Desember 2020
[6]. Linda  A.,  Ucuk  D.,  Novi  D.,  2018,  Clustering  Server  Cloud  Computing  High Availability, (JOINTECS) Journal of Information Technology and Computer Science Vol. 3, hal. 23-28
[7]. Proxmox  Virtual  Environment,  https://www.proxmox.com/en/proxmox-ve,  diakses tgl 18 Desember 2020
[8]. S. . and C. Zonyfar, “Social Media Marketing and Brand Awareness for Millennial Generation”, J Arch.Egyptol, vol. 17, no. 1, pp. 131-140, Nov. 2020.
[9]. Zonyfar,  C.,  Baihaqi,  K.  A.,  &  Pertiwi, A.  B.  (2020).  Pixel  value  differencing  and modulus  function  method  for  embedded  message  in  digital  images.  International Journal of Psychosocial Rehabilitation, 24(7), 3379-3385.
[10]. Zonyfar, C., Maharina, Zayn, M. & Barack, E., 2020. Student Enrollment: Data Mining Using Naïve Bayes Algorithm. Journal of Advanced Research in Dynamical and Control Systems, pp. 1077-1083.