VYATTA USERS MEETING Autumn 2013(の前半)に参加しました

2013.10.12

ども、大瀧です。久々の投稿になってしまいました。反省。
本日、VYATTA USERS MEETING Autumn 2013に参加してきました。業務都合で前半パートしか聞けなかったんですが、とても勉強になったので、ログとしてレポートを書き残しておきます。

と、その前に。Vyattaとは?

アプリエンジニアの方にはVyattaというプロダクトを知らない方が多いと思いますので、レポートの前に簡単にご紹介しておきます。(Vyattaをご存知の方は飛ばして、次の「雑感」へどうぞ。)
Vyattaは、NAT/ファイヤーウォール/VPNなどネットワーク機器で言うルーター相当の機能を、x86のマシンで実行するソフトウェアです。x86サーバーやPCにそのままインストールして使用するのはオーバースペックな場合が多いため、比較的低スペックな小型サーバーやVMware/Xenなど仮想化環境の仮想マシン、近年ではAWSをはじめとする各社のクラウド環境でネットワーク機能をサポートするため活用されるケースが増えています。

個人的な印象ですが、AWSではVPNでの利用事例が多くを占めている状況です。NAT/ファイヤーウォールはAWS(VPC)の標準機能で十分賄えることが多い一方、AWS標準のVPNはAWS VPC同士の相互接続ができない、サポートする暗号化アルゴリズムが極端に少ないと言ったところからAWSのVPNを補うニーズがVyattaに集中しているのでは、と考察しています。

VyattaでAWS VPCをVPN相互接続するの図

vyatta_example

VyattaはDebian GNU/LinuxをベースにLinuxのルーター関連機能やOSSを組み合わせて構成しているので、一種のLinuxディストリビューションと表現することもできますが、一般的なルーター製品(特にCisco IOS)に似た、統合されたコマンド体系(Vyatta Data Model(CDM)と呼ぶらしい)で操作でき、単一の構成ファイルで設定できるため、ソフトウェアベースのネットワークアプライアンスと呼ばれることが多いです。

ちなみに、SAN(Storage Area Network)ベンダーとして著名なBrocade社が昨年買収しました。コミュニティ(OSS)版と商用版があり、商用版はBrocade社よりサポートを受けることができます。

雑感

前半パートのみでしたが、発表者の方の所属がcloudpack(アイレット)さん、ニフティさん、マイクロソフトさん、ヴイエムウェアさん、IDCフロンティアさん、WebARENA(NTTPC)さん、SCSKさん、Canonicalさん、さくらインターネットさんといったクラウド事業者/インテグレーター、インフラソフトウェアベンダーさんが一同に会する、もの凄く豪華な顔ぶれで満足度最高でした。
参加できなかった後半パートもTwitterのTLは終始楽しそうで、モデレートしていた松本さんの企画力と声掛け力(笑)に脱帽です。

参加者は、サービサー/ユーザー、ソフトウェアベンダーおよびインテグレーター、クラウド事業者、R&Dといろんな属性の方が万遍なくいてビックリ。Vyattaの意外な、裾野の広さを感じました。

発表資料があまりTL上で見かけられなかったので、セッションごとの話ではなく、途中に出てきて気になった話題をいくつかピックアップする形のレポートにしてみました。

Vyattaとクラウドの相性はやっぱりGood!

様々なクラウド環境でVyattaが活用されていることを、各発表の中で感じることができました。印象的だったのは、クラウド環境上でのVyattaの活用だけでなく、クラウド環境の"裏方"としてもVyattaが活用されていること。ニフティクラウドでは、クラウド環境のネットワークサービスを提供する手段としてVyattaを活用し、異なるリージョン間ネットワークの相互接続や他社クラウドとの接続を実現しているとのこと。

2013-10-11 15.42.52_2

個人的には、最近はクラウド上のシステム構築に目が行きがちだったんですが、裏方の話はやはり、インフラ好きとっては胸アツでした。できれば、なぜVyattaを使っているのか、Vyattaのここがイケてる!といったところも触れてもらえるとさらに良かったかな、と思います。

Vyattaに次に求めるのは冗長性機能

cloudpackのsuz-labさんとIDCフロンティアさんの発表の中で、Vyattaでheartbeat(冗長構成を取るためのソフトウェア)を設定するためにVyattaのファイル *1ごにょごにょいじる *2必要があるという話がありました。ごにょごにょいじるのはBrocade社のサポート範囲から外れる、リスクのある操作ですが、現状のVyattaの標準機能では冗長性が十分に取れないという状況があります。商用版でDMVPNという冗長性を持つVPN機能の実装などが始まっているので、今後この辺りが充実していくのではという話がありました。
下の画像は、suz-labさんのVyatta on AWSの冗長構成説明シーン(スライドはこちら)です。

2013-10-11 15.21.03

"ネットワークガチ勢"にどう挑むのか

"ネットワークガチ勢"とは、いわゆるNE(Netowork Engineer)と呼ばれる旧来のネットワーク機器を扱う技術者を指します。通信事業社が扱うキャリアネットワークの分野は、インターネットをはじめとする超大規模ネットワークを扱ってきたこともあり、機器やネットワークシステムのパフォーマンスおよび信頼性に異常な執着を持っている(かもしれません) *3。Vyattaをはじめとするネットワークのソフトウェア処理化 *4はサーバー仮想化に次ぐITインフラ進化の次の過程であり、対応は不可避なんですが、ネットワークガチ勢から見ると「x86サーバーでネットワーク機能を動かすのはパフォーマンスと信頼性が不足しているため、本番では使えない」と烙印を押されてしまう傾向にあると。そこをなんとか認めさせるプロセスをどうするか、という話がセッションの合間にちらほら見受けられました。

しっくり来たのは、ヴイエムウェア金子さんのセッション時の質疑応答で出た、「サーバー仮想化と同じ流れでいくのでは」という見解でした。ヴイエムウェア社が開拓してきたサーバー仮想化の時は、旧来のサーバーエンジニアが「(初期VMware製品を見て)こんな開発環境で使うような仮想化ソフトウェアが本番で使えるのか」と言われた時期があったが現在はサーバー仮想化の環境が当たり前になっている。サーバーエンジニアを納得させることができたのは、実際に大規模なシステムが仮想化環境で動いているという実績だったと。
TLだと、以下の発言がありました。

確かに、仮想化/クラウド環境のx86ベースのマシンはキャリアネットワークで使用するようなネットワーク機器と比べるとだいぶ見劣りするところはありますが、それに応じた設計や運用、ソフトウェアによる信頼性を挙げる機能などで大部分がカバーできるのでは、と考えています。

まとめ

多くの現場でVyattaが使われていることを、改めて実感できた素敵な場でした。Vyattaのユーザーコミュニティは様々な方が集まる、非常に刺激的で不思議な集まりであり、次回はぜひ懇親会でVyattaの苦労話などをじっくり聞きたいところです。私も話したいことがそれなりにあったりもするので(笑)。

脚注

  1. Vyattaの設定やスクリプトを含む/opt/vyatta以下
  2. 具体的には、AWS/IDCFではマルチキャスト通信ができないため、heartbeatでユニキャストを使用するように改変すること
  3. にらまれると怖いので、ボカしておきますw
  4. ネットワークのソフトウェア処理化は、NFV:Network Function VirtualizationやSDN:Software-Defined Networkingと呼ばれることが多いです。