Cisco Japan Blog

Cisco ACI とは何なのか(1) 「ACIをシンプルにL2/L3スイッチとして考えてみる」

1 min read



シスコの Application Centric Infrastructure(ACI)は、2014年 8月のリリースから 3年以上が経過し、今や非常に実績豊富なソリューションとなってきました。国内外多くのお客様にご採用いただき、国内における実績も毎年倍増を続けています。導入先の業種は多岐にわたり、小規模から大規模まで様々な使われ方をしています。

マーケット リーダーとしてのACI

リリース当初、私たちは ACI を紹介する際に「これまでのネットワークとは大きく違う革新的なソリューションである」ということをあまりにも強くアピールし過ぎていたようです。そのため、既存のネットワークの導入・管理とは全く異なる管理手法が必要となると誤解され、お客様・パートナーの皆様から「私には ACI はまだ早そうです」と言われてしまうこともありました。しかし、実際には ACI はシスコがこれまで積み上げてきたネットワーク技術の上に成り立つものであり、ネットワーク規模の大小や求める機能の多少に関わらず、データセンター ネットワークを必要とするすべての方に価値をご提供できるソリューションであると考えています。

本ブログでは、『ACI がどのようにお役に立てるのか』について、技術的な詳細というよりも実践的な価値にフォーカスして、5 回にわたってご紹介します。

本シリーズで予定している内容は以下のとおりです。

第1回:ACI をシンプルに L2/L3 スイッチとして考えてみる
第2回:アプリケーションとネットワークを結びつけるポリシーってどう役立つの?
第3回:連携してもいい・連携しなくてもいい、という使い方 ~物理・仮想・コンテナ・L4-7サービス…
第4回:ネットワークをサービスとして提供するために必要なこととは
第5回:進化し続ける ACI

第1回のテーマは、「ACI をシンプルに L2/L3 スイッチとして考えてみる」です。

改めて、Cisco ACI とは何なのか

ACI はシスコの SDN ソリューションです」と説明させていただくことがあります。これは正しくもあり、少し間違った説明とも言えます。Software Defined Network(SDN)という言葉から連想するものは、人それぞれです。SDN の定義を、広義に「これまでのネットワークでは解決できなかった/難しかった課題を解決するソリューション」とするなら、「ACI は SDN である」という説明も正しいと思います。しかし、狭義に「ソフトウェアだけで実現するネットワーク」とするならば、ACI は SDN ではないのかもしれません。しかし、どう定義するにしても、SDN を検討されている皆様にとっては SDN そのものが目的ではないはずです。『SDNによって、どんな課題を解決したいのか』こそが重要なポイントなのではないでしょうか。

これらの課題を解決する手段としてならば、ACI は皆様のお役に立てるソリューションです。

Nexus 9000 スイッチで実現する「IP ファブリック」

下図のように、ACI は基本的には Nexus 9000 シリーズのスイッチをベースに構築された IP ファブリック ネットワークを基盤として、APIC(Application Policy Infrastructure Controller)というコントローラで全体を制御するソリューションです。

ファブリックというネットワークのカタチも、今ではデータセンター向けのネットワークとしては普及しつつある技術かと思います。例えば「Ethernet ファブリック」とは、従来の Ethernet の課題であった 「ループ トポロジーが形成できない」という課題を解決するために、スパニングツリー プロトコルを用いる従来の方式ではなく、L2 の世界にルーティングの仕組みを実装することによって、ブロードキャスト ストームのようなループ トポロジーに起因する問題を発生させず、かつ全てのパスを Active に利用できる技術です。現在、この技術が、低遅延であることが求められる大量のネットワーク トラフィックが流れるデータセンターのようなネットワーク基盤を支えています。

では、ACI の基盤となる Nexus 9000 スイッチによる「IP ファブリック」は、従来の「Ethernet ファブリック」とはどのように違うのでしょうか?

ACI の IP ファブリックでは、VXLAN が用いられています。大きな違いは、Ethernet ファブリックが主に L2 ネットワークを実現する技術であったのに対して、ACI における IP ファブリックでは VXLAN によって L2 ネットワークだけでなく L3 ネットワークも自由に構成することができるという点です。よく VXLAN の解説として「アンダーレイの物理ネットワークに依存しないネットワークを実現するためのオーバーレイ技術」と書かれていることが多く、それも VXLAN の 1 つの側面としては正しいのですが、VXLAN は単なるオーバーレイ技術として使うのではなくファブリックと融合し IP ファブリックとなることによって、その価値をより発揮できます。なぜならば『VXLAN を意識することなく使うことができるようになる』からです。

多くの“SDN ソリューション”は、VXLAN そのものを設計・管理対象としています。しかし「SDN そのものが目的ではない」はずなのと同様に、VXLAN もまた「VXLAN そのものが目的ではない」はずです(ネットワークをサービスとして提供する場合には VXLAN そのものが目的の場合もあるでしょうが、ここではエンドユーザ視点で書かせてください)。

VXLAN 自体は 2014 年に RFC として標準化された技術で、次のように定義されます。

オリジナルのイーサネット フレームを VXLAN ヘッダでくるむ(Encapsulation)ことによって、VXLAN の送信元と送信先となる VTEP(VXLAN Tunnel End Point)と呼ばれるエンドポイント間でトンネルを構成し通信を成立させる仕組み

経路上のネットワークからは単なる UDP/IP パケットとして見えるパケットの中に、VXLAN ヘッダにおける VNI(VXLAN Network Identifier)という識別子によって区分された様々な通信が流れることとになります。ただし、その技術や仕様は、今では当たり前のように広く使われている VLAN とは全く異なり、また VXLAN は VLAN を置き換えるものでもありません。VLAN の中にさらに VXLAN で区分を作り出します。そのため、これまでも管理してきた VLAN やサブネットなどの管理に加えて、VTEP や VNI の構成や管理、さらには VTEP 間での経路情報を制御するためのコントロール プレーンの仕組みの選択・実装など、VXLAN の利用によってさらに管理者の負担を増やすことになる場合もあります。これでは、VXLAN 導入によるメリットを上回るデメリットをもたらしてしまう可能性もあります。

ACIでは VXLANを意識することなく使うことができます。ACI を構成する Nexus 9000 同士の IP ファブリック内では VXLAN が用いられていますが、ACI の管理者や利用者は VXLAN の存在を意識する必要性はありません。VTEP や VNI などを設計したり設定したりする必要はないのです。それらは仕組みとして自動的かつ内部的に使われます。つまり、ACI 全体をあたかもひとつの L2 もしくは L3 スイッチとして使うことができる、というわけです。

柔軟な拡張を可能にする ACI のメリット

必要に応じたタイミングで拡張・変更を自由に行いつつも、あたかも 1 台のスイッチであるかのように管理することができる、という点だけでも ACI は十分に価値のあるソリューションだと思います。さらに ACI には、下図のようにシンプルに「接続するサーバなどのエンドポイントの数が増えたら Leaf スイッチを増やす」「ACI ファブリック全体の性能を上げたければ Spine スイッチを増やす」というように必要になったタイミングでネットワークを拡張できると同時に、管理面としてはひとつの L2/L3 スイッチとして扱うことができるという特長があります。

VXLAN を意識する必要性のない構成管理

ACI では既存のネットワークとの間でスイッチ同士を接続するように L2 接続することも、ルータや L3 スイッチを介して L3 接続することも、自由に構成することができます。また、内部的には VXLAN を用いているため、マルチテナント ネットワークとして複数のテナント間で IP アドレスや VLAN が重複していたとしても、それらを明確に区分しつつ 1 つのネットワークの中で扱うこともできます。つまり、ACI はとても自由度の高い単なるスイッチとして使うことができるわけです。

SDN というと、ネットワーク仮想化と呼ばれるような「オーバーレイによってネットワークをソフトウェア的に制御すること」をイメージされる方も多いかもしれませんが、いわゆるアンダーレイとオーバレイを区分してしまうとアンダーレイとオーバレイの 2 つのネットワークそれぞれの管理が必要になってしまいますし、どこかにその間をつなぐ仕組みなども必要になってしまいます。ACI では、アンダーレイとオーバーレイの区分はありません。VXLAN を用いてはいますが、あくまでもそれは内部的な仕組みとして使っているだけで、Windows、Linux、UNIX、メインフレームなどあらゆる物理サーバにも、どの Hypervisor 上で稼働する仮想マシンにも、Docker などのコンテナにも、区分のない「1 つのネットワーク」を提供することができます。

実際に ACI を導入されるお客さまの多くが、まずは従来の L2/L3 ネットワークを置き換えるところから始めることで ACI の価値を実感されています。その後、使い方を広げていくことによって、単純な「ネットワークの置き換え」だけではない、さらなる価値を生み出していくことができます。ACI をネットワークの基盤として導入することで、将来において発生しうる「解決したい課題」についての対応の可能性を広げることができます。

ACI は、SDN + Fabric(どこから初めてどこへ広げるか)

「SDN によって、どんな課題を解決したいのか」という基本に立ち返り、その手段として ACI をぜひご検討ください!!
次回は、ACIをより活用する仕組みであるポリシーについて、解説していきたいと思います。

ACIの技術的な情報については、以下のACI How Toサイトで公開しています。ぜひ御覧ください。
https://learningnetwork.cisco.com/community/connections/jp/aci-howto

 

 

Authors

畝高 孝雄

Technical Solutions Architect

Japan Architecture Systems Engineering

Tags:
コメントを書く