GIO」の安定稼働を支える仕組みを、サービスの開発者や基盤運用エンジニアが解説します。今回は、「自社開発に拘るクラウドオーケストレータ」についてご説明します。サービスを構成するソフトウェアにオープンソースのプロダクトは欠かせません。OS、Webサーバ、アプリケーションサーバ、データベース、etc...。P2)のシステムでもCentOS、MySQL、Railsなどが随所に利用されています。一方で、サービスのコアとなるシステムは、当然ながらサービス固有のソフトウェアで構成されます。P2を構成する多数のマイクロサービス群は、ほとんどが自社開発のIIJ独自技術が満載されたものになっているのです。今回はその辺りの自社開発に込められたこだわりの部分に触れたいと思います。GIOのIaaSを抜本的にリニューアルすることが決まった際、OpenStackの採用も検討しました。OpenStackの品質にいささか不安はありましたが、プロビジョニングシステムとしては完成度を高めつつありました。オンプレでOpenStackの導入を検討されているお客様から、ハイブリッドクラウドを構成するにはパブリッククラウド側もOpenStackで構成されていると都合が良いとの声もいただいていました。それに、サードパーティから提供される様々なドライバ等、今後OpenStackをとりまく環境が充実していくであろうことに魅力を感じていたことも事実です。最終的には既存の自社基盤を大幅にアップデートすることで、サービス全体のエンハンスを進めていく方針に決定しました。その過程には紆余曲折がありました。今振り返ってみると、システムの可用性や運用の効率化を高いレベルで実現するには、やはり自社基盤に一日の長ありと判断したことは間違いではなかったと思います。P2サービスを成長させていくためには、魅力的な機能を提供していくことはもちろんのことですが、長期的に安定してサービス提供されることが同等以上に大事なことだと考えています。なんらかのメンテナンスの度に停止を伴うようでは、お客様に安心してシステムをお預けいただくことは難しいでしょう。P2はこの点を重視して、サービスデザインの段階から運用プロセスを合わせて設計しています。障害にしろメンテナンスにしろ、極力止まらないクラウドを目指して開発が進められました。GIOだけでなく、長年のあいだ自社サービス基盤を運用してきた実績から得られた知見に基づくものです。これだけの大規模なシステムで起こりうる課題を把握し、その対応策をシステム設計に反映するのは、そう簡単に真似できるものではありません。P2をサービスインしてから1年(2016年12月現在)がたちましたが、機能停止を伴うメンテナンスは一度しか行っていません。その裏では数々のハードウェア障害や数百回に及ぶ大小様々なメンテナンスが実施されているのですが、それをお客様が意識することはほとんどなかったはずです。お客様の仮想マシンが稼働するハイパーバイザに脆弱性が発覚したこともありましたが、それすらも大半のお客様には影響を及ぼすことなく対応を終えています。運用に高度なノウハウが求められるOpenStack一方、OpenStackを取り巻く環境は日々変わっているものの、少なくとも検討段階では可用性を考えるといくつか不安がありました。Life)を迎えます。セキュアな基盤を維持するためには毎年アップデートを続けなければならないということです。無停止でアップデートを成功させるには、かなりのノウハウが必要とされることは明白でした。このことはOpenStackに独自の改修を行うのであれば、アップデートのたびに新パッケージへ改修箇所を追随させていかなければならないことも意味します。OpenStackのいくつかのコンポーネントは冗長構成を独自に検討しなければならず、これもまた大きな負担となることが想像できました。OpenStackベースのクラウドサービスを提供されている事業者、独自拡張を加えたディストリビュータ、オンプレをOpenStackで管理されている方々、それぞれかなりのノウハウを蓄積しながら運用を行っているはずです。素のOpenStackで不足なく利用されているケースはおそらく少数派でしょう。開発と運用はそれぞれ役割分担してサービス開発、提供を行っていたものですが、いまや運用を知らずしてサービスを開発できる時代ではなくなりました。可用性、スケーラビリティ、将来を見越したアップデート計画などを開発者自身が精通していないと、サービスリリースにこぎつけたとしても、その後の苦労は並々ならぬものが待っているはずです。※2016年12月に弊社ブログに掲載した記事を、一部加筆修正しました。10の更新プログラム。10の更新プログラム。~世界情勢に応じたスピーディーな海外拠点展開と各国レギュレーション対応の両立を実現するソリューションとは~IIJの法人向けサービス・ソリューションについては、お気軽にお問い合わせください。Blogこのサイトは株式会社インターネットイニシアティブが運営しています。