woshidan's blog

そんなことよりコードにダイブ。

Heartbeatとブロックデバイスについて

短いですが、一応何かしら書くぞということで、本を読んでいたら「Heartbeatがスタンバイしたサーバを有効にする」「ブロックデバイスレプリケーション」と出てきたのが意味がわからなかったのでメモ。 

Heartbeat関連

  • クラスタに関することでハートビートといえばHAクラスタを実現する上で利用される仕組み
    • HA(High Availability)クラスタクラスタリングの中の一種で、あるサービスを提供するサーバが落ちたら代替機がそのサービスを引き継ぐようにするようなクラスタ
    • サーバ間で一定の間隔でパケットを送りあってお互いが生きているか死活監視している
    • 一定以上他のノードからパケットが届かなくなったらフェイルオーバーを作動させる
  • クラスタの種類
  • ハートビート色々
    • http://www.atmarkit.co.jp/ait/articles/0711/13/news139_2.html の記事では
      • Heartbeat … オープンソースソフトウェア「Heartbeat」全体
      • heartbeat … 上記のHeartbeatで提供されるプログラム、もしくはそれを起動したときのプロセス
      • ハートビート … HAクラスタを構成するPCが相互に状態監視をする際のネットワーク構成、およびその通信を指すものとします
        • 数ページしか調べてない時点で上記とちょっと違う定義が出て来ていて、一番上の行にあるのがそれ。要注意単語。
  • ハートビートの通信をどう行うか
    • シリアル通信や、ハートビート用に確保したLANを利用したり。
    • 監視対象のサーバに外部からのリクエストがたくさん来て高負荷のときに、輻輳に巻き込まれてハートビートのパケットが失われないように、アプリケーション本体の動作に使われるネットワークを避けたほうがいいらしい

Linux系OSのブロックデバイスとキャラクタデバイス

  • Linux系OSでは、デバイスはコンピュータに接続された周辺機器のことをデバイスと呼び、 /dev 以下に作成されるデバイスファイルが周辺機器のハードウェアへのインタフェースとなっている
  • ブロックデバイスとは、ある一定の量(通常512~2048バイト)の読み書きをランダムアクセスで行えるデバイスで、ディスク装置全般が該当する
  • キャラクタデバイスはデータの入出力をバイト(1文字)単位で扱うデバイスで、データの読み出しや書き込みがシーケンシャルアクセスとなる
    • 一度読み書きしたデータを後戻りして再び読み書きすることはできない
    • キーボードやマウスなどが該当する

参考

ウェブオペレーションまとめ用に読み直してるんですが、真面目に読むと11章や12章がとても重くて少しいやですね。わかんないものはわかんないで仕方ないですが。

*1:ここのwebアプリケーションサーバをEC2で調達したりする話を聞いたことが多いので、なんとなくクラスタ=クラウド感がありました