OpenStackのセミナーでコントリビューターたちが語ったOpenStackの未来

2017年12月13日(水)
松下 康之 - Yasuyuki Matsushita
OpenStackに関する最新情報セミナーが開催され、直前に催されたOpenStack Summit Sydneyで公開された最新情報が紹介された。

プライベートクラウドプラットフォームのOpenStackに関する最新情報セミナーが開かれた。これは日本仮想化技術株式会社とThinkITが共催したもので、2017年11月6日から8日までシドニーで開かれたOpenStack Summitの直後ということで、最新情報のアップデートをライトニングトーク形式で行ったものだ。

この記事ではセミナーの前半として昼の部のサイバーエージェント、NTT、日立ソリューションズ、サイバートラストのエンジニアが行ったプレゼンテーションを紹介する。後半である夜の部、サミットにも参加した日本仮想化技術の玉置氏、NECの鳥居氏のセッション及びパネルディスカッションに関しては、別記事で紹介したい。

最初に登壇したのはサイバーエージェントのインフラエンジニア、青山真也氏だ。青山氏はサイバーエージェントの広告配信を行うビジネスユニットであるアドテク本部にて、OpenStackをベースにしたプライベートクラウド環境におけるコンテナ、Kubernetes環境の構築に関して解説を行った。OpenStackのコミュニティではZunやMagnumなど様々なプロジェクトが存在するが、サイバーエージェントの環境には適していなかったため、Heat(OpenStackのオーケストレーションを担当するコンポーネント)を活用してGoogleが提供しているGoogle Kubernetes Engineに相当するサービスを構築したユースケースに関する内容だった。

サイバーエージェントの青山氏

サイバーエージェントの青山氏

青山氏はインターネットの広告配信というビジネスの性格上、遅延は許されないという厳しい制約の中で、いかにコンテナとKubernetesをベースにした高速なアプリケーションの実行環境を用意するのか? について言及した。特にパブリッククラウドであるGoogleのコンテナサービスであるGKEに、社内の開発者が移行してしまうことに危機感を覚えたことが、システム構築の大きな要因であったと語った。社内のインフラストラクチャーを担当するエンジニアにとって、パブリッククラウドのサービスと戦わなければいけない状況は、サイバーエージェントだけではなくある程度のサーバーリソースを持っている企業にとっては他人事ではないだろう。特にユーザーが少なくなれば、結果的にオンプレミスで調達したハードウェアのユーザーあたりの利用コストが高くなってしまうというコメントがあったが、このあたりの感覚はコストと性能を常に意識しているサイバーエージェントのエンジニアならでは、といったところだろう。

そしてオープンソースソフトウェアの仕様を充分に検討した上で、最新のZunなどのソフトウェアを使わずに、ある程度枯れたソフトウェアであるHeatのテンプレートを書くことで運用を可能にしたという部分も参考になるシステムであったように思われる。ここでは要求仕様に合わせて利用するソフトウェアを選択するというごく一般的なことが、様々なオープンソースソフトウェアが発生し、そして自然淘汰されてしまう状況では難しくなってくるということを示していると言える。

またKubernetesに関しても、まだアプリケーション開発者が容易に触れるレベルには成熟していないため、インフラエンジニア、ネットワーエンジニアが積極的に関わらないといけないというコメントも、コンテナとKubernetesが全てを解決できるわけではないという現実を垣間見せてくれた点であった。

青山氏のプレゼンテーション資料:CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack without L3 Network - OpenStack最新情報セミナー 2017年11月

次に登壇したのは、OpenStackの分散オブジェクトストレージであるSwiftのコントリビューターであるNTTの露崎浩太氏だ。

プレゼンテーションを行うNTTの露崎氏

プレゼンテーションを行うNTTの露崎氏

最初に露崎氏が紹介したのは、Swiftに新たに実装されたGlobal Erasure Codingだ。一般的なイレイジャーコーディングの場合は分割したデータのブロックをデータセンター内で分散するが、これを複数のデータセンターをまたいでも可能にする機能がGlobal Erasure Codingであり、NTTが提案していた機能を実装したものだという。クラスターの中でデータが分割され、異なるストレージドライブに保存されることで冗長性を上げるのがイレイジャーコーディングの利点だが、それを地理的に離れたデータセンター間でも可能にすることで、ディザスターリカバリー的な観点でも価値がある。データの容量を抑えながら冗長性を高める機能として、注目されている。

次に紹介したのは、ストレージ機器を単にストレージとして使うだけではなく、ストレージクラスターのCPUも活用する新しいプロジェクトである「Storlets」だ。分散ストレージのSwiftは、ネットワーク上に存在するサーバーのストレージをオブジェクトストレージとして扱うためのコンポーネントだが、Storletsはそのストレージが格納されるクラスターの持つCPUも使おうというソフトウェアだ。元々IBMが開発していたものだが、2014年にオープンソースソフトウェアとして公開されたという経緯がある。GitHubのページには「Middleware and Compute Engine for an OpenStack Swift compute framework that runs compute within a Swift cluster」という記述があり、Swiftを構成するクラスターのCPUを使うためのミドルウェアと演算エンジンのためのソフトウェアということだ。これはハイパーコンバージドインフラストラクチャーなどにも見られるが、データに近いところで演算を行うことで処理を高速化しつつ、ストレージとコンピュートノードを効率良く運用するための仕組みという発想だろう。ストレージとコンピュートを分離させて管理を容易にするという発想から、スケーラビリティを重視して、クラウド的な環境を作るためにハイパーコンバージドインフラストラクチャーが注目されているが、それをOpenStackで実装した試みとして興味深い内容であった。

鶴崎氏のプレゼンテーション資料:OpenStack Swiftの最新機能とStorlets

次に登壇したのは、日立ソリューションズの工藤雄大氏だ。

プレゼンテーションを行う日立ソリューションズの工藤氏

プレゼンテーションを行う日立ソリューションズの工藤氏

工藤氏は、OpenStackで非常によく使われている分散トレージであるCephに対するベンチマークを紹介した。ここではCephを最大8台の物理サーバーに分散させると同時に、コンピュートノードも同じ物理サーバーに相乗りさせる、いわゆるハイパーコンバージドインフラストラクチャーの構成をOpenStackとCephで構築し、ストレージのベンチマークテストを行ったものだ。

仮想マシンの数は80と規模は小さいものの、ノード数を変えて計測することでCephのストレージとしての特性を見極めようというテストだ。詳細はスライドを参照して欲しいが、ここで興味を惹くのはFioというベンチマークのためのソフトウェアを使った時のTipsとして、ReadとWriteで挙動が異なるという点だ。つまりストレージの性能を測るためにRandom WriteとRandom Readを組み合わせて実行する場合、Write→Readの順番に実行すると正しくI/Oが行わずに正確なベンチマークが実行できないという。そのため、FioでのベンチマークにおいてはReadとWriteの順序を正しく行う必要があると解説した。

ベンチマークは往々にして、その結果の数値だけが独り歩きしてしまうことがあるが、工藤氏のプレゼンテーションで注目したいのは結果もさることながら、ベンチマークを行うソフトウェアに関する知見を獲得し、不具合を発見できたということだろう。ストレージの検証を行うエンジニアにはぜひ、注目していただきたい。

工藤氏のプレゼンテーション資料:Openstack ceph 20171115 vtj

次に登壇したのは、サイバートラスト佐藤剛春氏だ。

サイバートラストの佐藤氏

サイバートラストの佐藤氏

佐藤氏はOpenStackにおけるノード間通信の高速化に注目して、OpenStack Summit Sydneyのセッションを聴講したという。現在、ノード間の通信を高速化には、インテルが提供するDPDK(Data Plane Development Kit)やSR-IOV(Single Root I/O Virtualization)を活用する方法もあれば、通信を行うNICにプロセッサを載せてハードウェアにオフロードする方法などもあり、選択肢は様々だ。佐藤氏はそんな中からNUMA(Non-Uniform Memory Access)に関する解説を行った。

佐藤氏のプレゼンテーション資料:2017-11-15 OpenStack最新情報セミナー Lightning Talk OpenStack環境における通信高速化 ~超入門~

前半のライトニングトークは、OpenStackに対する技術的な検証や来るべき方向性が見えてきた内容であった。もう少し時間を取って、より深い考察を聴いてみたいと感じさせるプレゼンテーションであった。

著者
松下 康之 - Yasuyuki Matsushita
フリーランスライター&マーケティングスペシャリスト。DEC、マイクロソフト、アドビ、レノボなどでのマーケティング、ビジネス誌の編集委員などを経てICT関連のトピックを追うライターに。オープンソースとセキュリティが最近の興味の中心。

連載バックナンバー

仮想化/コンテナイベント

KubeCon報告からKubernetes対応版Dockerまで、Docker Meetup Tokyo #20開催

2018/1/30
コンテナーに関する勉強会「Docker Meetup Tokyo #20」が、2017年12月14日に開催された。11月に開催された「Docker Meetup Tokyo #19」に続く回となった。
仮想化/コンテナ

Red Hatが示したOpenShiftの将来とは

2018/1/24
Red Hatが推進するコンテナープラットフォームであるOpenShiftの1dayカンファレンスが開催された。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています