ITmedia NEWS > 企業・業界動向 >

仮想サーバ17万台、物理サーバ9万台 「ヤフオク!」「Yahoo! JAPAN」を支えるヤフーのITインフラ運用術(1/2 ページ)

» 2020年08月13日 07時00分 公開
[吉村哲樹ITmedia]

 国内最大級のポータルサイト「Yahoo! JAPAN」をはじめ、ECサイト「Yahoo!ショッピング」やオークションサイト「ヤフオク!」など、コンシューマー向けWebサービスを数多く運営するヤフー。同社はこれらのサービスを裏で支えるシステム基盤として、大規模なプライベートクラウド環境を自社で構築・運用している。

 ヤフーの奥村司さん(クラウドプラットフォーム本部 プライベートクラウドチーム リーダー)が、クラウドインフラの運用管理者向けイベント「Cloud Operator Days Tokyo 2020」で明かしたところによると、その規模は、仮想サーバが約17万台、物理サーバが約9万台。物理サーバのうち2万台がIaaSの仮想化ハイパーバイザーとして使用されており、IaaSだけで1000台以上のラックが使われているという。

 ヤフーはこの構成のインフラを、約20人のチームで効率的に構築・運用し、社内に提供しているというが、どのような工夫をしているのか。

photo 国内最大級のポータルサイト「Yahoo! JAPAN」(画像の一部を編集し、広告をカットしています)

 工夫の1つに、奥村さんは「OpenStackクラスタの数の多さ」を挙げる。ヤフーはインフラの基盤ソフトウェアにオープンソースの「OpenStack」を採用し、「全社共通で利用するIaaS基盤以外にも、特定の環境やユーザーの利用に特化したIaaSクラスタを数多く用意している」という。

 「例えば、本番用と開発用でクラスタを分けたり、広告システムやメールシステムといった大規模サービス用に専用のクラスタを作って社内に提供したりしている」

 Openstackの他、仮想化ハイパーバイザーには「Kernel-based Virtual Machine」(KVM)を採用。一部では「VMware」も利用している。

サーバ選定、データ保管の工夫とは

 このクラスタを構築する際の手順は「システム設計」「サーバの見積もり・購入」「設置」「セットアップ」「デプロイ」「テスト」――と一般的なものだが、個々のプロセスを簡略化し、人手による作業を軽減している。

 まずサーバの選定・調達に際しては、運用管理を容易にするため、サーバごとの性能の平準化を図れるよう、取り扱うサーバの機種をなるべく増やさないよう心掛けている。具体的には、CPUの世代に合わせてサーバのスペックを統一し、それに合致しないサーバは調達しないようにしている。

 このサーバ(または仮想化ハイパーバイザー)の上で動作する仮想マシンに割り当てるCPUリソースは、物理CPUのスレッド数の3倍まで許可している。やや多い印象だが、実際には問題はほぼ発生しないという。ただし、一部のCPU占有率の高いアプリケーションに関しては、専用サーバを用意するなどの対策を講じている。

 データを保管するディスクは、ごく一部の例外を除き、共有ストレージではなくサーバの内蔵SSDを利用している。その理由について奥村さんは「内蔵SSDは処理スピードが速く、最近は導入コストも落ち着いてきている。また、サーバと共有ストレージ間のネットワークについて考慮せずに済むためだ」と話す。

 ただ、この内蔵SSDはRAID構成(複数の外部記憶装置を組み合わせ、1つの外部記憶装置として冗長運用する構成)を組んでいない。そのため、ディスクトラブルに起因するデータ消失のリスクが常につきまとう。これに備え、ヤフーではサーバ側ではなくアプリケーション側でデータを分散配置して冗長性を担保する仕組みを採用し、データ消失を防いでいる。

       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.