Jurnal Teknik Informatika dan Sistem Informasi ISSN 2407-4322
Vol. 10, No. 1, Maret 2023, Hal. 670-682 E- ISSN 2503-2933 670
Ketersediaan Tinggi Infrastruktur Elearning Berbasis Komputasi Awan
Haeruddin*
Teknologi Informasi, Universitas Internasional Batam
Jl. Gajah Mada, Baloi – Sei Ladi, Batam 29442, Kepulauan Riau - Indonesia [email protected]*
Abstrak
Dalam rangkah mencegah penyebaran COVID-19 proses pembelajaran tidak dapat dilakukan secara tatap muka. Salah satu alternatif yang dapat di lakukan adalah Program Belajar Jarak Jauh. Konten pembelajaran diakses secara online pada sistem e-learning, yang memungkinkan pelajar untuk melihat dan berinteraksi dengan pengajar melalui media web browser pada perangkat laptop, personal komputer, atau layanan mobile lainnya. Dalam mendukung proses pembelajaran secara efektif dan efisien sistem e-learning tentu saja membutuhkan infrastruktur yang handal yang dapat diakses oleh banyak pengguna dalam waktu yang bersamaan. Membangun infrastruktur yang handal secara mandiri dapat menimbulkan beban kerja, perawatan dan biaya yang tinggi. Dalam mengatasi masalah ini dapat menggunakan Cloud Computing. Ini beroperasi pada jaringan internet dan memiliki fitur virtualisasi, komputasi grid, komputasi otonom dan utilitas, dengan model pay-go-use di mana klien membayar sumber daya yang diminta atau yang di gunakan saja. Salah satu penyedia layanan cloud adalah Amazon Web Service. Layanan ini dapat membuat web server untuk menerapkan high availability e-learning yang di dukung fitur Auto Scaling Instance EC2, Elastic Load Balancer, Elastic File Sistem, VPC, Database, dan konfigurasi dapat dilakukan secara otomasi dengan CloudFormation sesuai template yang telah di buat YAML. Sedangkan metode pengembangan infrastruktur high availability e-learning adalah Network Development Life Cycle.
Kata kunci - Amazon Web Service, E-learning, High Availability, Komputasi Awan, Moodle.
Abstract
In order to prevent the spread of COVID-19, the learning process cannot be done face- to-face. One alternative that can be done is the Distance Learning Program. Learning content that is accessed online on an e-learning system, which allows students to view and access the instructor via a web browser on a laptop, personal computer, or other mobile services. In supporting an effective and efficient learning process, the e-learning system requires a reliable infrastructure that can be accessed by many users at the same time. Build reliable infrastructure that can handle high workloads, maintenance, and costs. In overcoming this problem can use Cloud Computing. It operates on an Internet network and features virtualization, grid computing, autonomous computing, and utilities, with a pay-go-use model in which the client pays for resources that are served or used only. One of the cloud service providers is Amazon Web Service. This service can create a web server to implement high-availability e-learning which is supported by the EC2 Auto Scaling Instance feature, Elastic Load Balancer, Elastic File System, VPC, Database, and configuration can be done automatically with CloudFormation according to the template that has been made for YAML. Meanwhile, the high availability of e-learning infrastructure development method is the Network Development Life Cycle.
671 Jatisi ISSN 2407-4322 Vol. 10, No. 1, Maret 2023, Hal. 670-682 E-ISSN 2503-2933
Keywords - Amazon Web Service, Cloud Computing, E-learning, High Available, Moodle1. PENDAHULUAN
aat ini dunia tengah waspada pada penyebaran virus corona atau yang kita kenal dengan nama COVID-19 [1]. Penularan virus ini sangat cepat sehingga organisasi kesehatan dunia (WHO) menetapkan COVID-19 sebagai pandemi yang terjadi secara global [2]. Di Indonesia peningkatan jumlah kasus COVID-19 meningkat dalam waktu yang singkat, sehingga membutuhkan penanganan untuk mencegah penyebaran COVID-19. Dalam hal ini salah satu langkah yang diambil oleh pemerintah adalah isolasi total. Hal ini menyebabkan semua aktivitas perkantoran, termasuk proses pembelajaran pada sekolah dan universitas harus dilakukan secara remote dari rumah. Pembelajaran adalah bagian inti dari proses pendidikan. Di masa pandemi ini proses pembelajaran tidak dapat dilakukan secara tatap muka demi mengurangi wabah penyebaran COVID-19. Salah satu alternatif yang dapat dilakukan adalah Program Belajar Jarak Jauh (PBJJ) [3]. Perubahan pada proses pembelajaran tatap muka menjadi PBJJ adalah keputusan yang harus dilaksanakan oleh sekolah dan univeritas agar tujuan pendidikan dapat dilaksanakan secara efektif dan efisien.
Dalam menerapkan PBJJ selama pandemi COVID-19, para pengajar (guru dan dosen) dan pelajar (siswa/i dan mahasiswa/i) melakukan pembelajaran secara online. Agar pembelajaran dapat berjalan dengan maksimal maka membutuhkan infrastruktur dan sistem yang handal. Salah satu sistem yang dapat digunakan adalah e-learning dengan teknologi Learning Management System (LMS). LMS adalah aplikasi perangkat lunak berbasis web yang dirancang untuk menangani konten pembelajaran, interaksi mahasiswa, alat penilaian dan laporan kemajuan proses pembelajaran, dan aktivitas para pelajar. Konten pembelajaran diakses secara online melalui LMS, yang memungkinkan pelajar untuk melihat dan berinteraksi dengan alat pembelajaran melalui web browser dengan perangkat laptop, personal komputer, atau layanan mobile lainnya [4]. Pada penelitian Savira & Suharsono, 2020 yang berjudul
“Implementasi e-learning Berbasis Moodle Di Masa Pandemi Covid-19” terdapat 80,8 % responden setuju Aplikasi LMS yang digunakan adalah Moodle [5], memiliki lisensi secara terbuka, dan fitur yang banyak.
Sebagian besar institusi pendidikan memelihara web server untuk menjalankan berbagai sistem yang mereka miliki termasuk e-learning, yang membuat mereka memiliki perawatan yang tinggi, lebih banyak beban kerja, dan meningkatkan biaya. Akan tetapi jarang juga dijumpai institusi pendidikan menerapkan dukungan ketersediaan tinggi, ini dikarenakan penerapan infrastruktur yang kompleks dan mahal, sehingga mereka menggabungkan beberapa layanan menjadi satu, seperti web server dan Database dalam satu server yang sama. Untuk mengatasi hal ini dapat menggunakan teknologi komputasi awan (Cloud Computing) untuk membangun web server yang memberi kinerja yang lebih baik. Teknologi terbaru telah bergeser dari yang sudah ada ke komputasi awan. Karena investasi sumber daya serta biaya pemeliharaan yang lebih sedikit. Cloud Computing yang beroperasi melalui Internet Work Protocol memiliki fitur virtualisasi, komputasi grid, komputasi otonom dan utilitas, dengan model pay-go-use di mana klien membayar sumber daya yang diminta atau yang digunakan saja. Pelanggan komputasi awan memiliki akses lengkap ke kapabilitas teknologi informasi dan layanan yang disediakan melalui internet [6]. Salah satu yang dapat digunakan adalah teknologi cloud Amazon Web Service (AWS).
Pada penelitian ini hanya fokus pada pengembangan infrastruktur web server untuk menjalankan e-learning dengan aplikasi Moodle yang meliputi Auto Scaling Instance EC2, Elastic Load Balancer, Elastic File Sistem, VPC, Database. Konfigurasi dilakukan dengan
S
Jatisi ISSN 2407-4322
Vol. 10, No. 1, Maret 2023, Hal. 670-682 E- ISSN 2503-2933 672
menggunakan CloudFormation dengan template yang telah di buat YAML [7]. Penelitian ini tidak membahas tentang cara instalasi aplikasi Moodle secara lengkap, dan berapa biaya yang digunakan. Dalam mengembangkan sistem infrastruktur web server e-learning yang memiliki dukungan tingkat tinggi maka penulis menggunakan metode Network Development Life Cycle (NDLC) yang terdiri dari Analisis, Desain, Simulasi Prototyping, Implementasi, Pemantauan, dan Manajemen.
2. METODE PENELITIA
Metode yang digunakan dalam pembangunan ketersediaan tinggi pada infrastruktur Learning Management System (Moodle) pada AWS adalah dengan menggunakan metode Network Development Life Cycle yang terdiri dari Analisis, Desain, Simulasi Prototyping, Implementasi, Pemantauan, dan Manajemen. Namun pada model siklus tidak semua tahapan digunakan. Tahapan yang di gunakan adalah Analisis, Desain, Implementasi, dan Monitoring.
Model siklus hidup pengembangan jaringan seperti yang ditunjukkan pada gambar 1.
Gambar 1. Metode NDLC 2.1 Analisis
Tahapan ini melakukan pengumpulan yang memberikan gambaran obyektif tentang suatu masalah yang ada atau penelitian yang mendeskripsikan sebuah fenomena, peristiwa yang terjadi pada saat ini. Metode pengumpulan data dalam penelitian ini terbagi menjadi tiga bagian yaitu wawancara, studi literatur dan observasi [7].
Dari hasil tersebut dilakukan analisas berbagai kemunungkinan apa yang akan dilakukan, kemudian meberikan rekomendasi apa yang akan dilakukan papda tahapan berikutnya. Pada tahapan analisa ini kami juga menitip beratkan pada teknologi yang akan digunakan diantaranya:
a. Cloud Computing
Dunia komputasi awan terus berkembang, dengan konsep dan teknologi baru yang diciptakan untuk langkah yang cepat, ini memberikan cara yang mudah dan efisien untuk menyebarkan layanan teknologi informasi di dunia [7]. Komputasi awan adalah paradigma teknologi informasi yang memungkinkan akses dari mana saja dan kapan saja selama terhubung dengan koneksi internet. Sumber daya cloud dapat dikonfigurasi dengan layanan tingkat tinggi dan cepat [8]. Selain itu memungkinkan pelanggan dengan mudah
673 Jatisi ISSN 2407-4322 Vol. 10, No. 1, Maret 2023, Hal. 670-682 E-ISSN 2503-2933
menggunakan aplikasi pengembangan dalam mengembangkan suatu sistem dengan cepat, sangat menyederhanakan proses penambahan dan pengurangan sumber daya ke aplikasi yang sedang berjalan, serta pembayaran hanya untuk sumber daya yang benar-benar dialokasikan (model bayar per penggunaan atau bayar sesuai pemakaian) [9]. Berdasarakan jenisnya komputasi awan dibagi menjadi beberapa bagian yaitu private cloud, public cloud, dan hybrid cloud. Private Cloud adalah layanan cloud yang di kelola suatu individu atau organisasi secara pribadi. Ini bertujuan untuk menjalankan bisnis mereka dengan mengelola dan menjalankan komputasi infrastruktur mereka sendiri. Public Cloud adalah layanan komputasi yang disediakan oleh penyedia layanan cloud yang diperuntukkan kepada semua kalangan dengan biaya yang telah ditentukan. Layanan ini biasanya digunakan di enterprise B2C (Enterprise to Consumer). Hybrid cloud merupakan gabungan antara private cloud dan public cloud. Bentuk cloud ini banyak ditemukan pada perusahaan B2C dan B2B [10].
Sedangkan layanan Cloud terbagi menjadi tiga yaitu: SaaS (Software as a Service), PaaS (Platform as a Service), dan IaaS (Infrastructure as a Service). Fasilitas semacam itu digunakan oleh berbagai kategori bisnis sesuai dengan kebutuhan mereka [11].
b. Auto-scaling
Otomasi adalah metodologi yang digunakan dalam distribusi komputasi, memanfaatkan kalkulasi numerik di sekelompok komputer, biasanya diukur berdasarkan jumlah kompleksitas kinerja komputer, serta penskalaan sendiri (self-scaling) atau penskalaan otomatis (auto-scaling) dan penskalaan terprogram (programmed scaling). Salah satu contoh yaitu AWS Auto Scaling yang monitoring aplikasi dan menyesuaikan kapasitas secara otomatis dalam mempertahankan kinerja yang stabil serta memprediksi penggunaan biaya serendah mungkin. Pada penerapan auto-scaling, evaluasi dilakukan berdasarkan pada keterbatasan sumber daya awal yang telah kita tentukan. Penskalaan aturan-aturan atau metode auto-scaling yang difokuskan pada break point. Ini merupakan standar yang digunakan di seluruh penyedia cloud, termasuk Amazon EC2 [8]. Ada dua metode utama dalam melakukan auto-scaling yaitu Vertical Scaling dan Horizontal Scaling. Vertical Scaling adalah proses menambahkan atau menghapus sumber daya ke Virtual Machine untuk menjangkau kinerja yang diinginkan. Namun metode ini masih memiliki kendala terbatasnya kapasitas fisik pada sistem hypervisor. Misalnya, KVM tidak bisa secara dinamis menambah atau menghapus vCPU dalam menjalankan Virtual Machine, sedangkan VMware ESXi dapat menambahkan, tetapi tidak dapat menghapus vCPU dalam menjalankan Virtual Machine. Horizontal Scaling adalah proses menambahkan / menghapus instance Virtual Machine ke sistem untuk memenuhi tujuan spesifik tertentu.
Horizontal Scaling dikenal sebagai Out atau In scaling yang baik. Berbeda dengan Vertical Scaling, Horizontal Scaling tidak dibatasi oleh kapasitas fisik sumber daya, dan tidak memerlukan kemampuan khusus apa pun dari hypervisor yang digunakan. Sebagian besar Horizontal Scaling membutuhkan penyeimbang beban untuk mendistribusikan beban dengan tepat ke seluruh instance Virtual Machine setelah menambahkan atau menghapus instance VM tersebut [12].
c. Load balancing
Load balancing merupakan suatu mekanisme dalam jaringan komputer yang membagi permintaan menuju ke sejumlah server atau server yang terdistribusi dengan tujuan untuk pemanfaatan sumber daya yang optimal, baik itu mengurangi waktu respon, memperbesar throughput, dan mengurangi overload [13]. Server terdistribusi adalah bagian dari lingkungan cloud yang tersedia di seluruh aplikasi hosting internet yang berbeda. Untuk memberikan Quality of Service (QoS) yang lebih baik dan kinerja layanan eksternal yang efisien, diperlukan penjadwalan dan load balancing yang efisien di antara node di lingkungan cloud [14]. Salah satu fitur load balancing pada AWS adalah Elastic Load Balancer. Mekanisme ini bekerja secara otomatis membagi atau mendistribusikan trafik
Jatisi ISSN 2407-4322
Vol. 10, No. 1, Maret 2023, Hal. 670-682 E- ISSN 2503-2933 674
suatu aplikasi yang masuk ke beberapa target, seperti instans EC2, kontainer, IP address dan berbagai peralatan virtual. Ini bertujuan dapat menangani berbagai beban trafik aplikasi di berbagai Availability Zone. Pada AWS (Elastic Load Balancer) menawarkan empat fitur load yaitu: Application Load Balancer, Network Load Balancer, Gateway Load Balancer, dan Clastic Load Balancer. Application Load Balancer sangat cocok digunakan untuk layanan berbasis web yang menggunakan protokol http dan https. Network Load Balancer banyak digunakan untuk mengatur trafik jaringan yang menggunakan protokol User Datagram Protocol (UDP), Transmission Control Protocol (TCP), dan Transport Layer Security (TLS). Gateway Load Balancer digunakan dalam menjalankan peralatan jaringan virtual pihak ketiga. Sedangkan Classic Load Balancer menyediakan pengaturan trafik berdasarkan tingkat permintaan dan tingkat koneksi.
2.2 Desain
Tahapan desain adalah tahapan dimana kika menbuat rancangan konsep infrastruktur yang akan di bangun, meliputi topologi dan hubungan antara sistem yang akan di gunakan nantinya, serta fitur yang akan di gunakan. Peralatan yang di gunakan untuk membuat desain yaitu draw.io.
2.3 Implementasi
Pada tahapan ini langsung melakukan implementasi dari desain yang telah ditentukan dari tahapan sebelumnya ke Amazon Web Service. Instalasi semua aplikasi dan fitur akan dilakukan ditahapan ini juga. Implementasi menggunakan Amazon CloudFormation.
2.4 Monitoring
Tahapan monitoring adalah melakukan pemantauan pada sistem yang telah diimplementasikan, dan melakukan pengujian sistem tersebut berjalan dengan baik. Pada tahapan ini juga akan dilakukan pengujian dengan etode stress tes pada CPU.
3. PEMBAHASAN 3.1 Analisis
Jika dilihat rata-rata pemasangan Moodle di kampus atau sekolah, kita akan melihat semua aspek penyiapan yang diterapkan pada satu server. Ini akan mencakup server web dan Database, serta server pencadangan. Akan tetapi kita tidak akan melihat bentuk failover lain atau dukungan ketersediaan tinggi (high available). Untuk membangun hal tersebut membutuhkan biaya yang relatif tinggi seperti harus menyediakan minimal 2 server, 2 perangkat jaringan yang medukung ketersediaan tinggi, serta 2 koneksi internet. Oleh karena itu layanan cloud seperti AWS memungkinkan membangun e-learning dengan aplikasi Moolde dengan dukungan ketersediaan tinggi. Dukungan ketersediaan tinggi adalah membangun layanan Moodle yang tahan terhadap kegagalan dan dapat diskalakan dalam hal kinerja saat dibutuhkan. Untuk menjaga efisiensi biaya, perancangan ini dengan spesifikasi rendah, dimana sistem akan menerapkan server tambahan untuk menangani beban saat dibutuhkan, tetapi di waktu lain seperti musim liburan akan mengurangi penggunaan server ke minimum yang diperlukan untuk menjaga situs web (Moodle) berfungsi.
3.2 Desain
Dalam perancangan high available Learning Management System (Moodle) dapat dilihat pada gambar 2 berikut adalah komponen komponen yang harus di terapkan.
675 Jatisi ISSN 2407-4322 Vol. 10, No. 1, Maret 2023, Hal. 670-682 E-ISSN 2503-2933
Gambar 2. Arsitektur Implementasi Moodle pada AWS
1. Amazon CloudFront, ini merupakan layanan pada AWS yang mempercepat pengiriman konten yang ada pada sistem yang kita miliki dengan memanfaatkan jaringan AWS secara global, konten yang ada pada sistem yang kita miliki akan didistribusikan didekat pengguna akhir sistem yang kita miliki. Pada kasus ini CloudFront akan mengambil konten dari Moodle yang berada pada instance EC2 atau media penyimpanan seperti S3 dan EFS.
2. Internet Gateway memiliki peran penting untuk menghubungkan jaringan yang ada pada VPC yang kita miliki ke jaringan internet. Ini bertujuan agar server yang kita miliki dapat diakses dan mengakses internet.
3. NAT Gateway berfungsi untuk menerjemahkan Private Subnet (APP Subnet dan Data Subnet) ke Public Subnet agar terhubung ke internet.
4. Application Load Balancer mendistribusikan lalu lintas aplikasi yang masuk di beberapa instance EC2 (APP Moodle) di beberapa Availability Zone. Kita dapat mencapai ketersediaan tinggi dengan mengelompokkan beberapa server Moodle yang berjalan di belakang Application Load Balancer.
5. Amazon EC2 Auto Scaling membantu dalam memastikan jumlah instance EC2 yang benar untuk menangani beban aplikasi Moodle. Pada kasus ini Amazon EC2 Auto Scaling bekerja berdasarkan pemakaian CPU. Instance akan bertambah ketika pemakaian CPU rata-rata melebihi >=75% dalam waktu yang telah ditentkan dan dihapus ketika pemakaian CPU rata- rata kurang dari <=50%. Auto Scaling Instance EC2 akan menjalankan sistem operasi Ubuntu 20.04 LTS, aplikasi Moodle 3.11, aplikasi Web server Apache 2.4 dan PHP 7.4.
6. Caching dapat berdampak dramatis pada kinerja Moodle. Template akan mengonfigurasi berbagai bentuk caching termasuk OPcache, CloudFront, dan ElastiCache. Opcache mempercepat eksekusi PHP caching skrip yang telah dikompilasi dalam memori. Manfaat OPcache adalah peningkatan kinerja dan penggunaan memori yang jauh lebih rendah.
Amazon ElastiCache adalah layanan penyimpanan nilai kunci dalam memori yang kompatibel dengan Memcached yang dapat digunakan sebagai cache atau penyimpanan data.
Moodle merekomendasikan agar tidak menggunakan server memcached yang sama untuk
Jatisi ISSN 2407-4322
Vol. 10, No. 1, Maret 2023, Hal. 670-682 E- ISSN 2503-2933 676
kedua sesi dan MUC. Peristiwa yang memicu pembersihan cache MUC menyebabkan MUC menghapus server memcached. Oleh karena itu, harus mengonfigurasi dua kluster ElastiCache, satu untuk cache sesi dan satu lagi untuk cache aplikasi.
7. Database merupakan penyimpanan data terpusat, agar tercipta keterssediaan tinggi direkomendasikan menggunakan Database yang mendukung klasterisasi seperti PostgreSQL.
8. EFS Mount Target adalah fitur yang digunakan untuk menghubungkan Instance EC2 untuk mengakses file share Moodle Data yang ada pada EFS dalam VPC.
9. Amazon Elastic File System (Amazon EFS) menyediakan penyimpanan file yang sederhana dan dapat diskalakan untuk digunakan dengan instance EC2 di AWS Cloud. Meskipun menginstal Moodle di EFS akan membuat manajemen (pembaruan, patching, dll.) lebih mudah, namun Moodle tidak dapat bekerja dengan baik ketika dijalankan dari penyimpanan bersama. Oleh karena itu Moodle merekomendasikan bahwa dir root dikonfigurasi di penyimpanan lokal (Web server). Sedangkan Moodle Data, Moodle Cache, dan Moodle Temp dapat disimpan pada penyimpanan bersama. Berikut ini adalah struktur direktori Moodle dengan model cluster webserver:
$CFG->dirroot = '/var/www/moodle/html' #Stored on root EBS volume
$CFG->dataroot = '/var/www/moodle/data' #Stored on shared EFS filesystem
$CFG->cachedir = '/var/www/moodle/cache' #Stored on shared EFS filesystem
$CFG->tempdir = '/var/www/moodle/temp' #Stored on shared EFS filesystem
$CFG->localcachedir = '/var/www/moodle/local' #Stored on root EBS volume
Jika dilihat rata-rata pemasangan Moodle di kampus atau sekolah, kita akan melihat semua aspek penyiapan yang diterapkan pada satu server. Ini akan mencakup server web dan Database, serta server pencadangan. Akan tetapi kita tidak akan melihat bentuk failover lain atau dukungan ketersediaan tinggi (high available). Untuk membangun hal tersebut membutuhkan biaya yang relatif tinggi.
3.3 Implementasi
Dalam implelentasi infrastruktur web server e-learning menggunakan AWS Cloud Formation. Ini akan mempermudah dalam mengimplementasikan infrastruktur yang telah dirancang seperti pada gambar 2 diatas secara otomatis, dengan menggunakan template yang telah dibuat sebelumnya, kita hanya mengisi beberapa parameter kemudian menjalankannya.
Adapun alur stack kode yang telah dibuat seperti pada gambar 3 dibawa ini. Setelah menjalankan stack pada AWS Cloud Formation, maka terdapat beberapa parameter yang harus diisi sesuai dengan rancangan yang telah di tentukan.
677 Jatisi ISSN 2407-4322 Vol. 10, No. 1, Maret 2023, Hal. 670-682 E-ISSN 2503-2933
Gambar 3 Alur Stack Kode yang Telah di Buat
Pada gambar 4 terdapat parameter General AWS yang berisi EC2 Key Pair yang nantinya akan di gunakan untuk login ke Instance EC2, SSH akses 0.0.0.0/0 yang berarti dari semua jaringan, serta domain yang akan digunakan pada implementasi ini. Pada contoh kali ini domain yang digunakan untuk e-learning adalah learning.jasakonfig.com. Pada bagian Network menggunakan satu VPC dan untuk menjalankan Auto Scaling dan Load Balancer minimal harus menggunakan dua Availability Zone, serta menambah network address subnet Public, aplikasi subnet, dan data subnet seperti pada rancangan gambar 2.
Jatisi ISSN 2407-4322
Vol. 10, No. 1, Maret 2023, Hal. 670-682 E- ISSN 2503-2933 678
Gambar 4. Parameter General dan Network
Pada gambar 5 terdapat parameter File System yang berisi EFS performance=general purpose, encrypted EFS=true, dan instance type yang digunakan kita pilih t2.small untuk biaya yang lebih murah. Pada Database DB Instance Class menggunakan db.r4.large, encrypted DB Cluster=true, kemudian nama dan usernya database kita isi Moodle.
Gambar 5 Parameter File System dan Database
Pada gambar 6 terdapat Caching yang terdiri dari use session cache=false akan di konfigurasi setelah proses stack selesai, Session Cache Node Type=cache.t2.nano, Use Application Cache=true, dengan Application Cache Node Type=cache.t2.nano, dan Use Cloud Front=true. Pada Bastion Instance Type t2.nano yang akan di gunakan untuk NAT. Pada Web pilih instance Type=t2.large dengan dengan Web Server ASG Max=3 dan Web ASG Min=1.
Jadi kita memiliki minimal satu instance EC2 untuk menjalankan web server dan maksimal tiga server instance EC2 jika terjadi Auto Scaling.
Gambar 6 Parameter Caching, NAT, Web
679 Jatisi ISSN 2407-4322 Vol. 10, No. 1, Maret 2023, Hal. 670-682 E-ISSN 2503-2933
Pada gambar 7 dapat dilihat proses konfigurasi menggunakan stack pada AWS CloudFormation telah berjalan dengan baik.
Gambar 7. Proses Stack Berhasil
Gambar 8 merupakan konfigurasi Memcached pada Moodle yang diarahkan ke Memcache yang telah di buat di AWS.
Gambar 8. Menambahkan Memcache pada Aplikasi Moodle
3.4 Monitoring
Setelah berhasil mengimplementasikan layanan e-learning tingkat tinggi pada AWS, pada tahapan pemantauan untuk memastikan apa sistem berjalan sesuai dengan yang telah di tentukan sebelumnya yang dapat dilihat seperti pada gambar 9 di bawah ini.
Jatisi ISSN 2407-4322
Vol. 10, No. 1, Maret 2023, Hal. 670-682 E- ISSN 2503-2933 680
Gambar 9. Monitoring dan Pengujian Auto Scaling
Di tahapan ini akan dilakukan uji coba untuk Auto Scaling pada Web server yang telah di instal aplikasi Moodle. Pengujian dilakukan dengan menggunakan stress tes pada server tersebut. Aplikasi stress di instal pada Ubuntu server. Menjalankan perintah berikut ini: #stress -c 8 -m 8 -t 900s, dimana -c adalah jumlah beban core yang akan diuji harus melebihi jumlah vCPU yang dimiliki server, -m adalah alokasi penggunaan ram yang akan digunakan saat stress tes di jalankan, -t adalah durasi stress tes yang di jalankan yaitu 15 menit. Dari hasil pengujian menunjukkan bahwa setelah dilakukan stress tes selama15 menit penggunaan vCPU naik menjadi 100% seperti pada gambar 9, dimana terdapat penambahan instance EC2 (web server) dari satu menjadi tiga. Setelah stress tes dihentikan dan penggunaan menurun dibawah <= 50%
maka secara otomatis jumlah instance EC2 kembali menurun ke angka awal yaitu satu.
4 KESIMPULAN DAN SARAN
Pada masa pandemi COVID-19 tidak memungkinkan melakukan pembelajaran secara tatap muka, sehingga Program Belajar Jarak jauh (BPJJ) menjadi solusi. Teknologi yang dapat digunakan untuk memaksimalkan pembelajaran jarak jauh adalah e-learning salah satu aplikasi yang dapat digunakan yaitu Moodle. Dalam mengantisipasi lonjakan trafik ke sistem e-learning harus diantisipasi dengan infrastruktur yang handal. Dengan mengimplenentasikan infrastruktur sendiri akan mengeluarkan biaya banyak sehingga solusi yang dapat digunakan adalah teknologi cloud. Salah satu penyedia layanan cloud yang dapat digunakan untuk mengimplementasikan high availablity e-learning yaitu AWS. Pada layanan cloud ini kita dapat membangun infrastruktur layanan secara otomasi dengan CloudFormation berdasarkan template yang telah dirancang, meningkatkan layanan web server menggunakan Auto Scaling, Load Balancer, serta
681 Jatisi ISSN 2407-4322 Vol. 10, No. 1, Maret 2023, Hal. 670-682 E-ISSN 2503-2933
penggunaan Database yang handal. Untuk pembayaran pada cloud sesuai dengan yang sumberdaya yang digunakan saja. Untuk penelitian berikutnya dapat membuat layanan serupa dengan ini dan desain yang lebih sederhana, serta rincian estimasi biaya yang akan dikeluarkan setiap bulannya.
DAFTAR PUSTAKA
[1] V. No and N. Mona, “Konsep Isolasi Dalam Jaringan Sosial Untuk Meminimalisasi Efek Contagious (Kasus Penyebaran Virus Corona di Indonesia),” J. Sos. Hum. Terap., Vol. 2, No. 2, pp. 117–125, 2020, doi: 10.7454/jsht.v2i2.86.
[2] R. Widiyani, “Latar Belakang Virus Corona, Pekembangan Hingga Isu Terkini.”
https://news.detik.com/berita/d-4943950/latar-belakang-virus-corona-perkembangan- hingga-isu-terkini.
[3] N. B. Argaheni, “Sistematik Review: Dampak Perkuliahan Daring Saat Pandemi COVID-19 Terhadap Mahasiswa Indonesia,” PLACENTUM J. Ilm. Kesehat. dan Apl., Vol. 8, No. 2, p. 99, 2020, doi: 10.20961/placentum.v8i2.43008.
[4] N. N. M. Kasim and F. Khalid, “Choosing The Right Learning Management System (LMS) For The Higher Education Institution Context: A Systematic Review,” Int. J.
Emerg. Technol. Learn., Vol. 11, No. 6, pp. 55–61, 2016, doi: 10.3991/ijet.v11i06.5644.
[5] F. Savira and Y. Suharsono, “Implementasi E-Learning Berbasis Moodle di Masa Pandemi Covid 19,” J. Chem. Inf. Model., Vol. 01, No. 01, pp. 1689–1699, 2020.
[6] A. R and J. Agarkhed, “Evaluation of Auto Scaling and Load Balancing Features in Cloud,” Int. J. Comput. Appl., Vol. 117, No. 6, pp. 30–33, 2015, doi: 10.5120/20561- 2949.
[7] M. Mangayarkarasi, S. Tamil Selvan, R. Kuppuchamy, S. Shanthi, and S. R. Prem,
“Highly Scalable and Load Balanced Web Server On AWS Cloud,” IOP Conf. Ser. Mater.
Sci. Eng., Vol. 1055, No. 1, p. 012113, 2021, doi: 10.1088/1757-899x/1055/1/012113.
[8] V. K. Verma, “Evaluations of Distributed Computing on Auto-Scaling and Load Balancing Aspects in Cloud Systems,” Vol. 2, pp. 31–37, 2020.
[9] T. Lorido-Botran, J. Miguel-Alonso, and J. A. Lozano, “A Review of Auto-Scaling Techniques for Elastic Applications in Cloud Environments,” J. Grid Comput., Vol. 12, No. 4, pp. 559–592, 2014, doi: 10.1007/s10723-014-9314-7.
[10] Y. Khan and S. Varma, “An Efficient Cloud Forensic Approach For IaaS, SaaS and PaaS Model,” 2nd Int. Conf. Data, Eng. Appl. IDEA 2020, 2020, doi:
10.1109/IDEA49133.2020.9170707.
[11] N. Dimitri, “Pricing Cloud Iaas Computing Services,” J. Cloud Comput., Vol. 9, No. 1, 2020, doi: 10.1186/s13677-020-00161-2.
Jatisi ISSN 2407-4322
Vol. 10, No. 1, Maret 2023, Hal. 670-682 E- ISSN 2503-2933 682
[12] A. Al-Dulaimy, J. Taheri, A. Kassler, M. R. Hoseiny Farahabady, S. Deng, and A.
Zomaya, “MULTISCALER: A Multi-Loop Auto-Scaling Approach for Cloud-Based Applications,” IEEE Trans. Cloud Comput., Vol. XXX, No. AUGUST, pp. 1–18, 2020, doi: 10.1109/TCC.2020.3031676.
[13] S. D. Riskiono and D. Darwis, “Peran Load Balancing Dalam Meningkatkan Kinerja Web Server di Lingkungan Cloud,” Krea-Tif, Vol. 8, No. 2, pp. 1–8, 2020.
[14] U. K. Jena, P. K. Das, and M. R. Kabat, “Hybridization of Meta-Heuristic Algorithm For Load Balancing In Cloud Computing Environment,” J. King Saud Univ. - Comput. Inf.
Sci., No. xxxx, pp. 1–11, 2020, doi: 10.1016/j.jksuci.2020.01.012.