image not found

概要今回は、HDDなどの比較的低速なブロックデバイスに対して、SSDなどの比較的高速なブロックデバイスをキャッシュとして使える bcache をセットアップ方法と各種設定などについて紹介します。bcacheとはbcacheは、ブロックデバイスをキャッシュとして使うための仕組みを提供するソフトウェアです。bcacheでは、キャッシュとして使用するブロックデバイスを キャッシュデバイス と呼び、データを保存する為のブロックデバイスを バッキングデバイス と呼びます。似たような仕組みを提供するソフトウェアとしてLVM cacheやdm-cacheなどがありますが、bcacheの方がセットアップが容易だったり性能が高いという特徴があります。キャッシュがあることのメリット通常、高速なIO性能を必要とするシステムにおいてはHDDではなく高速なSSDをストレージとして利用します。しかし、SSDはHDDに比べると容量単価が高く、大容量のストレージが必要な場合にはコストが大きな問題となります。そこで登場するのがキャッシュです。例えば、データへのアクセスの性質が「書き込んだばかりのデータを読み取ることが多い」場合や「同じデータに頻繁にアクセスすることが多い」場合、全てのデータ領域において高速にアクセスできる必要性はなく、アクセス頻度の高いデータのみ高速にアクセス出来ればほとんど問題ないといえます。つまり、アクセス頻度の高いデータのみ高速なブロックデバイス上にキャッシュしておけばいいわけです。高価なRAIDコントローラなどではより高速にアクセス可能な揮発性メモリを使用したキャッシュが搭載されており、書き込みなどをキャッシュすることで高速なストレージアクセスを実現しています。キャッシュの種類キャッシュにはいくつかのモードがあります。writethroughwritearoundnone (bcache)通常はwritebackを使用すれば問題ないはずです。安全性を重視する場合はwritethroughを、Read intensive(読み取りメイン)な場合はwritearoundを使用すれば良いでしょう。bcacheをセットアップする今回は、Ubuntu 22.04 環境下でセットアップを行います。本例では /dev/sdb をバッキングデバイスとして使用し、キャッシュデバイスは /dev

top

Westarn Digital Ultrastar DC SS200 SAS SSD名前長いですねこちらの800GBモデルをBrand Newで手に入れたので、軽くベンチしてみました。 SAS接続モデルですので、通常のPC等のマザーボードに搭載されているSATAポートでの利用はできません。基本的なスペックは以下のとおりです。(メーカーのSpecificationより)3年ほど前の製品ですので、今時のSSDと比べると見劣りする部分はありますが、安かったので手に入れてみました。ベンチマークSAS接続モデルですので、対応したデバイスを用いました。今回はHPEのDL380 Gen10サーバを使用し、RAIDコントローラはHBAモードとしました。SAS 12Gb/sでの接続ですので、シーケンシャルについてはバス幅の理論値近くまで出ている事が読み取れます。ランダム4KなどはNVMe SSDには叶いませんが、SAS12Gbpsに対応したホットスワップベイを持つサーバにて使用する予定ですので、NVMeベイやSecondary CPUを手に入れるコストを考えると、SATAと比較してもバランスが良いと言えると思います。時間がなく簡単なベンチしかできていませんが、12Gb/s接続のSAS SSDに興味のある方の参考になれば幸いです。

About

インフラエンジニア
インフラ系の技術を中心に紹介・解説しています。

お問い合わせはTwitter DMまで

Privacy Policy

About Me

Recommends

Archives