FreeNASのディスク交換

ESXi6.0でRDM(Raw Disk Mapping)でHDD4つをVMとして起動しているFreeNAS9.3に接続して利用していました。

ディスク交換の手順は以下の通り。

  1. vSphere ClientでVMインスタンスをすべて停止する
  2. vSphere ClientでESXiをメンテナンスモードにしてシャットダウンする
  3. ディスクを交換する
    • 接続前にHDDのシリアル情報を控えておく
    • この時無用なトラブルを避けるために交換するディスクと同じコネクタに接続する(たぶんRDMでデバイスの接続は仮想化しているので気にしすぎだとは思う)
  4. ESXiを起動する
  5. ESXiにSSHで接続する
    • SSHとESXiシェルを有効にしておく
  6. /vmfs/devices/disks/ からt10.で始まり、HDDのシリアルで終わるデバイスのパスを控える
  7. vmkfstools -z /vmfs/devices/disks/(控えたパス) /vmfs/volumes/(ESXiのデータストア)/(仮想マシン名)/(任意のHDDデバイス名).vmdk
    • この時は vmkfstools -z /vmfs/devices/disks/(控えたパス) /vmfs/volumes/VM-Store/FreeNAS/WD30EFRX_1.vmdk としました
  8. vSphere ClientでESXiのメンテナンスモードを解除
  9. vSphere ClientでVMの設定を編集して、上記で作成した (任意のHDDデバイス名).vmdk を接続する
    • この時交換するディスクを削除して、同じ仮想デバイスノードに接続する
  10. FreeNASのVMを起動(祈る!)
  11. 数分待ってから、FreeNASの管理画面にアクセスする
  12. アラートで「警告: The volume pool0 (ZFS) state is DEGRADED: One or more devices could not be opened. Sufficient replicas exist for the pool to continue functioning in a degraded state.」といった表示がされるはず
  13. ストレージタブからアラートに表示されているボリューム(ここではpool0)を選択して、下部アイコン一番右の「ボリュームのステータス」を表示
  14. 交換したディスクのステータスがUNAVAILになっているので選択して、下部からReplaceを実行する
  15. これでリシルバが始まり「Resilver 状態: 処理中」といった表示がされます

うちのNASは8TBほどですが、8〜10時間ほどで終わると思います。

自宅サーバ(ESXi6)が落ちる現象の解決

自宅のESXiサーバが突然落ちるようになったので、対処した内容をメモ。

状況

  • 仮想マシンSSH接続不可、ping通らず
  • vSphere Clientには接続可能
    • ただしストレージには接続不可、各VMの再起動なども不可
  • FreeNASでHDDにSMARTのエラーが出てた
    • CRITICAL: Device: /dev/da2 [SAT], 41 Currently unreadable (pending) sectors
    • CRITICAL: Device: /dev/da2 [SAT], 41 Offline uncorrectable sectors

推測

冷静になってvSphre Clientからイベントログ見てみた

  • VM用ストレージが切断されたエラーログが出ている
  • VMがログを出力できないエラーが出ている

どう考えてもVM用ストレージの異常です。過去の症状考えるとSATAケーブルの接続不良な気がする。

対処

  • VM用ストレージのSATAケーブルを挿しなおして、パーマセルテープで固定
  • エラーが出ているFreeNAS用ストレージを交換(WD赤買ってきた)

欲しいものリスト。2017/04/09版。

4年版ぶりくらいに更新。

欲しいものリスト。2012/12/06版。

結局PCモニタはASUSの4kディスプレイ(PB279Q)になりました。

■とても欲しい。

  1. 次期iPad Pro
    • 搭載プロセッサにもよるけど噂の10.5インチを。趣味でデザインワークが増えてきたのでApple Pencil使いたい
    • あと業務用向けの動画撮影アプリとかも買い集めたので、そのあたりの活用のためにも
  2. PCMレコーダー(XLR使えるやつ)
    1. ZOOM H5
    2. TASCAM DR-40VER2-J
    3. TASCAM DR-60DMKII
      • 動画撮影時の音声別録用に
  3. バックパック
    • だいぶボロボロになってきた
  4. 小銭入れ
    • ボックスタイプ少ない……
  5. BIRKENSTOCK amsterdam
    • オフィスの中履き用に
  6. HTC Vive

■それなりに欲しいけど急がない/迷っている。

  1. ノーベルアームズ COMBAT T1 TAN
  2. エアコンプレッサー+ハンドピース
  3. CO2レーザー加工機
    • 20万とか安いのわかるけど、二の足踏んでる
  4. Leica DIIIの修理
    • いい加減OHしないと宝の持ち腐れ……
      • なんだけど、流石に最近フィルムで撮影する機会が……
  5. プロジェクタの買い替え
    • ランプ使用時間が1600時間こえました。そろそろ本気出して買い替え検討
      • なんだけど、今の部屋の間取りの都合であまりプロジェクタ使えてない

■ちょっと物欲落ち着いてきた

  1. 酒石酸と硝酸銀
    • まあ写真用です
  2. ヒョウモントカゲモドキとその仲間
  3. カラーネガティブフィルム発色現像補充液 BAN-1R
  4. オリエンタル カラーケミカルCNL/BAN用スターター
  5. 高級毛糸
    • マフラーとかパンツとか
  6. 職業用ミシン
    • JUKI シュプールか、BROTHER ヌーベルクチュールあたりが手ごろっぽい。しかし置く場所がないのでどうしたものか

■欲しいけど我慢する

  • デルタ ラ・ピアッツェッタ
    • 書斎館行ったときに一目ぼれしました。私の手へのなじみがハンパないです。
      • ただしコンバータ式なのが珠に瑕。吸入式だったら……
  • ヒョウモントカゲモドキと飼育セット一式
  • コーンスネークと飼育セット一式
  • ヘビクイワシと飼育セット一式
  • 水草とエビの完全生態系水槽
  • 革靴
    • バーウィック、スコッチグレインが候補。とりあえずフィッティングはしてきた。職業変わったので革靴優先度低下。

■買えないから作る

  • 8x10カメラ一式
    • レンズとフィルムホルダは入手済み。後は暗箱を作るのみ。

FreeNASのバージョンアップでハマったのでメモ。

FreeNASを8.2.0から9.1.1にアップデートしてみました。

USBにimgファイルをddして起動していたので、同じように9.1.1のimgファイルをddして起動したら既存のディスクがインポートできない……。

以下の手順でインポートしないとダメらしい。

シェルから以下のコマンドを順番に実行する。

# zfs set mountpoint=/mnt/(プール名) (プール名)
# zfs mount -a
# zpool import -f (プール名)

この時点でシェルからはディスクの内容が見えるようになるが、WebGUIから見えないしインポートもできない。
とりあえずzpoolのアップグレード。

# zpool upgrade (プール名)

WebGUIから読み込めるようにするためにはzpool exportしないとダメだった。

# zpool export (プール名)

これでWebGUIからストレージ>自動インポート、で取り込むことができる。

(起動用USBを何気なく上書きで作ってたから超焦ったなんて言えない……)

VPS上のMySQL & Apacheのチューニングその3。

VPS上のMySQLのチューニング。 - 新・鍋でもうだうだ
VPS上のMySQLのチューニングその2。 - 新・鍋でもうだうだ
VPS上のMySQLのチューニングその3。 - 新・鍋でもうだうだ

激安VSP上でWordPressを運営しているとまあよく落ちるわけですが、やっと原因特定できたっぽい。

他のAWSのmicroサーバとかでもMySQLが原因で落ちることがよくあるみたいだったから、その線で調べていたけれど実はMySQLだけじゃなく、Apacheにも原因があったという罠。


StartServers       5
MinSpareServers    5
MaxSpareServers   10
ServerLimit      256
MaxClients       256
MaxRequestsPerChild  4000


StartServers       4
MinSpareServers    4
MaxSpareServers   8
ServerLimit      32
MaxClients       32
MaxRequestsPerChild  500

に修正しました。

上から順番にこんな設定

  • 起動時の初期プロセス数
  • 最低待機プロセス数
  • 最大待機プロセス数
  • 最大プロセス数(再起動反映)
  • 最大プロセス数(リロード反映、違いがわからん)
  • プロセスを作り直すリクエスト回数

個人ブログで同時アクセス32なんて行かないだろうからこんなもんで十分かと。

MySQLももう少し見直しました。

max_connections=40

だけ指定していましたが、

innodb_buffer_pool_size=8M
innodb_log_file_size=5M
max_connections=40

こんな感じになりました。

Macbook Pro 13.3 Retina Late 2013 ゲットしました。

ずっと新しいノートPCが欲しいと騒いでいましたが、結局MBPRにしました。今までMacOSには触れてこなかったので経験がてらということで。

しかし、だいぶ勝手が違うのでまだまだ操作がたどたどしいですw ブログとか読み漁っておすすめアプリとか入れてますが、メインのエディタが決まらない......どうしようかね。

VPS上のMySQLのチューニングその3。

VPS上のMySQLのチューニング。 - 新・鍋でもうだうだ
VPS上のMySQLのチューニングその2。 - 新・鍋でもうだうだ

どうもやっぱりプロセスが落ちるので再度メモリ消費を調整。

mysqld --verbose --help

にて設定されている値がわかるらしいので、前回までに設定した値をすべて削除してデフォルト値を確認してみた。どうやら設定した値よりも少ない値が設定されているようで、わざわざ設定する必要がなかったみたい。

ただし、max_connectionsだけは151とかなり大きい数字だったので、40程度に指定しておいた。

最終的に追記した設定はぐっとシンプルになって

max_connections=40

のみとなりました。今のところは無事に動いている様子。しかしなんだかレスポンスが悪くなった気がするんだよなぁ......。