Skip to main content

Environment

Environment Pengujian

Dokumen ini menjelaskan konfigurasi environment yang digunakan dalam pengujian tugas akhir. Environment ini dirancang untuk membandingkan deployment aplikasi Node.js pada monolith server dan cloud-native environment berbasis Kubernetes.


1. Spesifikasi Umum Server

Kedua environment dijalankan pada spesifikasi server yang sama untuk menjaga objektivitas pengujian.

KomponenSpesifikasi
CPU4 vCPU
RAM8 GB
Storage80 GB
OSUbuntu Server 22.04 LTS

2. Environment A – Monolith Server

2.1 Arsitektur

  • Aplikasi Node.js dijalankan langsung di server
  • Setiap service dijalankan sebagai proses terpisah
  • Tidak menggunakan container

2.2 Komponen Software

KomponenVersi
Node.jsv18.x
Package Managernpm
Process ManagerPM2

2.3 Karakteristik

  • Deployment dilakukan manual
  • Tidak ada isolasi environment
  • Jika service gagal, perlu restart manual

3. Environment B – Cloud Native

3.1 Arsitektur

  • Setiap service dikemas dalam container Docker
  • Deployment dilakukan ke cluster K3s
  • Menggunakan CI/CD pipeline otomatis

3.2 Komponen Software

KomponenVersi
Docker24.x
K3sv1.28.x
Giteav1.22.x
Gitea RunnerLatest

3.3 Karakteristik

  • Deployment otomatis melalui pipeline
  • Self-healing melalui Kubernetes
  • Isolasi resource per service

4. Struktur Service Aplikasi

Aplikasi real case terdiri dari tiga service:

ServicePortDeskripsi
users-service3001Manajemen pengguna
products-service3002Manajemen produk
orders-service3003Manajemen transaksi

5. Networking dan Akses

  • Setiap service memiliki endpoint /health
  • Pada environment cloud-native, service diekspos menggunakan Kubernetes Service
  • Akses internal menggunakan cluster networking

6. Kesimpulan Environment

Dengan menggunakan spesifikasi server yang sama, perbedaan hasil pengujian dapat dikaitkan langsung dengan perbedaan metode deployment. Hal ini memastikan bahwa hasil pengujian bersifat adil, objektif, dan dapat dipertanggungjawabkan secara akademik.