SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

仮想ルータVyatta/VyOSで変わるネットワーク設計

クラウド時代のシステム冗長化を考える

仮想ルータVyatta/VyOSで変わるネットワーク設計(3)

クラウド時代のシステム冗長化

 パブリッククラウド、プライベートクラウド、ベアメタル、VPS、オンプレミス、ハイブリットクラウドと多数の用語や定義が流布していますが、コンピュータがどこかで確実に稼働していることは変わりません。

 図4は、IDCジャパン社から発表された国内データセンターにおけるサーバー設置台数です。台数にして250万台の規模があり、事業者DCと企業内DCが拮抗しているのが分かります(「DC外とはマシンルームなどの独立した部屋ではなく、オフィススペースや店舗のバックヤードなどに設置」とのことです(涙))。

図4. 国内データセンターにおけるサーバー設置台数
図4. 国内データセンターにおけるサーバー設置台数

 ここで示された数字がすべてではありませんが、システム冗長化を必要とするコンピュータの台数規模が理解できます。仮に10%がシステム冗長化を必要とするコンピュータ規模としても25万台以上になります。これだけの台数がパブリッククラウドやオンプレミスを問わず日夜稼働している計算になります。

 続いて、システム冗長化の基本理解を深めることを目的として、古くから利用される冗長化を考慮したシステム設計手法についてみていきましょう(図5)。

 この設計例では、VRRPv2などIPマルチキャストを用いたHA(High Availability)構成のシステム冗長化の手法を用いています。基礎理解を深めるため物理構成から冗長化メカニズム、さらにHA構成図までを抽象化して示しました。詳しくは記述していませんが、スイッチは冗長化のためMLAG: Multi-Chassis Link-Aggregationなどが用いられているとします。 ルータ、サーバ、NASはいずれも二台一組のActive/Standby構成です。

図5. 古くから利用される冗長化を考慮したシステム設計手法
図5. 古くから利用される冗長化を考慮したシステム設計手法

 比較的小規模でも古くから用いられる設計手法なので、なじみ深い方も多いかと思います。動作するアプリケーションやサービスによっては異なるアプローチが取られますが、そこはご留意ください。

 続いて、古くから用いられる冗長化を考慮したシステム設計手法をパブリッククラウドで実現する際の留意点についてみていきましょう。すでにご存じの方も多いかと思われますが、Amazon Web Services, Google Compute, Microsoft Azureなど一部のパブリッククラウドでは「Unicast Only」トラフィック制限があるため、VRRPv2などIPマルチキャストを用いたHA(High Availability)構成のシステム冗長化の手法ではなく、「独自のデザインパターン」(設計テクニック)が利用されています。

 パブリッククラウド内部においてトラフィック制限がかかっているため、図6のように古くから用いられる冗長化を考慮したシステム設計手法を利用することはできません(注:IPマルチキャストなどにトラフィック制限をかけていないパブリッククラウドやプライベートクラウドであれば、こういったことはありません)。

図6. 一部のパブリッククラウドにおけるシステム冗長化の設計手法の不整合
図6. 一部のパブリッククラウドにおけるシステム冗長化の設計手法の不整合

 「Unicast Only」トラフィック制限のかかった一部のパブリッククラウドでは、システム冗長化する場合には、独自のAPIや機能と連携したHAメカニズムやクラウド事業者が用意したILB(Internal Load Balancer)などが用いられます。

 古くからシステムエンジニアをされ、システム冗長化の耐障害性設計をされている方々はすでにお気づきかと思いますが、これらクラウド事業者から提供されるHAメカニズムやILB(Internal Load Balancer)など独自機能を利用する場合、それ自体が単一障害点(SPOF: Single Point of Failure)です。SLAなどによりそれら機能の耐障害性は示されますが、図7のように独自機能に強く依存した設計を取った際にはサービス停止もしくはシステムの全停止という可能性もあります。これは遠隔地の第三者にプラットフォームを預託する際に、昔から言われて続けている課題の一つです。

図7. 独自のデザインパターンによるシステム冗長化と単一障害点
図7. 独自のデザインパターンによるシステム冗長化と単一障害点

 これらを踏まえて企業の業務システムなどでコンピュータ資源を継続的に利用するというユーザ観点から考えたとき、古くから利用される冗長化を考慮したシステムの継続的な利用方法の選択肢は図8のようになります。

図8. 古くから利用される冗長化を考慮したシステムの継続的な利用方法
図8. 古くから利用される冗長化を考慮したシステムの継続的な利用方法

 現状維持から積極的なパブリッククラウドの利用まで、前述の図4. 国内データセンターにおけるサーバー設置台数という統計数値からも、納得いただける内容かと思います。

 これらを踏まえて中長期的にコンピュータ資源をうまく活用するための現在とこれからを見ていきましょう。

次のページ
パブリッククラウドとうまく付き合う方法

この記事は参考になりましたか?

仮想ルータVyatta/VyOSで変わるネットワーク設計連載記事一覧

もっと読む

この記事の著者

松本 直人(マツモト ナオト)

1996年より特別第二種通信事業者のエンジニアとしてインターネット網整備に従事。その後システム・コンサルタント,ビジネス・コンサルタントを経て2010年より,さくらインターネット株式会社 / さくらインターネット 研究所 上級研究員。(2016年より一時退任)研究テーマはネットワーク仮想化など。3~5年先に必要とされる技術研究に取り組み、世の中に情報共有することを活動基本としている。著書: 『モノのインターネットのコトハジメ』,『角川インターネット講座 ~ビッグデータを開拓せよ~』など多数。情報処理学会 インターネットと運用技術研究会 幹事

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/8242 2014/11/18 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー