LMS Moodle Scalability With Google For Education - Studi Kasus Di UK Petra
LMS Moodle Scalability With Google For Education - Studi Kasus Di UK Petra
Disiapkan oleh:
Lewi Supranata Kristianto
PT. Visiniaga Mitra Kreasindo
Permasalahan - Transformasi Digital
Pendidikan Adaptasi Platform
(Infrastructure as a Service)
Topik Bahasan
1. LMS Moodle
2. Ubuntu Linux sebagai OS dengan Aplikasi Nginx, Mariadb, NFS.
3. Infrastruktur Cloud menggunakan Google Cloud dengan Auto Scaling dan
Load Balancing.
Komponen:
1. Sistem Operasi
Sistem operasi adalah perangkat lunak sistem yang mengelola perangkat keras komputer, sumber daya perangkat
lunak, dan menyediakan layanan umum untuk program komputer. Linux telah lama menjadi dasar perangkat jaringan
komersial, tetapi sekarang menjadi andalan infrastruktur perusahaan.
2. Web Server
Nginx, adalah server web yang juga dapat digunakan sebagai proxy terbalik, penyeimbang muatan, proxy email, dan
cache HTTP. Perangkat lunak ini dibuat oleh Igor Sysoev dan dirilis ke publik pada tahun 2004. Nginx adalah
perangkat lunak bebas dan sumber terbuka, dirilis di bawah ketentuan lisensi 2-klausa BSD. Penelitian ini akan
menggunakan Nginx sebagai web server.
3. PHP
PHP-FPM (FastCGI Process Manager) adalah alat web yang digunakan untuk mempercepat kinerja situs web. Ini jauh
lebih cepat daripada metode berbasis CGI tradisional dan memiliki kemampuan untuk menangani beban yang luar
biasa secara bersamaan. Penelitian ini akan menggunakan PHP-FPM 7.4.3 sebagai bahasa scripting untuk Moodle.
4. Database
MariaDB adalah sistem manajemen basis data relasional MySQL yang dikembangkan oleh komunitas dan didukung
secara komersial, dimaksudkan untuk tetap bebas dan perangkat lunak sumber terbuka di bawah Lisensi Publik
Umum GNU, dengan menggunakan MariaDB versi 10.5 sebagai database.
Komponen:
5. NFS
NFS 1.3.4 untuk berbagi file jaringan pada arsitektur autoscaling adalah protokol sistem file terdistribusi yang
awalnya dikembangkan oleh Sun Microsystems pada tahun 1984, memungkinkan pengguna di komputer klien untuk
mengakses file melalui jaringan komputer seperti halnya penyimpanan lokal diakses.
7. Aplikasi LMS
Moodle 3.9.x sebagai platform LMS adalah sistem manajemen pembelajaran sumber terbuka dan gratis, rilis Moodle
3.8 menyoroti fitur-fitur baru, menghadirkan peningkatan forum, fungsi analitik pembelajaran lebih lanjut, dan integrasi
H5P.
8. Google IaaS
IaaS (infrastruktur sebagai layanan) adalah model layanan cloud yang menawarkan sumber daya infrastruktur sesuai
permintaan, seperti komputasi, penyimpanan, jaringan, dan virtualisasi, untuk bisnis dan individu melalui cloud.Semua
ini menantang untuk diukur ketika permintaan melonjak atau bisnis tumbuh. Anda berisiko kehabisan kapasitas atau
membangun berlebihan dan membayar infrastruktur yang tidak pernah Anda gunakan.
Aplikasi Linux Server & Google Cloud tools
No OS / Software Version
5 NFS 1.3.4
Network File System
#for troubleshooting
log_warnings = 3
log_error = /var/log/mysql/error.log
log_queries_not_using_indexes = 1
long_query_time = 15
slow_query_log = 0 # Disabled for production
slow_query_log_file = /var/log/mysql/mariadb-slow.log
min_examined_row_limit = 100000
2. Konfigurasi Moodle & Linux OS
E. NFSv4 File Server & Client Configuration
1. Systemd
$ systemctl edit nfs-server
# Add following
[Service]
LimitNOFILE=2097152
LimitNPROC=2097152
2. Exports
/etc/exports:
/var/www/moodledata 10.184.0.0/16(rw,sync,no_subtree_check,no_root_squash)
3. NFS client
/etc/fstab:
10.184.0.X:/var/www/moodledata /var/www/moodledata nfs4
auto,nofail,noatime,nodiratime,nolock,intr,tcp,actimeo=1800,proto=tcp,port=2049 0 0
2. Konfigurasi Moodle & Linux OS
F. Operating System File Limit Configuration
1. Sysctl
/etc/sysctl.conf:
# file max limit
fs.file-max = 3145728
fs.nr_open = 31457282
B. PHP FPM Pool Configuration -> php security memory, shell exec
php_admin_value[memory_limit] = 2048M
php_admin_value[post_max_size] = 200M
php_admin_value[upload_max_filesize] = 200M
php_admin_value[disable_functions] =
exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file,show_source
Konfigurasi Google Cloud dan Optimalisasi
4. Google Cloud Platform Configuration
4.4. Create a Load Balancer and Attach an HTTP(s) load balancer to an Managed Instance Group (MIGs)
1. https://www.visiniaga.com/en/blog/our-blog-1/deployment-moodle-lms-on-g
oogle-cloud-platform-gcp-with-autoscaling-and-load-balance-3
2. https://docs.moodle.org/39/en/Security
3. https://cloud.google.com/compute/docs/autoscaler
4. https://cloud.google.com/compute/docs/autoscaler/scaling-cpu
5. https://cloud.google.com/compute/docs/load-balancing-and-autoscaling
6. https://cloud.google.com/stackdriver/docs/solutions/agents/ops-agent
7. https://cloud.google.com/products/calculator
Sesi Pertanyaan
1.
Dipresentasikan:
Terima Kasih 08 Desember 2022
Webinar LMS Moodle Scalability
with Google for Education