CW_Welcomeバナー

データセンター

RSS

【Megasite Infrastructure Strategy 2010 Report】

600台の手作りサーバ群を仮想化して コスト削減、効率向上、負荷分散、冗長化を実現

低コストで最大限の効率を追求するはてなのシステム
(2010年03月19日)

ユニークなサービスで知られるはてなは、システム構成も実にユニーク。システムの中核を担うサーバこそデル製のAMD Opteronサーバだが、それ以外は自社設計の「手作りサーバ」だ。仮想化により、この600台の物理サーバを1,300台のサーバとして運用している。また、アプリケーション・サーバについては、Linux Virtual Serverによるロード・バランシングで負荷分散と冗長化を実現している。



Computerworld.jp

はてな 執行役員 田中慎司氏

高度なスケーラビリティと冗長性の確保 そして、効率と応答性を最重要視

 「人力検索はてな(Q&Aサービス)」「はてなダイアリー(ブログサービス)」「はてなブックマーク(ソーシャル・ブックマーク)」といったサービスで知られるはてなの登録ユーザーは、2010年3月時点で140万人。月間ユニークユーザーは約2,000万で、ピーク時のトラフィックは800Mbpsに達する。

 これだけのトラフィックを処理するため、600台の物理サーバを、仮想化で約1,300台として運用している――というのが、デルとAMDの提供による特別講演「はてなのサービスを支えるシステム」で田中慎司氏が明らかにした、はてなインフラの現状だ。

 当然、システムの設計と構築/運用にあたっては、高度なスケーラビリティと冗長性を確保すること、そして効率と応答性が重要視されている。

 例えば、アプリケーション・サーバについては、「Linux Virtual Server(LVS)」でロード・バランシングしながら複数台をクラスタ構成で運用。負荷を分散するとともに、障害発生時はフェールオーバ/フェールバックを行わせている。

 また、マスタ/スレーブ構成としたDBサーバのうち、更新されるマスタ側はマルチ・マスタ方式としたうえで相互にレプリケーションを実施。

 ただし、冗長化とハードウェア利用効率はトレードオフの関係にあるため、はてなはサーバを仮想化することで、コスト抑制とスケーラビリティや可用性の向上を実現させているという。

 さらに、ハードウェア・リソースをフル活用するため、同一の物理サーバ上に配置する仮想サーバの組み合わせにも注意が払われている。「空いているリソースを互いに利用できるような組み合わせを選んだ」(田中氏)。具体的には、CPUバウンドのWebサーバとメモリ・バウンドのキャッシュサーバ、CPUバウンドのWebサーバとI/OバウンドのDBサーバを同居させるようにしたと言う。

 このほか、サイト規模が大きくなるにつれて、ネットワークにもさまざまな対策が必要になると田中氏は言う。1か所のデータセンターでグローバルに対応するのは難しいため、CDN(コンテンツ配信ネットワーク)として「Amazon Cloudfront」を利用していると明かした。

ページの先頭へ戻る