ブログ
J-Net_Japan_Blog_Team , Regular Visitor
ブログ
10分でわかるOpenContrail (後半)
Nov 19, 2013

はじめに

 「10分でわかるOpenContrail(前半)」 ではSDNコントローラーであるContrailがSDNにおいてどのプレーンでサービスを提供するのか?といった内容についてご紹介させて頂きました。今回はContrailのSDNコントローラーとしての特徴と、アーキテクチャについて触れたいと思います。

 

■Contrailの特徴は?

 Contrailの特徴はどのようなものでしょうか?いくつか上げると下記の3つになるかと思います。

 

① OpenSource化された、または標準化された技術を活用

 

②  物理ネットワークとサーバー上のバーチャルルーター間で様々な規模でオーバーレイネットワークを構築可能

 

③  オーケストレーターにOpenStack(ファーストリリース現在)を用いる事でサーバー上の仮想マシンやバーチャル・アプライアンスの作成/管理をする事ができるオールインワンソフトウェアパッケージ(Apache 2.0 Project/Open Source Software)

 

 まず、Contrailの特徴①としてOpenSource化された、または標準化された技術を用いて開発されている、という点があげられます。例えばサーバー上で仮想マシンを収容しているvRouterですが、vRouterはControllerとXMPPを用いたXMLベースのインスタントメッセンジャープロトコルを採用しています。(XMPPはFacebookやtwitterでも使用されている実は身近なプロトコルです。)その他内部の様々なコンポーネントにOSSや標準化ベースの技術が用いられており、今後多くのデベロッパーが参加した場合でも開発を進めやすいという期待が持てます。
#Contrailのアーキテクチャについては下記を参照してください。
# スライド資料: http://opencontrail.org/network-virtualization-architecture-deep-dive/

# 詳細資料: http://opencontrail.org/opencontrail-architecture-documentation/

 

 ②の物理ネットワークとサーバー上のバーチャルルーター間でオーバーレイネットワークを構築する点ですが、この点についてはアーキテクチャご説明の際に詳細を述べたいと思います。

 

 ③ですが、これは一つの大きなメリットかと思います。前回でもご紹介したとおり、ContrailはOSSとしてソースコードが公開されており、スキルさえあれば誰でもコードをチューニングしたり、そのままコンパイルしてインストールする事が可能ですが、既にvRouterやController、OpenStackといった全てのコンポーネントが一つにまとまったバイナリイメージも提供されています。このバイナリイメージはCentOSもしくはFedoraベースで提供されています。ユーザーはContrailのコンポーネントが既にパッケージ化されたCentOSもしくはFedoraのisoをサーバー上にインストールし、その後、それぞれのコンポーネントをenableとさせるためのShellを動かせば、Contrailシステムを構成するコンポーネントとなります。あとは、それぞれのコンポーネント間でやり取りを行うためのIPアドレスの設定を行えば、システムとしては出来上がりです。つまり、ユーザーはバイナリイメージをインストールし、IPアドレスの設定やゲートウェイルータの設定を行うだけで、簡単にオーバーレイの環境を構築可能となっており、OpenStackとその他コンポーネントのAPI連携といった、構築の手間を省く事ができるというわけです。

 

 このバイナリイメージはジュニパーのソフトウェアサイトからダウンロードが可能ですので、ジュニパーアカウントをお持ちのユーザー様やパートナー様であれば、JUNOS同様にダウンロードして頂けます。

また、ジュニパーアカウントが無いという方もゲストアカウントを作成いただければ、どなたでも、90日の評価版をダウンロードして頂く事が可能です。

# OpenContrailの90日評価版ソフトウェアは、下記より、Binary->”downloaded here”をクリック!
# http://opencontrail.org/getting-started/

※ご利用に際して、Contrail Software Evaluation License Agreementに同意いただく必要がございます。

 

 

■Contrailのコンポーネントとアーキテクチャ

 特徴については文章ばかりでしたので、イメージがつきにくかったかもしれません。ここからは図を用いてご紹介したいと思います。

 Contrailのアーキテクチャは図1のようになります。

 Contrailアーキテクチャ.jpg

図1. Contrailコンポーネントとアーキテクチャ

 

 Contrailのシステムは仮想マシンや仮想アプライアンスを作成/管理するオーケストレーターと仮想ネットワークを管理するSDNコントローラー、仮想マシンを収容するvRouterとゲートウェイ装置といったコンポーネントによって構成されます。

 それぞれのCompute Node(仮想マシンを収容するサーバー)上にはそれぞれvRouterが動作しており、各vRouterとゲートウェイ装置との間でオーバーレイのトンネルを張ります。オーバーレイトンネルを張るためにvRouterは収容する仮想マシンが作成された際、作成された仮想マシンのUUIDやIPアドレス、MACアドレスといった情報を、XMPPを使ってSDNコントローラーへ通知します。XMPPを受け取ったSDNコントローラーは他のvRouterに対してはXMPPでそれら情報を広報し、ゲートウェイ装置に対してはBGPに変換してネットワーク情報を通知します。 つまり、この一連のオーバーレイのトンネルを張るアーキテクチャはMPLS VPNと同じアーキテクチャと言えます。MPLS VPNではPEルータに収容されるお客様のネットワーク情報を、BGPでPeerを張っているルートリフレクタ経由で、対向のPEルータに通知し、MPLS VPNのトンネルを張りますが、同じ様な事をContrailも行っているという事です。ContrailにおいてはSDNコントローラーがルートリフレクタ相当の役割を担い、vRouterとゲートウェイ装置がPEルータになり、vRouterに収容されるVMのホストアドレスがVPNでいうところのお客様ネットワークになる、というわけです。

 Contrailアーキテクチャ②.jpg

 

図2. MPLS VPNとContrailアーキテクチャの比較

 

 皆さんもご存知のとおり、このMPLS VPNアーキテクチャはワールドワイドの規模で通信事業者様が提供するVPNサービスとして採用されています。つまりこのアーキテクチャにより、大規模に展開する事も可能です。また、オーバーレイトンネルを張るにあたっては、現在のVXLANのようにMulticastでvRouter間でやりとりを行う必要ないため、WANを跨いだ拠点間オーバーレイといった構成においても構築しやすいというメリットがあります。上述したContrailの特徴②をあげさせて頂いた理由は、こういったアーキテクチャの背景があったためです。

 

■おわり

 「10分でわかるOpenContrail」という事で2回に分けて Contrailのご紹介をさせて頂きました。本当はじっくりと時間をかけて、ご説明を差し上げたいのですが、まずは10分(?)で読める量にまとめてみましたが、いかがでしたでしょうか?

 改めて要点を整理すると、
- Contrailはマネジメント、コントロール、サービスプレーンの機能を提供するソフトウェア
- OpenSourceであり、誰でもダウンロードし、開発が可能
- バイナリイメージも提供されており、インストレーションおよび構築が用意
- VPNアーキテクチャを採用しているため、大規模にスケールする事が可能

といったところでしょうか。

 OpenContrailのメーリングリストを見ていると、日に日にやり取りされるメールの量も増え、世界中でダウンロードされContrailがテストされだしているのを感じる事ができます。また、日本国内でも、実際に試験を行い早速その内容を公表して頂くといった事も始まっております。

 ぜひ、この記事を読んで頂いている皆様にもダウンロードして頂き、Contrailで遊んで頂ければと思います。

 

■ご紹介
 IIJ 曽我部様にはOpenStackユーザ会 第15回勉強会で「OpenStack + OpenContrailで実現するマルチテナントIaaSというテーマで」発表頂き、ミクシィ 吉野様には「OpenContrailを勉強してみた」という題目でブログを書いて頂きました。それぞれのリンクをご紹介しますので、ぜひご参考ください。

- IIJ曽我部様 「OpenStack + OpenContrailで実現するマルチテナントIaaSのご紹介

- ミクシィ 吉野様 「OpenContrailを勉強してみた

 

profile.jpg有村淳矢

技術統括本部

サービスプロバイダ技術本部

システムズエンジニア

 

2003年国内大手システムインテグレーターに入社。通信事業者担当のネットワークエンジニアとして全国規模のネットワークプロジェクトを経験し、2010年ジュニパーネットワークスに入社。以降、通信事業者/サービスプロバイダ担当のハイタッチSEとしてインターネットバックボーン、データセンター、SDNといった幅広い領域での業務に従事。

 

※ご意見やご質問など、是非otoiawase@juniper.netにメールを頂くか、コメント欄やTwtitter(@Juniper_Japan)からお寄せください。

 

==============

関連ブログ

==============

「10分でわかるOpenContrail(前半)」

 

「SDN時代のデータセンター・アーキテクチャ/Forwarding Plane (前編)」

 

「SDN時代のデータセンター・アーキテクチャ/Forwarding Plane (後編)」

 

「オープンソースによって進化していくSDNの世界」

 

「SDNの今後の展開。クラウドの次はモバイル?」