🛠️ Langkah Step-by-Step Setup AWS Auto Scaling
✅ Diagram Arstiketurnya
✅ Step 1: Persiapan EC2 AMI
-
Launch 1 EC2 instance (misalnya OS Ubuntu).
-
Install aplikasi yang ingin diuji scaling-nya (misal: WordPress, atau web server sederhana pakai Apache/Nginx).
-
Uji lokal, pastikan aplikasinya jalan.
-
Buat AMI (Amazon Machine Image) dari instance ini.
-
AWS Console > EC2 > Instances > Actions > Create Image
-
✅ Step 2: Buat Launch Template
-
AWS Console > EC2 > Launch Templates > Create Launch Template
-
Isi:
-
Nama
-
Pilih AMI dari step sebelumnya
-
Instance type (misalnya
t3.micro
) -
Key Pair
-
Security Group (boleh gunakan yang mengizinkan port 80/443)
-
User Data (opsional, untuk auto-config seperti install web server saat boot)
-
✅ Step 3: Buat Auto Scaling Group
-
AWS Console > EC2 > Auto Scaling Groups > Create ASG
-
Gunakan Launch Template yang tadi dibuat
-
Pilih VPC dan Subnet (wajib lebih dari 1 untuk high availability)
-
Attach ke Load Balancer:
-
Pilih “Attach to an existing load balancer” atau buat baru.
-
Pilih Application Load Balancer (ALB) jika aplikasinya web-based.
-
-
Atur Group Size:
-
Min: 1
-
Desired: 2 (misalnya)
-
Max: 4
-
-
Konfigurasi Scaling Policy:
-
Pilih “Target Tracking” atau “Step Scaling”
-
Misalnya: CPU > 70% → tambah instance; CPU < 30% → kurangi instance
-
-
Review dan Create ASG
✅ Step 4: Buat Load Balancer (Jika Belum Ada)
-
AWS Console > EC2 > Load Balancers > Create
-
Pilih Application Load Balancer (ALB)
-
Konfigurasi:
-
Listener: HTTP (port 80)
-
Tambahkan target group
-
Target type: instance
-
-
Setelah dibuat, balik ke ASG dan pastikan sudah attach ke load balancer
✅ Step 5: Uji Auto Scaling
-
Akses aplikasi via DNS Load Balancer
-
Uji beban:
-
Pakai
stress
,ab
(Apache benchmark), atausiege
untuk meningkatkan CPU -
CloudWatch akan membaca CPU usage, alarm aktif → trigger scaling
-
-
Cek EC2 instances bertambah atau berkurang
🧪 Tips untuk Simulasi Scaling (Optional)
Gunakan command di instance untuk simulasi CPU usage:
sudo apt install stress -y
stress --cpu 4 --timeout 300
📦 Bonus: Cleanup
Setelah selesai belajar:
-
Hapus ASG
-
Hapus Load Balancer
-
Hapus Launch Template
-
Terminate EC2 instances
-
Hapus AMI dan snapshot
🔧 Analogi AWS Auto Scaling: Restoran Pintar
Bayangkan kamu punya sebuah restoran yang menjual nasi goreng. Kadang ramai banget, kadang sepi tergantung jam dan hari.
🏢 1. EC2 Instance = Koki
-
Setiap koki adalah 1 EC2 instance.
-
Koki ini yang mengolah pesanan pelanggan (menjalankan aplikasi kita).
-
Kalau pelanggan banyak, satu koki kewalahan.
📦 2. Launch Template = Template Karyawan Baru
-
Kamu punya formulir perekrutan yang isinya:
-
Siapa nama calon koki
-
Skill-nya apa (bisa masak apa)
-
Jadwal kerja
-
-
Ini seperti Launch Template: template untuk membuat EC2 baru, sudah ada OS, aplikasi, setting, dll.
👥 3. Auto Scaling Group = Tim HRD Otomatis
-
HRD ini bisa otomatis menambah atau mengurangi koki berdasarkan jumlah pelanggan.
-
Kalau restoran mulai ramai → HRD panggil koki tambahan.
-
Kalau sepi → HRD suruh sebagian koki pulang.
-
Ini lah fungsinya Auto Scaling Group.
🚪 4. Load Balancer = Pelayan Kasir
-
Kasir bertugas mengatur siapa dikasih pesanan ke koki mana.
-
Kalau ada 3 koki, kasir akan bagi rata pesanan.
-
Ini seperti Elastic Load Balancer (ELB): mendistribusikan trafik ke EC2 yang tersedia.
🧠 5. CloudWatch = CCTV + Sistem Pemantau
-
CloudWatch seperti CCTV yang memantau restoran.
-
Ketika melihat antrean makin panjang (CPU usage naik), dia beri sinyal ke HRD untuk panggil koki tambahan.
-
Saat restoran sepi (CPU usage turun), dia beri sinyal untuk kurangi koki.
💡 Kesimpulan
Kalau kamu gabungkan semua:
-
Kamu punya restoran (AWS) dengan koki (EC2),
-
Yang bisa otomatis merekrut atau memberhentikan koki (ASG),
-
Dilengkapi kasir cerdas (ELB),
-
Dan diawasi oleh CCTV yang bisa ambil keputusan otomatis (CloudWatch).
No Comments