Más contenido relacionado
La actualidad más candente (20)
Similar a “bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12 (20)
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12
- 4. bcacheとは (3)
● https://www.kernel.org/doc/Documentation/bcache.txt
● http://bcache.evilpiepirate.org/
こんなところで活躍:
launchpad.net “800GB+ PostgreSQL database”の高速化
http://insights.ubuntu.com/2015/12/10/using-bcache-for-performan
ce-gains-on-the-launchpad-database-servers/
SSDをキャッシュとして使える他の実装
●dm-cache
●Flashcache/EnhanceIO
●dm-writeboost など
ドキュメント
- 6. bcacheのセットアップ
“ちなみに curtin”(後述)ではbcacheに対応しており、
下記のようなYAMLでbcacheの設定を渡せます。
partitioning_commands:
builtin: [curtin, block-meta, custom]
storage:
config:
- {grub_device: true, id: sda, name: sda, path: /dev/sda, ptable: msdos, t
- {id: sdb, name: sdb, path: /dev/sdb, type: disk, wipe: superblock}
- {device: sda, id: sda-part1, name: sda-part1, number: 1, offset: 4194304
- {device: sda, id: sda-part2, name: sda-part2, number: 2, size: 159719096
- {backing_device: sdb, cache_device: sda-part2, cache_mode: writeback, id
- {fstype: ext4, id: sda-part1_format, label: '', type: format, uuid: 179d
- {fstype: ext4, id: bcache0_format, label: '', type: format, uuid: 422d4b
- {device: bcache0_format, id: bcache0_mount, path: /, type: mount}
- {device: sda-part1_format, id: sda-part1_mount, path: /boot, type: mount
version: 1
インストーラーのサポートがないので
“/” にbcacheを使うのは簡単ではない
- 9. bcacheのセットアップ
$ sudo parted /dev/sda print
...
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 boot
2 538MB 40.5GB 40.0GB ext4
$ sudo parted /dev/sda mkpart primary 40.5GB 100%
$ sudo parted /dev/sda print
...
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 boot
2 538MB 40.5GB 40.0GB ext4
3 40.5GB 120GB 79.5GB primary
cache用のパーティションを作成
- 10. bcacheのセットアップ
$ sudo apt install bcache-tools
$ sudo make-bcache -B /dev/sdb
$ sudo make-bcache -C /dev/sda3
## cache deviceとbacking deviceの紐付け
$ sudo bcache-super-show /dev/sda3 | grep cset.uuid
$ echo '<CSET.UUID>' | sudo tee /sys/block/bcache0/bcache/attach
cache device, backing deviceの指定
- 11. bcacheのセットアップ
## ファイルシステムの作成
$ sudo mkfs.ext4 /dev/bcache0
$ sudo mkdir /media/bcache
## UUIDの確認
$ ls -l /dev/disk/by-uuid/ | grep bcache0
$ cat <<EOF | sudo tee -a /etc/fstab
UUID=<UUID> /media/bcache ext4 defaults 0 0
EOF
$ sudo mount -a
作成したbcacheデバイスを/etc/fstabへ記述
- 12. bcacheのセットアップ
## キャッシュモードの確認
$ cat /sys/block/bcache0/bcache/cache_mode
[writethrough] writeback writearound none
## キャッシュモードの切り替え例
## “writeback”は書き込みパフォーマンスが上がるが、
## SSDが故障した際にデータを失う可能性がある。
$ echo writeback | sudo tee /sys/block/bcache0/bcache/cache_mode
$ cat /sys/block/bcache0/bcache/cache_mode
writethrough [writeback] writearound none
キャッシュモード
- 14. ベンチマーク条件
●CPU: AMD A8-7600
●メモリ: 32GB
●SSD: INTEL SSDSC2CT12 (Intel SSD 330シリーズ 120GB)
●HDD: TOSHIBA MQ01ABD0 (2.5インチ 750GB)
OS関連
●Ubuntu 14.04 LTS
●LTS vividカーネル(3.19)
●ext4ファイルシステム
●fioパッケージ 2.1.3-1
ハードウェア(参考程度に)
- 15. ベンチマーク条件
## シーケンシャルIOの検出/バイパスオフ
$ echo 0 | sudo tee /sys/block/bcache0/bcache/sequential_cutoff
## レイテンシ検出オフ
$ echo 0 | sudo tee
/sys/fs/bcache/<CSET.UUID>/congested_read_threshold_us
$ echo 0 | sudo tee
/sys/fs/bcache/<CSET.UUID>/congested_write_threshold_us
SSDを最大限活用するようにbcacheを設定
- 20. MAAS 1.9 + curtinでbcacheサポート追加
WebUIからも設定できる。現在RC3、まもなくリリース予定。