Pelajaran 1Analisis memori: free -m, /proc/meminfo, slabtop, smem—menginterpretasikan memori terpakai vs tersedia dan perilaku swapDi sini Anda akan menganalisis perilaku memori menggunakan free, /proc/meminfo, slabtop, dan smem. Bagian ini menjelaskan caching Linux, buffer, dan reclaim, cara menginterpretasikan penggunaan swap, serta mendeteksi kebocoran memori, fragmentasi, dan batas yang salah konfigurasi.
Reading free -m and understanding cached memoryKey fields in /proc/meminfo for diagnosisUsing slabtop to inspect kernel slab usageUsing smem to attribute memory per processRecognizing swap thrashing and OOM risksPelajaran 2Penggunaan jaringan dan bottleneck: iftop, nload, ss, netstat, ip -s link, tc, tcpdump—mengidentifikasi saturasi jaringan dan koneksi bermasalahBagian ini membahas diagnosis penggunaan jaringan dan bottleneck menggunakan iftop, nload, ss, ip, tc, dan tcpdump. Anda akan belajar mengidentifikasi saturasi, tetangga berisik, status koneksi, dan masalah tingkat paket yang menyebabkan aplikasi lambat.
Monitoring live bandwidth with iftop and nloadInspecting sockets and states with ssUsing ip -s link to view interface errorsBasics of tc for shaping and rate limitingTargeted packet capture with tcpdumpPelajaran 3Latensi penyimpanan dan I/O mendalam: blktrace, bpftrace (skrip dasar), fio untuk tes—cara mengukur dan menginterpretasikan latensi dan throughputBagian ini membahas latensi penyimpanan dan analisis I/O mendalam menggunakan blktrace, skrip bpftrace dasar, dan benchmark fio. Anda akan belajar mengukur latensi dan throughput, menginterpretasikan kedalaman antrian, dan membedakan batas perangkat dari masalah beban kerja.
Understanding latency, IOPS, and throughputUsing blktrace to inspect block I/O patternsIntroductory bpftrace scripts for disk latencyDesigning fio workloads that mimic productionReading fio reports and spotting bottlenecksPelajaran 4Penelitian proses: ps, filter top/htop, pgrep, pidstat, nice/renice—cara menemukan proses berat CPU dan memoriAnda akan belajar menyelidiki proses dengan ps, filter top atau htop, pgrep, pidstat, dan nice atau renice. Bagian ini menunjukkan cara mengidentifikasi tugas berat CPU dan memori, melacak I/O per proses, dan menyesuaikan prioritas untuk mengurangi kontensi.
Listing and filtering processes with psUsing pgrep and pkill safely and preciselyUsing pidstat for per process CPU and I/OFiltering top and htop by user or resourceAdjusting priorities with nice and renicePelajaran 5Ikhtisar sumber daya sistem: top, htop, vmstat, mpstat, dstat—apa yang ditunjukkan masing-masing dan pola keluaran yang diharapkanDi sini Anda akan belajar membaca snapshot sumber daya sistem secara keseluruhan menggunakan alat seperti top, htop, vmstat, mpstat, dan dstat. Bagian ini berfokus pada pemahaman metrik CPU, memori, dan beban, serta mengenali pola penggunaan normal versus patologis.
Key CPU, load, and memory fields in topUsing htop for interactive process analysisvmstat for run queue, swap, and I/O insightmpstat for per-CPU utilization and steal timedstat for combined multi-resource timelinesPelajaran 6I/O disk dan pemeriksaan filesystem: iostat, iotop, sar -d, lsblk, df -h, du -sh, tune2fs, xfs_info—mendeteksi bottleneck I/O dan ruang rendahBagian ini berfokus pada I/O disk dan kesehatan filesystem menggunakan iostat, iotop, sar -d, lsblk, df, du, tune2fs, dan xfs_info. Anda akan belajar mendeteksi saturasi, penumpukan antrian, error filesystem, dan kondisi ruang rendah yang menurunkan performa.
Using iostat to spot busy and slow devicesUsing iotop to find I/O heavy processessar -d for historical disk utilization trendsChecking layout and types with lsblk and dfFinding space hogs with du and inode checksPelajaran 7Log sistem dan journaling: journalctl (systemd), /var/log/messages, /var/log/syslog, log autentikasi—apa yang dicari dan mengapaBagian ini menjelaskan cara menggunakan systemd journalctl dan file log klasik seperti /var/log/messages, /var/log/syslog, dan log autentikasi. Anda akan belajar pola apa yang dicari, cara memfilter noise, dan bagaimana log mendukung analisis akar penyebab.
journalctl basics and useful filtering optionsReading /var/log/messages and /var/log/syslogFinding errors, warnings, and rate-limited eventsAnalyzing authentication and sudo related logsCorrelating log timestamps with incidentsPelajaran 8Pemantauan berbasis waktu dan historis: sar, sysstat, collectl—mengumpulkan dan membaca metrik historis untuk mengkorelasikan eventAnda akan belajar mengumpulkan dan menginterpretasikan metrik historis menggunakan sar, sysstat, dan collectl. Bagian ini menjelaskan cara menjadwalkan pengumpulan data, membaca laporan deret waktu, dan mengkorelasikan anomali performa dengan perubahan konfigurasi atau deployment.
Enabling and configuring sysstat collectionUsing sar for CPU, memory, and I/O historyReading sar network and load average trendsUsing collectl for multi-resource timelinesCorrelating metrics with change windowsPelajaran 9Wawasan kernel dan scheduler: dmesg, sysctl -a, parameter /proc/sys/vm—apa yang diungkap pesan kernel dan tunableDi sini Anda akan mengeksplorasi wawasan kernel dan scheduler menggunakan dmesg, sysctl, dan parameter /proc/sys/vm. Bagian ini menjelaskan bagaimana pesan kernel, tunable, dan perilaku scheduler mengungkap masalah perangkat keras, salah konfigurasi, dan opsi tuning.
Reading dmesg for hardware and driver issuesListing and querying sysctl tunable valuesKey /proc/sys/vm parameters for memoryScheduler related kernel parameters overviewSafely persisting kernel tuning changesPelajaran 10Pendekatan penentuan akar penyebab: pohon keputusan langkah demi langkah untuk mengklasifikasikan masalah sebagai CPU, RAM, I/O disk, atau jaringanBagian ini menyajikan pohon keputusan praktis untuk analisis akar penyebab. Anda akan belajar mengklasifikasikan insiden sebagai terikat CPU, memori, I/O disk, atau jaringan, alat mana yang dijalankan di setiap cabang, dan cara menyempurnakan hipotesis secara iteratif menggunakan bukti yang dikumpulkan.
Initial triage and problem statementClassifying CPU versus I/O bound symptomsDistinguishing memory pressure from leaksIdentifying network versus local bottlenecksIterative hypothesis testing with metrics