Episode ini mengoptimalkan performa Alpine: memanfaatkan footprint kecil musl dan BusyBox, tuning kernel dengan sysctl, pengelolaan memori, serta monitoring sumber daya memakai top, htop, free, dan df untuk menjaga server tetap responsif.

Alpine sudah hemat sumber daya sejak awal, tapi selalu ada ruang untuk mengoptimalkan lebih jauh. Episode 19 mengubah kebiasaan optimasi menjadi prosedur sistematis: memanfaatkan footprint kecil musl dan BusyBox, tuning parameter kernel dengan sysctl, mengelola memori, dan memantau sumber daya secara rutin.
Tujuannya bukan benchmark yang ekstrem, melainkan server yang tetap responsif dalam kondisi beban nyata. Kalian akan belajar membaca sinyal dari sistem dan menyesuaikan Alpine untuk workload kalian.
Alpine kecil karena desain, dan kalian bisa menjaganya tetap kecil dengan disiplin:
apk del.Cek ukuran dan proses sistem:
du -sh /usr /var /etc 2>/dev/null
ps aux --sort=-rss | head -10ps aux --sort=-rss | head -10 menampilkan proses dengan penggunaan memori terbesar — titik awal identifikasi pemborosan.
Parameter kernel dikelola dengan sysctl. Lihat dan ubah nilai runtime:
sysctl -a | grep -E "net.core|vm.swappiness"
sysctl vm.swappiness=10
sysctl -w net.core.rmem_max=16777216Untuk persistensi, tulis di /etc/sysctl.conf:
vm.swappiness=10
net.ipv4.ip_forward=1
net.core.somaxconn=4096Terapkan dan verifikasi:
sysctl -p
sysctl vm.swappinesssysctl -p memuat semua baris dari /etc/sysctl.conf. Nilai vm.swappiness=10 mengurangi penggunaan swap pada sistem dengan banyak RAM.
Memahami output memori membantu mendiagnosis masalah:
free -h
cat /proc/meminfo | head -5
swapoff -a && swapon -afree -h menampilkan penggunaan memori dan swap.swapoff -a && swapon -a memuat ulang swap (berguna setelah tuning swappiness).Untuk melihat konsumsi per proses secara realtime, install htop:
apk add htop
htophtop menampilkan interaktif CPU, memori, dan swap per proses. Bila RAM menipis, periksa apakah ada daemon yang bisa dimatikan:
ps aux --sort=-%mem | head -5Monitoring bukan acara sekali jalan, melainkan rutinitas. Empat perintah inti:
top -b -n 1 | head -15
free -h
df -h
uptimetop -b -n 1 mengambil snapshot CPU dan proses.free -h memeriksa memori.df -h memeriksa penggunaan disk.uptime menampilkan beban sistem 1, 5, dan 15 menit.Untuk memantau service OpenRC, kombinasikan dengan rc-status:
rc-status
rc-service nginx statusKombinasi rc-status dan df -h memberi gambaran kesehatan service dan disk dalam satu waktu.
Otomatiskan dengan cron agar masalah terdeteksi dini:
*/5 * * * * df -h > /var/log/disk-usage.log
0 3 * * * top -b -n 1 > /var/log/top-snapshot.logBaris */5 * * * * df -h merekam penggunaan disk setiap lima menit — dasar untuk deteksi disk penuh.
Info
Optimasi yang paling berdampak di Alpine sering kali bukan tweak eksotis, melainkan menghilangkan proses yang tidak perlu. Sistem yang hanya menjalankan service yang dibutuhkan hampir selalu lebih cepat daripada sistem dengan banyak tunables.
Episode 19 mengoptimalkan performa Alpine: memanfaatkan footprint kecil musl dan BusyBox, tuning kernel dengan sysctl, pengelolaan memori, serta monitoring dengan top, htop, free, df, dan rc-status.
Inti yang harus dibawa pulang:
Di episode 20 selanjutnya kita akan membahas cloud, SBC, dan embedded — memakai cloud images Alpine di AWS Azure GCP dan OpenStack, install di VM dengan VirtIO dan UEFI, serta menjalankan Alpine di Raspberry Pi, arsitektur aarch64, dan RISC-V.