クラスタの数が決まったら、次は個別のクラスタの管理について検討していきます。ここではプライマリークラスタを対象に考慮します。
HadoopはSPOFがないため、Hadoop自体が止まることはめったにありません。しかし、適切な設計を行わないと、十分な可用性を得ることができません。
例えば、1つのラックにマスターサーバを3台集中させると、ラック全体のスイッチ(ToRスイッチ)がダウンしただけでクラスタ全体がアクセス不能となります。しかし、複数のラックにマスターサーバを分散していれば、ラック障害に対する耐性を得ることができます。クラスタ構築時はドキュメントを熟読してください。
Hadoopは柔軟に拡張できるような設計になっていいます。リソースが不足しても、サーバを追加するだけで無停止で拡張できます。これを踏まえて、ここで考慮すべきはサーバ調達のリードタイムがどれくらいかを確認した上で、拡張計画の決定のしきい値を策定することです。
例えば、月に5%のペースで容量が増えており、サーバ調達のリードタイムが2カ月であれば、余裕を持って見積もると、大体容量の80%ほどを使用した段階で発注するようにすればいいでしょう。
Hadoopのような分散システムを「Nagios」や「Zabbix」、あるいは「JP1」の一般的な監視ツールのみで監視するのは極めて困難です。必ずHadoopに特化した監視システムを使うようにしましょう。
Hadoopは、大きく分けて以下の2つのデータを持っています。
ビッグデータという名の通り、Hadoopに保存されているデータは大量です。よって、従来のNASなどにバックアップすることはできず、バックアップ先もまたHadoopクラスタとなります。全く同じクラスタにすると大きなコストが掛かるため、以下の2通りの方法により全体のサーバ台数を減らすことができます。
また、メタデータのバックアップも重要です。メタデータはマスターサーバが保持していたり、RDBMS内に格納されていたりと、いくつかの場所に分散配置されています。これらを正しくバックアップするには、先述した管理ツールが持っている機能を使う方がいいでしょう。
ビッグデータ基盤は、複数のサーバを束ね、それらのリソースを共有して複数のアプリケーションを稼働させるシステムです。このために、束ねたリソースをどのように共有、管理していくかが重要になります。
ただし、リソース管理が重要になってくるのは2つ目のプロジェクトが相乗りするようになってからなので、今回は説明を省略します。今後、リソース管理について設計する必要があることだけ覚えておいてください。
(後編へ続く)
次回は、本番環境において考慮すべき4項目のうち「セキュリティ管理」と「データ管理」の項目を解説します。
Copyright © ITmedia, Inc. All Rights Reserved.