最近の変更サイトマップ

HPE iLO 4の機能比較表

https://h50146.www5.hpe.com/products/servers/proliant/essentials/ilo4/mo.htmlにiLO 4の分かりやすい機能比較表があったんだけど、リニューアル?でページがなくなってしまったのでスクショをうp。標準機能、iLO Essentials、iLO Advancedの比較表だよん。

気が向いたらStandard込みの表を作るかも…。StandardはPDFを読み解かないといけないのでちょい面倒なのよね。

それにしても、ネット上のHP/HPEへのリンク情報がほとんど使い物にならなくなっててつらたん。草の根情報って結構重要だと思うんだけど、HPEは一体何を考えとるのかね!?

SambaとZFSで大量のファイルを扱う時はcase-sensitiveの組み合わせを最適化する

同一フォルダに大量のファイルがあるとSambaが超遅くなる問題、自分なりの知見が得られたのでメモ。結果だけ知りたい人は最後までスクロールしてくだしあ。

まずはおさらい。

ことの発端は、数万個のファイルがあるフォルダをSambaのファイルサーバにコピーすると、速度が10kB/s前後まで低下する現象に見舞われた。速度はコピーが進むごとに低下し、比例するようにsmbdのCPU占有率が上がるというのが特徴。ファイルサーバ上で直接コピーすると何の問題もない。

調べてみると、Sambaはファイル作成時、ファイル名の重複チェックのため作成先フォルダ内の全ファイル名を検査することが分かった。この時に行われる、Windowsのファイル名規則(FS上は大文字小文字を区別するが、OSの表面上は区別しないナンチャッテcase-preserving。この差はOSが吸収する。)と合わせるための、ファイル名を大文字ないし小文字に変換する処理がボトルネックのようだ。

プロファイルしたわけでもソースコードを見たわけでもないので確証はないが、公式ドキュメントに「ディレクトリに大量のファイルがある特殊なケースでは、case sensitiveをyesにせよ」(抄訳)と書かれており、ファイルコピーの進捗にあわせ指数関数的に速度が落ちる(CPU負荷が上がる)という挙動から、たぶん当たってると思う。

case sensitive = yesにすれば万事解決かと思えば、そうじゃない罠。

前述の通りWindowsはFS的にはcase-sensitiveだが、歴史的理由で表面上はcase-insensitiveとして振る舞う。この仕様に胡坐をかき、ファイルパスを全部大文字or小文字に変換して扱うアプリケーションが少なくない。例えば、本来のファイルパスはC:\Data\FILE.datにもかかわらず、アプリケーション内部では c:\data\file.datとしてアクセスすることが往々にある(自分もそういう処理をつり書いちゃうんだけど(;'∀'))。ローカルのファイルに対してなら、これでも問題はない。

しかし、サーバの共有フォルダに対しては、アプリから渡されたファイルパスをそのまま渡しているようなので、サーバ側がその辺を考慮した処理になってないと、ファイルが見つからないという事になる。そのサーバ側の処理というのが、Sambaのcase sensitiveオプションなのだ。これをyesにするということは、\\Server\Data\FILE.datと\\Server\data\file.datは別のファイルと見なされる、ということだ。アプリからすれば、\\Server\Data\FILE.datが見つからないということになる。これでは使い物にならない。

ではどうするか。ZFSのcasesensitivityプロパティの登場だ。

解説するまでもなくその名の通りのプロパティで、デフォルト値はcasesensitiveである。これをcaseinsensitiveにしてやればいい。insensitiveという名前にはなっているが、挙動としてはpreservingのようだ。ちなみに、mixedというのもあるが、使いどころがよくわからない挙動になるので指定しない方が無難(一応、Windowsを想定した挙動らしいんだけど…)。

本プロパティはFS作成時にしか指定できないため、Windows共有用のFSを新規に作り、Sambaで共有フォルダに仕立て上げるのがよいだろう。

Sambaがファイル名をキャッシュせずファイル作成毎に全舐めしてしているのは、恐らく対象フォルダに対する変更をSamba側で検知する仕組みがないからだと思う。Sambaがファイルを作成しようとしたまさにその時、同名のファイルがサーバのローカルで作られたり、別のファイルがリネームされたりする可能性があるため、キャッシュではファイル名のユニーク性を担保できないのだろう。

一方、ファイルシステムレベルなら、そのような変更の検出とアトミック性・ユニーク性が保証された素敵な仕組みがあるハズだから、アプリ側でファイル名の全比較を行うより効率的なんじゃねっていう目論見。

結論としてはSambaとZFSで以下の設定を行うと幸せになれる。ZFSじゃない人はスマン…

  • ZFS
    • ファイル共有用にcasesensitivity=caseinsensitiveなFSを作る
      zfs create -o casesnsitivity=caseinsensitive ztank/path/to/cifs

  • Samba
    • ファイル名の扱いをcase-sensitiveにする

      case sensitive = yes
      case preserve = no
      short preserve case = no

EmacsのCompletionsバッファを新規ウィンドウではなく既存ウィンドウに表示させる

通常、EmacsでTAB補完の時とかに表示されるCompletionsバッファは、フレーム1)下部を分割した一時的なウィンドウ2)として表示される。言葉じゃわかりにくいので、スクショを張っとくと↓こんな感じね。 こっちは嫌(Completionsウィンドウが独立に開く)

自分のEmacsの使い方は垂直分割した2つのウィンドウ表示が基本で、Completionsバッファは非アクティブな方のウィンドウに出て欲しい。その方が補完候補の一覧性が圧倒的だし、ウィンドウがパカパカしないのがいい。スクショを張(ry こっちがいい(Completionsバッファが非アクティブなウィンドウに表示される)

ここの回答に載ってるelispを参考に、ウィンドウが1つの時はウィンドウ幅に応じて分割方向を変えるようにしてみた。

(defun display-on-side (buffer &optional not-this-window frame)
  (let* ((window (or (minibuffer-selected-window)
                     (selected-window)))
         (display-buffer-function nil)
         (pop-up-windows nil))
    (with-selected-window (or window (error "display-on-side"))
      (when (one-window-p t)
        (if (> (window-pixel-width) (window-pixel-height))
            (split-window-horizontally)
          (split-window-vertically))
        )
      (display-buffer buffer not-this-window frame))))
(setq display-buffer-function 'display-on-side)

水平2分割した状態で使うと、非アクティブなウィンドウの方がCompletions表示時に勝手にリサイズされる問題があったりする…。自分は水平分割使わないので放置してます、すいません。えらいひと直して教えてください。

参考サイト

1) Emacs用語としてのフレーム
2) Emacs用語としてのウィンドウ

NETGEARのLAGのAdmin ModeメニューはLAGの有効/無効指定を意味するらしい

ネットギアのL2スイッチのLAG設定に「Admin Mode」なる謎の項目がある。

 XS512EMのLAG設定画面

スイッチの内蔵ヘルプを見ても“Admin Mode - Select Enable or Disable to set the Admin Mode.”という何の役にも立たない情報しかなく、全く以て意味がわからない。確実な情報は見つけられなかったんだけど、結局のところ機能のオン/オフを切り替える程度のものっぽい。もちろん、Enableが有効でDisableが無効ね。

機種は違うが公式フォーラムでは、Enableだとトラフィックが流れてDisableだと全く流れない、という回答になってるが、少なくともXS512EMのLAG設定のに関してはLAGのEnable/Disableにしか影響してなさそう。実際、Admin Modeの状態を問わずパケットは流れてるし、LAGを設定してもDisableならLAG StatsuはDownのまま、Enableにして初めてUpになった。

フォーラム回答の挙動は、マネージドスイッチ以上で設定できるポート毎のAdmin Modeの解説なんじゃないかって気がする。いずれにせよ、もっと分かりやすい名前にしとけよと思うけど…。

参考サイト

東芝のエンプラ向けSSD THNSNJ960PCSZ (HK3R2 960GB) 購入

これまでSSDはIntel DCシリーズを買ってきたが、今回はTOSHIBAの読み出し重視型エンタープライズ向けSSD THNSNJ960PCSZを買ってみた。例によって例によって中古。新品じゃ高くて買えませんからね。それでもっていつものごとくベンチ。今回もSATA接続。

-----------------------------------------------------------------------
CrystalDiskMark 6.0.0 x64 (C) 2007-2017 hiyohiyo
                          Crystal Dew World : https://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
* KB = 1000 bytes, KiB = 1024 bytes

   Sequential Read (Q= 32,T= 1) :   552.067 MB/s
  Sequential Write (Q= 32,T= 1) :   519.592 MB/s
  Random Read 4KiB (Q=  8,T= 8) :   377.485 MB/s [  92159.4 IOPS]
 Random Write 4KiB (Q=  8,T= 8) :   353.540 MB/s [  86313.5 IOPS]
  Random Read 4KiB (Q= 32,T= 1) :   269.954 MB/s [  65906.7 IOPS]
 Random Write 4KiB (Q= 32,T= 1) :   231.575 MB/s [  56536.9 IOPS]
  Random Read 4KiB (Q=  1,T= 1) :    35.232 MB/s [   8601.6 IOPS]
 Random Write 4KiB (Q=  1,T= 1) :    91.411 MB/s [  22317.1 IOPS]

  Test : 4096 MiB [D: 0.0% (0.2/894.3 GiB)] (x5)  [Interval=5 sec]
  Date : 2018/04/26 22:49:50
    OS : Windows 10 Professional [10.0 Build 16299] (x64)
    TOSHIBA THNSNJ960PCSZ

ベンチ結果もS.M.A.R.T.情報も取り立てて何かあるという事もなく。強いて言えば、総読込量より総書込量が圧倒的に多いことくらい。この使い方ならHK3Eシリーズの方が合ってるんじゃねー?>前のオーナー。まぁ、このくらいの使い方ならどっちでも変わらんだろうけどさ。

THNSNJ960PCSZの耐久性はと言うと、1 DWPD3)──つまり定格寿命たる5年間、毎日1回ドライブ全体に書き込むとTBWに達するということだから5×365×960=1752000GB、つまりTBWは1.752PBである。公称耐久性はDC S3500以上、S3700未満ということになる。そう考えるとDC S3700シリーズの10 DWPDって半端ない耐久性だよなぁ…。東芝のSSDでいえば書き込み重視型のPXシリーズが同等ラインっぽい。

主に自宅鯖の仮想マシン置き場として使う予定。取り付けたら何故かアクセスランプが点きっぱなしなんだけど…w

3) Drive Write Per Day
start.txt · 最終更新: 2016-05-07 17:46 by decomo
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0