Skip to main content

Pendahuluan

πŸ“š Navigasi Dokumentasi Pengujian​

Dokumentasi ini terdiri dari beberapa bagian yang saling melengkapi:

  1. Pendahuluan (halaman ini) - Konteks, metodologi, dan hipotesis penelitian
  2. Real Case - Arsitektur aplikasi, deployment strategy, dan perbandingan environment
  3. Operational Comparison - Perbandingan praktis: kemudahan manage service, deployment, dan monitoring
  4. Environment Setup - Detail konfigurasi infrastruktur
  5. CI/CD Flow - Alur pipeline lengkap
  6. Test Plan - Rencana pengujian komparatif
  7. Test Results - Hasil pengujian dan analisis
  8. Cost Analysis - Analisis biaya implementasi

Konteks Penelitian​

Dalam era transformasi digital, kecepatan rilis aplikasi (time-to-market) menjadi faktor krusial dalam persaingan bisnis. Organisasi modern dituntut untuk dapat melakukan deployment aplikasi dengan cepat, aman, dan konsisten. Namun, pada praktiknya, banyak organisasiβ€”terutama skala kecil hingga menengahβ€”masih menggunakan pendekatan monolith server dengan proses deployment manual.

Pendekatan tradisional ini menimbulkan beberapa tantangan signifikan:

  • Inkonsistensi environment antara development, testing, dan production
  • Downtime yang tidak terhindarkan saat proses deployment
  • Human error akibat ketergantungan pada intervensi manual
  • Skalabilitas terbatas ketika beban aplikasi meningkat
  • Kesulitan rollback saat terjadi kegagalan deployment

Seiring dengan adopsi arsitektur microservices dan cloud-native, paradigma deployment telah berevolusi. Container orchestration seperti Kubernetes telah menjadi standar industri untuk mengelola aplikasi modern. Namun, terdapat persepsi umum bahwa implementasi Kubernetes memerlukan:

  1. Biaya infrastruktur yang tinggi
  2. Kompleksitas teknis yang besar
  3. Tim khusus untuk operasional

Penelitian ini bertujuan untuk membuktikan bahwa cloud-native environment dapat diimplementasikan secara efisien menggunakan K3s (lightweight Kubernetes) dan tools open-source seperti Gitea dan Gitea Runner, tanpa mengorbankan kualitas dan dengan biaya yang terkontrol.


Latar Belakang​

Problematika Deployment Tradisional​

Berdasarkan observasi pada berbagai organisasi, deployment manual pada monolith server menghadapi kendala sistematis:

1. Aspek Teknis:

  • Proses deployment yang lambat (rata-rata 3-5 menit per service)
  • Inkonsistensi konfigurasi antar environment
  • Kesulitan isolasi resource antar service
  • Tidak ada mekanisme recovery otomatis

2. Aspek Operasional:

  • Human error mencapai 15-20% pada deployment manual
  • Downtime rata-rata 2-5 menit setiap deployment
  • Proses rollback memakan waktu 5-10 menit
  • Dokumentasi deployment sering tidak ter-update

3. Aspek Bisnis:

  • Time-to-market yang lambat mengurangi daya saing
  • Biaya operasional tinggi akibat intervensi manual
  • Risiko kehilangan revenue selama downtime

Gap Penelitian​

Meskipun cloud-native dan Kubernetes telah terbukti mengatasi masalah di atas, terdapat gap dalam penelitian existing:

  1. Persepsi Biaya: Banyak penelitian fokus pada implementasi Kubernetes di cloud provider (AWS EKS, GKE, AKS) yang memang berbiaya tinggi, sehingga menciptakan persepsi bahwa Kubernetes = mahal.

  2. Kompleksitas: Dokumentasi Kubernetes sering terlalu teknis dan tidak menyediakan panduan implementasi yang sederhana untuk organisasi kecil-menengah.

  3. Kurangnya Studi Komparatif: Sedikit penelitian yang membandingkan secara kuantitatif antara monolith manual vs cloud-native pada spesifikasi server yang sama.

Kontribusi Penelitian​

Penelitian ini berkontribusi dengan:

  • Membuktikan bahwa K3s dapat dijalankan pada server standar (4 vCPU, 8GB RAM)
  • Menggunakan tools open-source (Gitea, Gitea Runner) sehingga biaya terkontrol
  • Menyediakan data kuantitatif perbandingan performa deployment
  • Memberikan blueprint implementasi yang dapat direplikasi

Rumusan Masalah​

Berdasarkan latar belakang dan gap penelitian yang telah diidentifikasi, penelitian ini merumuskan masalah sebagai berikut:

  1. Bagaimana merancang arsitektur cloud-native deployment yang efisien untuk aplikasi berbasis microservices menggunakan K3s, Gitea, dan Gitea Runner?

  2. Bagaimana perbandingan performa antara deployment manual (monolith server) dengan automated deployment (cloud-native) dalam aspek:

    • Kecepatan deployment
    • Konsistensi dan reliabilitas
    • Kemampuan recovery
    • Efisiensi resource
  3. Apakah implementasi cloud-native menggunakan K3s secara signifikan meningkatkan efisiensi operasional dibandingkan pendekatan tradisional?

  4. Bagaimana analisis cost-benefit dari implementasi cloud-native environment pada spesifikasi server yang identik?


Tujuan Penelitian​

Tujuan Umum​

Merancang, mengimplementasikan, dan memvalidasi environment deployment berbasis cloud-native menggunakan K3s yang efisien, scalable, dan cost-effective untuk aplikasi microservices.

Tujuan Khusus​

  1. Merancang arsitektur cloud-native deployment yang meliputi:

    • Konfigurasi K3s cluster
    • Integrasi Gitea sebagai source control management
    • Pipeline CI/CD menggunakan Gitea Runner
    • Strategi container orchestration
  2. Mengimplementasikan proof-of-concept menggunakan real case aplikasi Node.js dengan tiga services (users, products, orders) yang saling terintegrasi.

  3. Melakukan pengujian komparatif antara monolith server dan cloud-native environment dengan metrik:

    • Deployment time
    • Deployment consistency (success rate)
    • System recovery time
    • Resource utilization
    • Operational efficiency
  4. Memvalidasi keunggulan cloud-native melalui:

    • Analisis data kuantitatif
    • Perbandingan cost-benefit
    • Evaluasi efisiensi operasional
  5. Menyediakan dokumentasi implementasi yang dapat direplikasi oleh praktisi dan peneliti lain.


Batasan dan Ruang Lingkup Penelitian​

Untuk menjaga fokus dan validitas penelitian, ditetapkan batasan sebagai berikut:

Lingkup Teknis​

Yang Termasuk dalam Penelitian:

  • Aplikasi real case berbasis Node.js dengan arsitektur 3-tier microservices
  • Deployment pada single server (4 vCPU, 8GB RAM, Ubuntu 22.04)
  • Penggunaan K3s sebagai Kubernetes distribution
  • Gitea dan Gitea Runner sebagai tools CI/CD
  • Pengujian deployment time, consistency, recovery, dan scalability

Yang TIDAK Termasuk dalam Penelitian:

  • Multi-node Kubernetes cluster
  • Cloud provider managed services (AWS EKS, GKE, Azure AKS)
  • Service mesh (Istio, Linkerd)
  • Advanced monitoring tools (Prometheus, Grafana) - hanya disebutkan sebagai rekomendasi
  • Database clustering atau high availability database
  • Load testing dengan tools khusus (JMeter, k6) - hanya basic load testing

Lingkup Pengujian​

Skenario Pengujian:

  1. Deployment Time Testing (3-5 iterasi)
  2. Deployment Consistency Testing (5 iterasi)
  3. Recovery Testing (simulasi pod/process failure)
  4. Basic Scalability Testing (concurrent requests)
  5. Operational Efficiency Assessment (kualitatif)

Metrik yang Diukur:

  • Waktu deployment (detik)
  • Success rate (%)
  • Recovery time (detik)
  • Response time (ms)
  • Error rate (%)

Lingkup Analisis Biaya​

  • Perbandingan biaya berdasarkan asumsi server yang identik
  • Fokus pada software open-source (no licensing cost)
  • Analisis cost-benefit bukan absolute cost comparison
  • Pertimbangan biaya operasional (waktu deployment, downtime)

Metodologi Penelitian​

Penelitian ini menggunakan metode eksperimental komparatif dengan pendekatan kuantitatif.

Tahapan Penelitian​

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ 1. PERSIAPAN β”‚
β”‚ - Studi literatur β”‚
β”‚ - Identifikasi tools dan teknologi β”‚
β”‚ - Perancangan arsitektur sistem β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ 2. IMPLEMENTASI β”‚
β”‚ - Setup environment A (Monolith Server) β”‚
β”‚ - Setup environment B (Cloud-Native K3s) β”‚
β”‚ - Deploy aplikasi real case β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ 3. PENGUJIAN β”‚
β”‚ - Deployment time testing β”‚
β”‚ - Consistency testing β”‚
β”‚ - Recovery testing β”‚
β”‚ - Scalability testing β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ 4. ANALISIS β”‚
β”‚ - Pengolahan data hasil pengujian β”‚
β”‚ - Analisis komparatif β”‚
β”‚ - Validasi hipotesis β”‚
β”‚ - Cost-benefit analysis β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ 5. KESIMPULAN & REKOMENDASI β”‚
β”‚ - Penarikan kesimpulan β”‚
β”‚ - Saran untuk penelitian lanjutan β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Hipotesis Penelitian​

Hβ‚€ (Null Hypothesis): Tidak terdapat perbedaan signifikan antara deployment monolith server dan cloud-native environment dalam aspek performa dan efisiensi.

H₁ (Alternative Hypothesis): Cloud-native environment menggunakan K3s memiliki performa dan efisiensi yang lebih baik dibandingkan monolith server secara signifikan.

Kriteria Penerimaan H₁:

  • Deployment time lebih cepat β‰₯30%
  • Success rate lebih tinggi β‰₯15%
  • Recovery time lebih cepat β‰₯50%
  • Operational efficiency secara kualitatif lebih baik

Sistematika Pembahasan​

Dokumentasi penelitian ini disusun secara terstruktur untuk memudahkan pemahaman:

πŸ“Œ Bab 1: Real Case​

Menjelaskan aplikasi Node.js yang digunakan sebagai objek penelitian, meliputi:

  • Arsitektur aplikasi (3 microservices)
  • Alur bisnis proses
  • Alasan pemilihan real case
  • Perbandingan dua environment yang diuji

πŸ”§ Bab 2: Environment Setup​

Menguraikan detail konfigurasi teknis:

  • Spesifikasi server
  • Environment A: Monolith Server
  • Environment B: Cloud-Native (Gitea + Gitea Runner + K3s)
  • Network configuration

πŸ”„ Bab 3: CI/CD Flow​

Menjelaskan alur otomasi deployment:

  • Pipeline architecture
  • Tahapan CI (Continuous Integration)
  • Tahapan CD (Continuous Deployment)
  • Perbandingan dengan manual deployment

πŸ“‹ Bab 4: Test Plan​

Menyajikan metodologi pengujian terstruktur:

  • Tujuan dan scope pengujian
  • Skenario pengujian detail
  • Metrik yang diukur
  • Expected outcomes

πŸ“Š Bab 5: Test Result​

Menampilkan hasil pengujian dan analisis:

  • Data hasil pengujian (tabel dan grafik)
  • Analisis komparatif
  • Validasi hipotesis
  • Interpretasi hasil

πŸ’° Bab 6: Cost Analysis​

Membahas aspek ekonomis implementasi:

  • Breakdown biaya infrastruktur
  • Perbandingan cost-benefit
  • ROI estimation
  • Kesimpulan kelayakan ekonomis

Manfaat Penelitian​

Manfaat Akademis​

  • Menyediakan referensi implementasi cloud-native untuk skala kecil-menengah
  • Memberikan data empiris perbandingan deployment tradisional vs modern
  • Menjadi baseline untuk penelitian lanjutan tentang K3s dan lightweight Kubernetes

Manfaat Praktis​

  • Blueprint implementasi yang dapat langsung digunakan oleh praktisi
  • Mengurangi persepsi bahwa Kubernetes = mahal dan kompleks
  • Meningkatkan efisiensi operasional deployment aplikasi
  • Menurunkan downtime dan meningkatkan reliability sistem

Manfaat Industri​

  • Mendorong adopsi cloud-native di organisasi skala kecil-menengah
  • Menunjukkan bahwa transformasi digital dapat dilakukan secara bertahap
  • Memberikan alternatif cost-effective untuk modernisasi infrastruktur