イベント, インフォメーション, コラム, 勉強会

タイトルは釣りです。
今までありがとう「ifconfig」のエントリが大人気だったので真似ただけです。
別にPerlがなくなるとか、そんな話はありません。ごめんなさい。

それどころか、今日から3日間、Perlの熱いイベントが開催されますよ。

YAPC::Asia Tokyo 2014
http://yapcasia.org/2014/

YAPCとはYet Another Perl Conferenceの略で、世界中で行われるプログラミング言語「Perl」にまつわるイベントです。Perlハッカー達が集い数々のトークを行い、それを参加者が見たり聞いたり楽しみます。おっと、ちょっと待ってください。「Perlにまつわる」と言いましたが、YAPC::AsiaはPerlだけにこだわらず、他の言語やWebテクノロジーなど様々な分野の技術話に花が咲く、ITやWebエンジニアのためのお祭りです!今年は「There is more than one way to enjoy it!」をスローガンに掲げ、誰もが色々な楽しみ方を体験出来るYAPCを目指します。

「Perlに限らず」ってのはわりと本当で、トークリストを見ると、Perl限定の話はあんまりありません。

トークリスト – YAPC::Asia Tokyo 2014
http://yapcasia.org/2014/talk/list

Perlの話が少ないので、やっぱりPerlは下火なのかあ、とも思っちゃうかもしれませんが、Perlの話が少ないのは毎年のことです。
それどころか、今もPerlを最前線の仕事で使ってる会社は意外と多いんですよ。
スポンサーリストを見ると、Perlをお仕事で使っている日本を代表するウェブ系の会社がズラリ。

スポンサー – YAPC::Asia Tokyo 2014
http://yapcasia.org/2014/sponsor/

我々DMM.comラボもかき氷スポンサーをさせていただいています。
会場でDMMかき氷を配りますよ。
「DMMかき氷を見かけたらtwitterでつぶやこう!」キャンペーンも行なっていますので、DMMTwitter「@DMM_com」をフォローして、DMMかき氷の写真と共にハッシュタグ(#DMMかき氷)を付けた状態でツイートしてくださいませ。
抽選で1000円分のDMMギフト券が当たります。

DMM.comが作りたての「かき氷」を再現
http://labo.dmm.com/information/2014/0729/

 

また、DMM.comラボでは、LL Diver同様、来場者向け会場ネットワーク構築にも協力させていただいています。

会場ネットワーク – YAPC::Asia Tokyo 2014
http://yapcasia.org/2014/network/

iDC, インフラ全般, コラム

こんにちは、ゲストブロガーのあきみちです。連載第2回は、データセンターに関する記事です。

DMM.comが運営している各種Webサービスは、東京都内3ヶ所と九州1ヶ所、合計4ヶ所のデータセンターに設置された機器から配信されています。DMM.comのようなコンテンツ事業者にとって、データセンターは事業の中心的な機器が設置された非常に大事な場所なのです。

さて、「データセンター」という言葉を聞いたことがある人も多いと思いますが、それがどういった場所で、どうやって使われているのかを知る機会がない方々も多いのが実情です。運営しているWebサイトの規模によってはデータセンターが提供するサービスを直接利用する必要はありません。また、たとえ自社がデータセンターを利用していたとしてもサーバに対して遠隔からのみアクセスするような場合もあります。昨今は、「クラウド」が普及してきたことにより、利用者がデータセンター内に入る必要がないサービスの比率も増えているので、今後はデータセンターに入ったことがないITエンジニアが増えるかも知れません。

これから数回は、日本におけるデータセンターをDMM.com的な視点で紹介するとともに、DMM.comが利用しているデータセンターの一部を写真付きで紹介します。

データセンターが提供するのは場所と電気

データセンターが行っている基本的な業務は、各種機器を置くための場所と電気を提供することです。最近のデータセンターは、様々なサービスを提供しつつサービスを多角化させていますが、昔のデータセンターは、純粋に場所と電気の提供をする、いわゆる「箱」を提供する事業者でした。どちらかというとIT用途の不動産という役割です。

データセンターを使うのはDMM.comのようなコンテンツ事業者だけではありません。大企業の社内システムや金融機関のシステムもデータセンターで運用されていたりします。ISPがデータセンターに機器を置いてインターネットの一部を運営していたりもします。

データセンターは、様々な社会インフラのIT部分を支える非常に大事な施設なのです。

データセンターが提供しているサービスの種類

多くのWebエンジニアの方々が利用する「サーバホスティング」というサービスは、データセンターで場所を借りているホスティング事業者が提供していたサービスを利用するというものでした。データセンター事業者が直接提供するものではなかったのです。しかし、最近はそういったサービスをデータセンター事業者が提供することも一般的になりました。それに伴って、ホスティング事業から撤退した事業者もいます。業界構造は変わり続けているのです。

最近のデータセンター事業者が提供するサービスをザックリと表現すると、以下のようになります。

  • ホスティング借り(クラウド含む)
  • ラック借り
  • エリア借り(ケージ)
  • エリアが大きいと、ワンフロアとか一部屋(フロアが部屋に別れている場合もある)

DMM.comが東京都内で利用しているデータセンターのひとつは、エリア借り(ケージ)です。DMM.comを運用する機器が置かれたエリアの周辺が檻のようになっており、その入り口の鍵を使ってDMM.comの関係者がエリアに入ります。

20140811-IMG_0717

20140811-IMG_0755

データセンターのフロアにDMM.com用にケージでエリアを区分けされているのですが、その面積をどのようにするのかが実はいつも悩ましい課題だったりもします。将来の拡張を考えるとある程度余裕を持って面積を確保したいですし、確保しておかないと他社がスペースを契約してしまい拡張したくでも物理的にできなくなってしまいますが、その一方で必要以上の面積を契約してしまうと、実際は使っていないことにお金を払い続けることになります。

将来のサービス拡大を見据えつつ、どれだけの面積を確保するのかもインフラエンジニアの大事な仕事なのです。

データセンターが提供する「場所」

「場所を提供している」とだけ書くと、単に場所を提供しているだけに思えるかも知れませんが、データセンターが提供する「場所」というのは、セキュリティが確保されたうえで適切な温度管理がされています。高度な消火機能も特徴です。多数の機器を運用するための設備が揃った特殊な不動産なのです。

セキュリティがどのように守られているのかは、各データセンターによって大きく異なります。たとえば、指紋、網膜、体重など生体認証システムを備えたデータセンターもあります。外部の人が入る場合には、住所氏名電話番号や身分証明書の提示が求められることもあります。日本ではあまり耳にしませんが、米国では爆発物を伴う外部からの攻撃にどれだけ耐えるかといった観点もあります。

どのように物理的なセキュリティが確保されているのかは、データセンターの大きな特徴であり、各データセンターによって方式も異なるのですが、セキュリティレベルが高ければ高いほど、そのデータセンターを使うエンジニアにとっては面倒な部分もあるのが多少辛いところでもあります。

これもセキュリティの一環なのでしょうが、日本ではデータセンターがどこにあるのかが公開されることを非常に嫌う傾向があります。基本的に、どこにどのようなデータセンターが存在しているのかは公式情報としては公開されていません。入り口の写真を撮影して掲載するようなことも嫌われます。そのような背景もあり、関係者以外は具体的なデータセンターの位置を知らないことも多いのです。

データセンターは寒い!

大量の電気が消費され、多くの機器が発熱を続けるデータセンター内を常に適切な温度に保ち続けるのもデータセンターが提供する大事な機能です。とにかく冷やす必要があるのです。それを実現する空調の方式にも様々なものがあり、各データセンター毎に違います。

20140822-IMG_1004

サーバにとって快適な温度は、必ずしもそこで作業を行うエンジニアにとって適切な温度とは限りません。疲れてくると寒くなってくるということもあります。DMM.comが借りているデータセンターには、上記写真のような上着も置いてあります。作業が長期化して寒くなったときの対策も万全(爆)だそうです。

とまらない電気の提供

データセンターが行っている基本的な業務は、場所と電気の提供ですが、データセンターが提供する電気は「とまらない電気」であり、その部分が非常に重要な要素なのです。日本では、そもそも一般家庭であっても停電が頻繁に発生するわけではないので、「とまらない電気」といわれてもそこまで珍しいと思わないかも知れませんが、データセンターがどこまで発電できるのかが非常に重要視される地域も多いのです。

東日本大震災のときには、日本でもデータセンターにおける発電が大いに注目されました。各データセンターは以前から燃料を備蓄していましたが、備蓄している燃料を使ってしまった後にどこまで燃料を確保すべきかという課題がありました。災害復旧活動などを阻害せずにデータセンター用に燃料をどれだけ確保すべきなのかといったことに悩んだ担当者は多かったと思われます。

電気に関連する設備は各データセンターごとに違います。電源系統が複数あったり、データセンター事業者がUPS(Uninterruptible Power Supply/無停電電源装置)を持っていたりと、様々です。交流ではなく直流を提供してくれるデータセンターもあります。

データセンターで場所を借りる側の視点で見ると、多くの場合は、ラック単位で電圧などを指定します。電圧を指定する必要があるのは、機器によっては日本の一般家庭で使われている交流100Vではない電圧を要求するためです。たとえば、「このラックは100Vでお願いします」「このラックは200Vでお願いします」といった感じです。注文する内容によっては、別途設備工事を依頼して引いてもらいます。

電圧がラック単位で違うこともあるので、どの機材をどのラックに設置すべきかというパズルが発生します。そういったことを含めて、データセンター内での機器配置デザインを決めるのがエンジニアの仕事です。

次回に続く

今回の記事を読んで、「あれ?ネットワークもデータセンターの大事な部分じゃないの?」と思った方々もいらっしゃると思います。そこら辺の話は、次回紹介する予定です。次回は、データセンターからサービスを購入している事業者が外部との通信方法の確保する方法などになります。お楽しみに!

(データセンターを取り巻く状況は国によって多少異なる部分もあります。ここで紹介する話は、あくまで「日本のデータセンター」という視点なのでご注意ください。)

おまけ

そういえば、前回記事では「こんにちは。あきみちと申します。」としか書いておらず、どこのどのような「あきみち」だか不明瞭でした。私は、「Geekなぺーじ」というサイトを運営しているブロガーの「あきみち」です。

なお、余談ではありますが、第一回で明確に名乗らずに「あきみち」とだけ記載したところ、ネット上で「あの、あきみちさん?」といった反応が複数発生し、その後、知人から「あのあきみち」とか「これからはTheあきみちと名乗れば?」といった暖かい激励の言葉を頂きました。

iDC, インフラ全般, コラム

こんにちは。あきみちと申します。ゲストブロガーとしてツチノコブログで連載することになりました。連載の内容は、DMM.comの裏側で使われている技術などを解説するものですが、視点としては多少ネットワーク寄りになる予定です。

第一回は、DMM.comが運営されている環境の概観を紹介しつつ、今後掘り下げて行く予定にしている項目をいくつか示します。

DMM.comの規模

bps(bits per second)は、ネットワークを語るときに非常に良く利用される指標です。その名の通り、1秒間に何ビットが転送されるかを示しています。一般的なOSでは、8ビットを1バイトとして扱っているので、たとえば、800Mbpsでの通信であれば、100MBのファイルを1秒で転送できるぐらいだと言えます。

DMM.comが扱っているネットワークトラフィックは、ピーク時で100Gbpsを超えます。100Gbpsというのは、10GBのファイルを0.8秒間で送信するぐらいの規模ですが、それが毎秒送信されているのです。凄い量のパケットがDMM.comからインターネットに向けて毎秒配信されています。

このトラフィックは、「艦隊これくしょん」などのゲーム(2014年7月現在246タイトル)、コンテンツ配信、通信販売、オンラインレンタル、などを提供するためのものです。以下の図のように、DMM.comの会員数は増え続けていることもあり、インターネットに向けて配信しているトラフィックも年々上昇しています。2014年1月時点で、会員数は900万を超え、月間PVは16億にもなります。

100Gbpsものトラフィックをどのように捌くの?

現在、市場で購入可能な商用ネットワークインターフェースで最も広帯域なものは100Gbpsの通信が可能な100ギガイーサネットです。100ギガイーサネットは、数年前に標準化され、最近になってやっと商品が揃いつつありますが、それを使ったとしてもDMM.comの全てのトラフィックを捌くことはできません。さらに、一ヶ所で全てを配信するようなネットワーク設計にしてしまうと、何か問題が発生したときに全てがストップしてしまうので、複数の回線を使ってトラフィックが流れるようにしてあります。

AS間接続
図:AS間接続

DMM.comとインターネットを繋ぐ回線は、合計で180Gbpsの帯域があります。この値は年々増えていますが、まだまだ増えそうです。

この他、CDN(Content Delivery Network)事業者と呼ばれる、インターネットデータ配信代行を行う事業者に依頼してのデータ配信も行っています。

物理的にどこに置くの?

DMM.comが配信する100Gbpsを超えるトラフィックは、物理的に1ヶ所から配信されているわけではありません。

日本国内にある4ヶ所のデータセンターから配信されています。4つのうちの3つは東京にあり、残るひとつが九州にあります。それぞれ目的に応じてデータセンターが使い分けられています。

4つのデータセンター
図:4ヶ所のデータセンター

個人で小規模なWebサイトを運営する場合、ホスティング事業者などからサーバを借りますが、DMM.comの場合はデータセンター事業者から「場所」を借ります。このような場所借りは「コロケーション」と呼ばれています。コロケーションサービスによって提供されている場所に大量のサーバを持ち込み稼働させるという手法は、大規模なWebサービスを運用するうえで良く行われる手法です。

拠点間の通信ってどうやってるの?

DMM.comは、物理的に異なる4ヶ所のデータセンターで運用されていますが、それぞれのデータセンターを何らかの形で結ぶ必要があります。提供しているサービスが大きくなってくると、一ヶ所では運用し切れなくなり、一ヶ所で運用し切れなくなると拠点間の通信をどのように行うのかを考える必要がでてくるのです。

DMM.comは、東京都内にあるデータセンター間を結ぶために、「キャリア」と呼ばれる大規模通信事業者から光ファイバを借りています。こういった長距離光ファイバは、光が通っていない状態であることから「ダークファイバ」と呼ばれています。

拠点間を結ぶ方法としては、ダークファイバ、L2伝送、VPNなど、いくつかの方法がありますが、各事業者がおかれている状況に応じて必要なサービスが選択されたうえで運用されています。

「裏側」のトラフィック?

ネットワークトラフィックには「表側」と「裏側」があります。表側は、インターネットに対してサービスを提供する部分ですが、これが先ほど書いた100Gbps超のトラフィックです。

Webサービスの規模が大きくなってくると、1台のサーバだけで全てを完結するのが難しくなってきます。たとえば、DMM.comでは、データベース、ログイン認証、課金のための仕組み、データストレージなどが、それぞれ独立した別々のサーバで稼働しています。これらがDMM.com内部ネットワークでの「裏側」トラフィックを発生させます。

Webサービスの規模が大きくなって行くと、裏側のトラフィックをどのように制御するのかに関しても様々な工夫が必要になります。新しい機器が登場しがちなジャンルでもあるので、数年おきに運用トレンドが変わっていく部分でもあります。そういった「楽しさ」があるのも「裏側」の特徴かも知れません。

膨大な台数をどうやって管理するの?

DMM.comは、2014年8月現在、あわせて約4500台の物理サーバと仮想サーバをデータセンター内で運用しています。さらにそれに加えて外部のパブリッククラウドサーバでの運用も行なっています。

このような台数のサーバを全て手動でひとつひとつ制御するのは、もはや困難です。「複数のサーバを同時に制御するための仕組み」を考えることは、いままさに大きなトレンドであり、様々なものが提案されていますが、DMM.comでは構成管理ツールのansibleを一部で利用したり、Webサーバの操作やデプロイにcapistranoを利用しています。大量のWebサーバの管理は、capistrano等の自動化ツールがないと不可能です。

これらの他に、どのラックにどのような機器がマウントされているのかなどをRackTablesで管理しています(参考 racktablesを使っています)。

膨大なデータをどうやって記憶しておくの?

Webサービスが巨大になっていくにつれ、膨大な量のデータを扱う必要も出てきます。

個人的に運用している小規模なWebサイトであれば、1台のサーバにデータを記憶させておくことも可能でしょうが、規模が大きくなってくるとデータストレージ部分を独立したサーバ群として管理する必要がでてきます。

データストレージも時代とともにトレンドが変化している部分であると言えます。DMM.comでのデータストレージ方法も、そのうち解説する予定です。

続く

今後、こういった話などをひとつひとつ掘り下げて連載していきたいと考えています。お楽しみに!

PAGE TOP