ちゃんと覚えておけよ?

忘れちゃいけない事のメモ、覚え書き

hp SmartArrayをhpacucliコマンドを使って設定の確認と変更

まず以下のコマンドでCLIを立ち上げる。

hpacucli

ctrl は controller の短縮形はどちらでも可

=> ctrl all show
=> ctrl slot=1 show
=> ctrl slot=1 show detail 
# detailはコマンドオプション
=> ctrl slot=1 show
=> ctrl slot=1 physicaldrive all show
=> ctrl slot=1 pd all show 
# pd は physicaldrive の短縮形
=> ctrl slot=1 pd 1I:1:11 show 
# 1I:1:11 は Port 1I の Box 1 の Bay 11 らしいが、ctrl の指定は必要である
=> ctrl slot=1 logicaldrive all show
=> ctrl slot=1 ld all show # ld は(ry
=> ctrl slot=1 ld 13 show detail 
# ld は番号 all show したら "array M" とか出てくるが、そっちではなくて番号

試に
ctrl all show
でスロット確認
Smart Array P410i in Slot0(Embedded)
と表示される。
次に
ctrl slot=0 show
で詳細を確認
Cache Ratio:100% Read / 0% Write
Drive Write Cache:Disabled
No-Battery Write Cache:Disable
となっているので、
No-Battery Write Cacheを以下のコマンドでまず、有効にした。

Ctrl slot=0 modify nbwc=enable

※nbwcはNo-Battery Write Cacheの略称。

続いて、
Drive Write Cacheも以下のコマンドで有効にした。

Ctrl slot=0 modify dwc=enable

ライトキャッシュを有効にすると予期せぬ電源断でデータが損失しますよと警告が出るが、UPSを利用しているので「Y」と続行

続けて、コントローラーキャッシュの 比率を変更
ライトキャッシュがONの状態ではデフォルト設定値はWrite 75% read 25%となっているのでその設定にする。
ちなみに、ctrl slot=0 allで確認した際、256Mのキャッシュに対し、Total Cache Memory Available: 144MBとなっていた。

ctrl slot=0 modify cr=25/75

リードキャッシュについて
※HP smartarray資料から引用

Smartアレイコントローラーでは、プリフェッチした先読みデータの置き場所としてリードキャッシュが使用されます。

コントローラーのオペレーティングプログラムは、読み取りコマンドのパターンを識別し、ドライブの先行読み取りを実行し、次の読み取りコマンドがそのデータを要求した場合に、より迅速にアクセスできる場所にデータを置きます。

リードキャッシュは、実際には、シーケンシャル読み取りワークロードのパフォーマンスを向上させる場合にのみ効果的です。

Smartアレイコントローラーは、シーケンシャルワークロードが検出されたときにだけリードキャッシュプリフェッチを使用して、シーケンシャルワークロードとランダムワークロードを区別するための十分な精巧さを備えています。

さらに、読み取り時のドライブアレイの本来のパフォーマンスがすでに比較的高速なため、リードキャッシュがアレイの読み取り性能を大幅に改善することはありません。

これらが、Smartアレイコントローラーのデフォルト構成で、リードキャッシュにキャッシュの25%しか割り当てられていない主な理由です。

ライトキャッシュについて

Smartアレイコントローラーは、ホストアプリケーションがコントローラーへの書き込みコマンドをポストした場合に、ディスクへの書き込み操作が完了するまで待機することなく元の処理を継続できる出力バッファとして、ライトキャッシュを使用します。

アプリケーションはミリ秒でなくマイクロ秒で書き込みが完了したとみなしますが、アレイコントローラーはキャッシュにポストされた書き込みコマンドのリストを順次処理するため、ディスクへの実際の書き込みは遅れて完了します。
この技法はしばしば、ポステッドライトまたはライトバックキャッシュと呼ばれます。

ワークロードが高い環境では、通常、ライトキャッシュの容量に空きがない状態が続きます。
コントローラーはその間にキャッシュ内に保留中の書き込みコマンドを分析し、それらを実行するより効率的な方法を決定します。
コントローラーは、サイズの小さい書き込みを隣接する論理ブロックと組み合わせてサイズの大きい1つの書き込みとし、より迅速に実行できるようにします。

この技法は、ライトコアレッセンス(書き込み調停)と呼ばれます。また、コントローラーは、全体としてのディスク遅延が短縮されるような方法で、キャッシュ内の書き込み順序を再調整することもできます。

この技法はしばしば、コマンドリオーダリングと呼ばれます。
ライトキャッシュメモリ量が多いほど、Smartアレイコントローラーはより多くの保留中の書き込みコマンドを格納し分析できるため、全体のパフォーマンスを改善しながら、ライトコアレッセンスとコマンドリオーダーの実行回数を増やすことができます。

ライトキャッシュは、キャッシュに保留中の書き込みを格納しておいて、後で書き込みを完了します。

アプリケーションは書き込みをすでに完了済みとみなしているため、キャッシュに格納された書き込みは、ディスクへの書き込みが完了するまで、Smartアレイが保持する必要があります。

保持されない場合、データ不整合がおきます。Smartアレイコントローラーは、サーバーのクラッシュや電源障害の発生時でもキャッシュの整合性を維持するためにバッテリまたはフラッシュメモリを使用することで、この問題に対処しています。

バッテリバックアップ式キャッシュ(BBWC)またはフラッシュバック式キャッシュ(FBWC)が標準装備されておらず、オプションとして取り付けられていないSmartアレイコントローラーでは、デフォルトでは、キャッシュはライトキャッシュとして使用されません。

この設定は変更できますが、BBWCまたはFBWCなしでライトキャッシュを有効にするとデータが損失する可能性があります。

■おまけ
以下コマンドで全てsmartアレイ情報が見られる。
RAID情報。HDDステータス、HDDの型番スペックなどなど

ctrl all show config detail

Comment

*