Skip to main content
  1. Posts/

Meningkatkan Kinerja Disk dengan Bcache

·3 mins·
ubuntu ubuntu linux
Table of Contents

Bcache adalah sebuah sistem yang memungkinkan Anda menggunakan disk SSD/NVMe kecil sebagai cache untuk meningkatkan kinerja disk HDD. Untuk simulasinya Anda dapat menyiapkan PC Linux dengan ketersediaan slot HDD dan slot SSD/NVMe atau bisa juga dengan membuat VM Linux lalu menyiapkan 2 virtual disk yang masing-masing dibuat pada disk SSD dan HDD.

Disini saya memakai Linux VM dengan konfigurasi:

  • Disk 1 (vdb) menggunakan SSD untuk cache device
  • Disk 2 (vdc) menggunakan HDD untuk backing device

Configure Bcache
#

Install bcache-tools

apt -y install bcache-tools

Setelah terinstall, tambahkan cache device dan backing device dengan perintah.

make-bcache -C /dev/vdb
make-bcache -B /dev/vdc

Gunakan lsblk untuk memastikan bcache device telah dibuat.

# lsblk
NAME             MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
vda              252:0    0   4G  0 disk
├─vda1           252:1    0   1M  0 part
├─vda2           252:2    0   1G  0 part /boot
└─vda3           252:3    0   3G  0 part
  └─vg_root-root 253:0    0   3G  0 lvm  /
vdb              252:16   0   2G  0 disk
vdc              252:32   0   4G  0 disk
└─bcache0        251:0    0   4G  0 disk

Selanjutnya Anda perlu attach cset.uuid dari cache device ke bcache untuk mengaktifkan cache. Untuk mendapatkan cset.uuid gunakan perintah.

bcache-super-show /dev/vdb | grep cset.uuid

Contoh output.

# bcache-super-show /dev/vdb | grep cset.uuid
cset.uuid               f04f874d-6c76-4952-8bd5-41aa8500b012

Lalu attach cset.uuid

echo f04f874d-6c76-4952-8bd5-41aa8500b012 > /sys/block/bcache0/bcache/attach

Jika muncul error seperti bash: echo: write error: Invalid argument, Anda dapat mencoba cek detail errornya menggunakan dmesg

# dmesg
...
[ 1119.049590] bcache: bch_cached_dev_attach() Can't attach vdc: already attached

Untuk error tersebut artinya device telah di attach sehingga tidak perlu di attach kembali.

Selanjutnya format bcache0 agar dapat di mounting dan digunakan.

mkfs.xfs /dev/bcache0
mount /dev/bcache0 /mnt

Cek mountpoint bcache0 dengan df

# df -hT /dev/bcache0
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/bcache0   xfs   4.0G   61M  4.0G   2% /mnt

Cache Mode
#

Bcache menyediakan mode cache seperti berikut:

  • writeback: membaca dan menulis data dapat dilakukan pada cache lalu diteruskan ke backing device (Meningkatkan baca dan tulis | Performa terbaik namun terdapat kemungkinan kehilangan data ketika terjadi kerusakan perangkat atau pemadaman listrik)
  • writethrough: menulis data dapat dilakukan pada cache dan backing device secara bersamaan sehingga proses penulisan bisa lebih baik karena dilakukan pada 2 device (Meningkatkan baca dan tulis | Aman dari kerusakan data)
  • writearound: menulis data langsung pada backing device namun membaca dapat dilakukan pada caching device (Meningkatkan baca | Aman dari kerusakan data)
  • none: tanpa cache (Cache tidak aktif namun tetap bisa menggunakan device bcache, misal /dev/bcacheX)

Secara default bcache menggunakan mode caching writethrough yang bisa dicek melalui.

# cat /sys/block/bcache0/bcache/cache_mode
[writethrough] writeback writearound none

Untuk mengubah mode caching ke writeback

echo writeback > /sys/block/bcache0/bcache/cache_mode

Tips
#

make-cache dapat menyiapkan dan mendaftarkan beberapa backing device dan cache device secara bersamaan dengan perintah berikut.

make-cache -B /dev/vdc /dev/vdd -C /dev/vdb

Untuk selajutnya Anda tidak perlu attach secara manual cache device ke bcache device.

Related

Errors during Processing: grub-efi-amd64-signed and shim-signed
·1 min
ubuntu ubuntu linux
Extract File .deb di Ubuntu
·1 min
ubuntu linux ubuntu
Error 'Key is stored in legacy trusted.gpg keyring' di Ubuntu
·2 mins
ubuntu linux ubuntu
Migrasi OS Ubuntu ke LVM
·3 mins
ubuntu linux ubuntu lvm
Recover Root Password Ubuntu
·1 min
ubuntu linux ubuntu
Setting Network Ubuntu dengan Netplan
·1 min
ubuntu ubuntu linux