FreeBSD Daily Topics

2009年12月14日FreeBSD高信頼性レプリケーションHAST、最初のマイルストーンに到達

heads-up

HAST reached his first milestone
current - FreeBSDのGEOMレベルで高信頼性レプリケーションプロジェクトを実現するための開発プロジェクトHASTが、最初のマイルストーンに到達したとPawel Jakub Dawidek氏が発表しました。現時点で完了したと報告されている作業のうち、特に興味深い部分は次のとおりです。
  • hastdデーモンの実装
  • hastdデーモンを制御するためのhastctlユーティリティの実装
  • GEOMプロバイダの名前を指定できるようにGEOM_GATEクラスを拡張。従来は/dev/ggateXの名前のみが使われていたが、HASTでは/dev/hast/を使うようになる
  • コミュニケーションプロトコルの実装。抽象レイヤがあり、背後には今のところ3つの実装(proto_tcp4 - プライマリとセカンダリノードの間の通信用、proto_uds UNIXドメインソケットを使いhastdとhastctlが通信に用いる、proto_socketpair - hastdとhastdから派生したワーカープロセス間の通信用)がある。
  • 各種APIの実装(nv、ebuf、logging)
  • lex/yaccを使った設定ファイルパーサの実装

FreeBSD Foundation: Update on HAST Projectではhastd、hastctlの簡単な実行例が紹介されているほか、通信の手順が簡単に紹介されています。

hastdデーモン実行例
# hastd -h
hastd: [-dh] [-c config]
hastctlユーティリティ実行例
# hastctl -h
hastctl: [-d] [-c config]
hastctl: [-d] [-c config] status [all | name ...]

# hastctl secondary all

On the primary node we mark all resources as primary:

# hastctl primary all

HASTプロジェクトはGEOMレベルでのレプリケーションを実現するための取り組みで、ファイルシステムにUFS2を使っていてもZFSを使っていても、またはそれ以外のファイルシステムを使っていても利用できるようになります。高い信頼性が要求されるレプリケーションが必要になる場合、FreeBSD ZFS+HASTはかなり魅力的な選択肢になると見られます。

おすすめ記事

記事・ニュース一覧