Episode ini membahas perawatan rutin storage: memeriksa integritas array dengan mdadm --check dan --repair, scrub ZFS dan btrfs, menjadwalkannya secara otomatis, serta perawatan fisik seperti UPS, penuaan disk, dan pembaruan firmware.

Membangun array itu sekali; merawatnya itu terus-menerus. Episode 15 ini membahas perawatan rutin yang membuat storage tetap sehat selama bertahun-tahun: scrub untuk memeriksa integritas data dan maintenance fisik untuk menjaga lingkungan penyimpanan.
Scrub adalah pemeriksaan menyeluruh yang mencari blok rusak sebelum blok itu dibutuhkan — analog dengan medical check-up yang dijalankan saat sehat, bukan saat sakit. Ditambah perawatan seperti UPS dan pembaruan firmware, kalian bisa memperpanjang umur array dan menghindari kegagalan yang tidak perlu.
mdadm menyediakan dua mode scrub: --check yang hanya memverifikasi konsistensi, dan --repair yang memperbaiki perbedaan yang ditemukan:
echo check > /sys/block/md0/md/sync_action
cat /proc/mdstatPerintah echo check > /sys/block/md0/md/sync_action memulai pemeriksaan. Output /proc/mdstat menampilkan check = 42.3% dengan progres. Saat check menemukan ketidaksesuaian, ia mencatatnya di log mdadm dan kernel.
Jika --check menemukan masalah dan kalian punya redundancy untuk memperbaikinya:
echo repair > /sys/block/md0/md/sync_actionPerintah echo repair memperbaiki perbedaan dengan memakai data yang konsisten dari disk lain. Ingat: scrub memakai sumber daya I/O secara penuh selama berjalan — untuk disk besar, pastikan dijadwalkan di luar jam sibuk.
ZFS menawarkan scrub paling kuat: ia memeriksa checksum semua blok dan memperbaiki yang rusak secara otomatis:
sudo zpool scrub tank
zpool status tankOutput zpool status tank menampilkan baris scan: scrub in progress since ... dengan X.X% done. Setelah selesai, status menjadi scrub repaired 0B in ... with 0 errors on .... Angka error di luar nol berarti ada korupsi yang ditemukan — periksa lebih lanjut.
zpool status tank
sudo zpool scrub -s tankPerintah zpool scrub -s tank menghentikan scrub yang sedang berjalan. Ini berguna jika scrub mengganggu workload produksi — pindahkan jadwalnya ke waktu yang lebih tenang.
Untuk filesystem btrfs, scrub berjalan per filesystem yang di-mount:
sudo btrfs scrub start /mnt/data
sudo btrfs scrub status /mnt/dataPerintah btrfs scrub start /mnt/data memeriksa semua blok dan memperbaiki kesalahan dengan memakai redundancy. Output btrfs scrub status menampilkan status dan jumlah error.
Scrub yang tidak terjadwal sering terlupakan. Jadwalkan dengan cron, misalnya setiap Minggu pagi:
0 3 * * 0 /usr/sbin/zpool scrub tank
0 4 * * 0 echo check > /sys/block/md0/md/sync_actionBaris cron di atas menjalankan scrub ZFS dan mdadm setiap hari Minggu. Untuk mdadm, lebih baik memakai mdadm --check lewat systemd timer atau script yang menunggu sampai selesai.
Aturan praktis: scrub sebulan sekali untuk ZFS dan mdadm pada data normal, atau seminggu sekali untuk array dengan data kritis. Scrub terlalu sering membuang I/O; terlalu jarang membuat korupsi menumpuk tanpa terdeteksi.
Warning
Scrub dan rebuild tidak boleh berjalan bersamaan. Keduanya memakai seluruh bandwidth I/O disk dan saling memperlambat. Jika scrub berjalan saat disk gagal, hentikan scrub lebih dulu, tangani rebuild, lalu jalankan scrub lagi setelah array stabil.
Listrik yang tidak stabil adalah pembunuh storage yang paling umum. Pasang UPS yang cukup untuk server, pastikan sistem melakukan shutdown otomatis saat baterai menipis, dan periksa status baterai UPS secara berkala:
apcaccess statusOutput apcaccess status menampilkan LINEV, LOADPCT, BCHARGE, dan STATUS. Baterai UPS yang aus memberikan perlindungan yang menipu — ganti baterai sebelum benar-benar mati.
Disk punya siklus hidup. Perhatikan:
Memperbarui firmware disk adalah operasi berisiko yang kadang malah mengubah cara disk bekerja. Aturan yang aman: baca changelog vendor, lakukan pada satu disk cadangan dulu, dan jangan pernah memperbarui firmware semua disk array sekaligus — kalian tidak ingin semua disk offline bersamaan.
Episode 15 melengkapi kalian dengan kebiasaan perawatan: scrub dengan mdadm --check dan --repair, zpool scrub, dan btrfs scrub, dijadwalkan secara rutin, ditambah perawatan fisik seperti UPS, kontrol suhu, dan pembaruan firmware yang hati-hati.
Inti yang harus dibawa pulang:
mdadm --check memverifikasi, --repair memperbaiki perbedaan pada array.zpool scrub memeriksa checksum semua blok ZFS dan memperbaiki otomatis.btrfs scrub untuk memeriksa dan memperbaiki filesystem.Di episode 16 selanjutnya kita akan membahas troubleshooting & recovery scenarios — menghadapi array degraded, rebuild yang gagal, metadata korup, hingga OOM dan kernel panic, lengkap dengan --force assemble dan ddrescue untuk disk yang rusak. Kalian akan belajar tetap tenang saat storage bermasalah.