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.
| Komponen | Spesifikasi |
|---|---|
| CPU | 4 vCPU |
| RAM | 8 GB |
| Storage | 80 GB |
| OS | Ubuntu 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
| Komponen | Versi |
|---|---|
| Node.js | v18.x |
| Package Manager | npm |
| Process Manager | PM2 |
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
| Komponen | Versi |
|---|---|
| Docker | 24.x |
| K3s | v1.28.x |
| Gitea | v1.22.x |
| Gitea Runner | Latest |
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:
| Service | Port | Deskripsi |
|---|---|---|
| users-service | 3001 | Manajemen pengguna |
| products-service | 3002 | Manajemen produk |
| orders-service | 3003 | Manajemen 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.