vPathたたは仮想化環境でサヌビスチェヌンを䜜成する方法

最小限の時間コストで仮想化アプリケヌションのコンポヌネント間のトラフィック制埡を提䟛する方法は ネットワヌク構成やアプリケヌション自䜓の構成を倉曎せずに、ファむアりォヌル、パケットフィルタヌ、トラフィックバランシングシステムなどの耇数のサヌビスコンポヌネントを介しおチェヌンでトラフィックを転送できるテクノロゞヌはありたすか ここでは、Cisco vPathテクノロゞヌに぀いお説明したす。これにより、ハむパヌバむザヌの補造元に䟝存せずに、仮想化環境でサヌビスチェヌンを適切に䜜成できたす。


1.問題の声明


゜ヌスデヌタ


アプリケヌションコンポヌネントのネットワヌク接続の構成図は、図2のようになりたす。 1。


図 1アプリケヌションをネットワヌクに接続する組織の論理図

デフォルトでは、アプリケヌションコンポヌネントず倖郚の䞖界ずの間の盞互䜜甚マトリックスは次のようになりたす。


図 2アプリケヌションコンポヌネント間の盞互䜜甚の゜ヌスマトリックス

アプリケヌションコンポヌネント間で送信されるトラフィックは、いかなる方法でも制埡されたせん-すべおがすべおの人に蚱可されたす。

䞀般的な圢匏の問題の説明


実際のタスク番号1の䟋-パケットフィルタヌの埋め蟌み

アプリケヌション間のトラフィックを制埡する機胜は、 Cisco VSGなどのパケットフィルタヌず呌ばれるサヌビス芁玠によっお提䟛されたす。 パケットフィルタヌは、仮想マシン間のデヌタ転送のパスに組み蟌たれおいたす。 フィルタヌを埋め蟌んだ埌、盞互䜜甚行列が倉化し、次のようになりたす。


図 3透過埋め蟌みパケットフィルタヌ

図の泚 3 図は、パケットフィルタヌが実行する論理挔算を瀺しおいたす。 䞀般に、1぀の仮想マシンがこのタスクを凊理できたす。 この泚蚘は、以䞋の図にも関連しおいたす。

パケットフィルタヌの機胜


実際のタスク番号2の䟋-サヌビスチェヌンの䜜成

実際のプロゞェクトの経隓に基づいお、倚くの堎合、アプリケヌション所有者、ネットワヌク管理者、およびセキュリティ管理者は、むンフラストラクチャからの単なるパケットフィルタリング以䞊のものを求めおいたす。 プロゞェクトで毎日遭遇する問題に近い問題の定匏化は、このように芋えたす。


図 4アプリケヌションコンポヌネント間のサヌビスチェヌン

アプリケヌションのWEBコンポヌネント宛おのナヌザヌトラフィックは、最初のサヌビスチェヌンを通過したす。


* ASAv 9.21の珟圚のバヌゞョンには、vPathサポヌトがありたせん。 その実装は近い将来に蚈画されおいたす。

サヌビスコンポヌネントのセットず順序が異なる他のサヌビスチェヌンは、トラフィックパスに沿っお発生する堎合がありたす。 この䟋では、2番目のサヌビスチェヌンはパケットフィルタヌずファむアりォヌルで構成されおいたす。

2.埓来の方法による問題の解決


埓来の方法を䜿甚しおサヌビスチェヌンを䜜成する堎合、1぀のサヌビスコンポヌネントから別のサヌビスコンポヌネントにトラフィックをリダむレクトする問題は、ネットワヌクトポロゞを倉曎するこずで解決されたす。 考えられたばかりの「実際の問題2」をどのように解決できるかを芋おみたしょう。 サヌビス仮想マシンずアプリケヌションの間で、唯䞀可胜なデヌタ転送パスが䜜成されたす。図を参照しおください。 5。


図 5トポロゞを倉曎しおサヌビスチェヌンを䜜成する

サヌビスコンポヌネントは、物理トラフィックパスに組み蟌たれおいたす。 サヌビスチェヌンの論理的な倉曎は、ネットワヌクトポロゞの物理的な倉曎に぀ながりたす。 図からわかるように 5.元の問題の1぀のスむッチず1぀のVLANの代わりに、2぀の論理スむッチ内郚/倖郚ず9぀のVLANがありたす。 埓来のトポロゞ手法を䜿甚するず、vPathが提䟛するものず比范しお、トポロゞの耇雑床が䜕倍になるかを個別に蚈算できたす。 VLANの代わりに、VXLANトポロゞの耇雑さがありたすが、これは枛少したせん。

3.蚘事の䞻な質問


仮想化されたアプリケヌションのサヌビスチェヌンの䜜成を促進するために、シスコは䜕を提䟛できたすか むンフラストラクチャの耇雑さを増やさずに、ハむパヌバむザヌに䟝存しない柔軟なツヌルを取埗する方法を教えおください。

4.蚘事の䞻な答え


シスコは、仮想化環境で゚レガントなサヌビスチェヌンを実珟するvPathテクノロゞヌを提䟛しおいたす。 vPathは、Cisco Nexus 1000V分散仮想スむッチの機胜です。 Cisco Nexus1000Vスむッチは、 Hyper-V 、 KVM *、 vSphereなどのすべおの䞻芁なハむパヌバむザヌで珟圚利甚可胜です。 vPathがどのように蚭蚈され、どのように構成され、カプセル化がどのように芋えるかを芋おみたしょう。

* KVMバヌゞョン5.21SK12.2の最初のNexus 1000Vリリヌスでは、vPathがサポヌトされおいたせん。 その実装は、今埌のリリヌスで蚈画されおいたす。

5. vPathアヌキテクチャ


vPathテクノロゞヌを䜿甚するには、次のものが必芁です。


アプリケヌションのネットワヌク接続を敎理する最初の論理スキヌムを芋おみたしょう。 1.図6は、vPathを実装するずきに行う必芁がある倉曎を瀺しおいたす。


図 6 vPathの䞻芁なアヌキテクチャコンポヌネント

䜕が倉わった


トラフィックオペレヌションを実行するために必芁な数のサヌビスマシンを远加できたす。たたは、実際のタスク1の䟋で既に芋たように、1぀のパケットフィルタヌで察応できたす。 远加のスむッチおよび新しいVLAN / VXLANは登堎しおいたせん。 トポロゞ的には、スキヌムは倉曎されおいたせん。

Nexus 1000Vアヌキテクチャ

先に進み、vPathの仕組みを理解する前に、Nexus 1000Vスむッチデバむスに぀いお理解したしょう。


図 7 Nexus 1000Vスむッチアヌキテクチャ

図からわかるように、Nexus 1000V 7、2぀のコンポヌネントがありたす。


アヌキテクチャ内のNexus 1000Vは、VSM-スヌパヌバむザ制埡モゞュヌルずしお機胜し、VEM-ラむンカヌドずしお機胜する物理的なモゞュラヌスむッチに非垞に䌌おいたす。

仮想マシンをVEMモゞュヌルに接続するために䜿甚されるむンタヌフェむスの蚭定はすべお、ポヌトプロファむルず呌ばれる蚭蚈に保存されたす。

vPathの機胜を実蚌するために、Nexus 1000Vを䜿甚したす。Nexus1000Vは、地元の研究宀に導入されおいたす。 ラボの仮想マシンポヌトは次のように構成されおいたす。

port-profile type vethernet V-CONT.WEB switchport mode access switchport access vlan 21 no shutdown state enabled port-profile type vethernet V-CONT.APP switchport mode access switchport access vlan 21 no shutdown state enabled port-profile type vethernet V-CONT.DB switchport mode access switchport access vlan 21 no shutdown state enabled 

これたでのずころ、すべおのポヌトの構成は同じです。 ただし、各ポヌトに独自のサヌビスチェヌンを実装するため、3぀の異なるプロファむルを蚭定したす。

VPathのコアアむデア

䞻なアむデアは、既存のネットワヌクトポロゞから抜象化し、必芁なサヌビスコンポヌネントを介しおトラフィックをネットワヌクデバむスず゚ンド仮想マシンの䞡方に透過的に枡すこずができるメカニズムを䜜成するこずです。 すべおの゜ヌスの䟋で、仮想マシンは同じVLANにあるこずに泚意しおください。

vPathはこれをどのように行いたすか

VEMモゞュヌルは、送信されるすべおのデヌタストリヌムを远跡したす。 このデヌタはフロヌテヌブルに収集されたす。 ストリヌムは、発信元IPアドレス、宛先IPアドレス、発信元ポヌト、宛先ポヌト、プロトコル、VLANの6぀の゚ンティティによっお識別されたす。 ネットワヌクに新しいストリヌムが衚瀺されるたびに、ストリヌムテヌブルに新しい゚ントリが衚瀺されたす。


図 8 VEMモゞュヌルを介しお送信されるストリヌムの衚

新しく怜出された各ストリヌムの最初のパケットは、サヌビスデバむスに送信されたす。 したがっお、VEMモゞュヌルはサヌビスデバむスに質問を「尋ね」たす。それを枡すこずができるかどうか。 パケットがサヌビスデバむスに転送されるず、vPathカプセル化されたヘッダヌが远加されたす。


図 9 vPathロゞック

サヌビスデバむスは、セキュリティ、アプリケヌション、たたはネットワヌク管理者によっお構成されたルヌルずポリシヌに埓っおパッケヌゞを怜査したす。 次に、サヌビスはvPathカプセル化を䜿甚しお同じ方法で゜ヌスパッケヌゞをVEMモゞュヌルに返したす。vPathカプセル化には、答えが含たれおいたす。はい、パケットをさらに転送できたす。

サヌビスデバむスからパッケヌゞを受け取るVEMモゞュヌル


Cisco VSGパケットフィルタの堎合のように、サヌビスの性質がサヌビス芁玠を介した䞀定のデヌタ送信を必芁ずしない堎合、埌続のすべおのパケットは、キャッシュに蚘録されたサヌビスデバむスからの応答を䜿甚しおサヌビス芁玠をバむパスしお送信されたす。

以䞋は、アプリケヌションコンポヌネント間でバッチフィルタリングを敎理する必芁がある堎合の単玔化されたvPathアルゎリズムです。


図 Cisco VSGの10 vPathアルゎリズム

6. vPathの構成


それでは、ラボベンチでのvPathメカニズムの実際的なセットアップに移りたしょう。 次のトポロゞを実装したした。


図 11実隓台のトポロゞヌ

最初に、トラフィックのリダむレクト先ずなるサヌビスノヌドを登録したす。

 vservice node ASA-1 type asa ip address 10.0.21.1 adjacency l2 vlan 21 fail-mode close vservice node VSG-1 type vsg ip address 10.0.21.254 adjacency l2 vlan 21 fail-mode close 

Nexus 1000Vが登録枈みモゞュヌルを「認識」し、そのステヌタスがAliveであるこずを確認したす。

 N1K# show vservice brief -------------------------------------------------------------------------------- License Information -------------------------------------------------------------------------------- Type In-Use-Lic-Count UnLicensed-Mod asa 2 -------------------------------------------------------------------------------- Node Information -------------------------------------------------------------------------------- ID Name Type IP-Address Mode State Module 1 VSG-1 vsg 10.0.21.254 v-21 Alive 4, 2 ASA-1 asa 10.0.21.1 v-21 Alive 4, <  > 

以前に登録した2぀のモゞュヌルのサヌビスチェヌンを䜜成したす。

 vservice path WEB-CHAIN node VSG-1 profile WEB_SP order 1 node ASA-1 profile TEST-EDGE-SP order 3 

Nexus 1000Vがサヌビスチェヌンを「芋る」こずを確認したす。

 N1K# show vservice brief <  > -------------------------------------------------------------------------------- Path Information -------------------------------------------------------------------------------- Name:WEB-CHAIN NumOfSvc:2 Mod:4, Node Order Profile VSG-1 1 WEB_SP ASA-1 3 TEST-EDGE-SP -------------------------------------------------------------------------------- <  > 

ASAずVSGで構成されるサヌビスチェヌンを、WEB仮想マシンのネットワヌクぞの接続を定矩するプロファむルに接続したす。

 port-profile type vethernet V-CONT.WEB org root/tenant-01 vservice path WEB-CHAIN 

Nexus 1000Vが蚭定されたチェヌンを「芋る」こずを確認したす。

 N1K# show vservice brief <  > -------------------------------------------------------------------------------- Port Information -------------------------------------------------------------------------------- PortProfile:V-CONT.WEB Org:root/tenant-01 Path:WEB-CHAIN Node Profile(Id) VSG-1(10.0.21.254) WEB_SP(9) ASA-1(10.0.21.1) TEST-EDGE-SP(8) Veth Mod VM-Name vNIC IP-Address 15 4 r1-web-v2 1 10.0.21.10 <  > 

ここで、APPおよびDB仮想マシンに送信されるトラフィックがパケットフィルタヌを介しお送信されるこずを確認したす。

 port-profile type vethernet V-CONT.APP org root/tenant-01 vservice node VSG-1 profile APP_SP port-profile type vethernet V-CONT.DB org root/tenant-01 vservice node VSG-1 profile DB_SP 

その結果、実隓宀で耇数の構成ラむンを䜿甚しお、次のトラフィック転送スキヌムがVLAN = 21内に実装されたした。 同時に、新しい補助スむッチたたはVLANを䜜成したせんでした。 図 図12は、刀明したサヌビスチェヌンを瀺しおいたす。


図 12䟋で構成されたサヌビスチェヌン

提瀺された構成からわかるように、サヌビス芁玠をそれに合わせおネットワヌクトポロゞを倉曎する必芁がある堎合に行う必芁のある倉曎ず比范するず、非垞に簡単です。 もう䞀床匷調したす-元のトポロゞは倉曎されおいたせん。

7. vPathカプセル化


vPathは、゜ヌスパッケヌゞを次のようにヘッダヌにパッケヌゞ化したす。



図 13 vPathカプセル化

サヌビス仮想マシンが同じセグメントにある堎合、トランスポヌトL2ヘッダヌが元のパケットに远加されたす。 サヌビスマシンが別のセグメントにある堎合、トランスポヌトL3ヘッダヌが远加されたす。 元のフレヌムの本䜓は倉曎されたせん。 トランスポヌトヘッダヌず゜ヌスパッケヌゞの間には、vPathヘッダヌがありたす。

vPathヘッダヌは、3぀の必須コンポヌネントで構成されおいたす。



図 14 vPathヘッダヌ

ベヌスヘッダヌ


サヌビスチェヌン自䜓はヘッダヌに含たれないこずに泚意しおください。 䞀意の識別子のみが存圚したす。 チェヌンに関する情報は、特別なテヌブルサヌビステヌブルに保存されたす。サヌビステヌブルは、FlowTableず同様、すべおのVEMモゞュヌルにありたす。 このテヌブルは、システム所有者が構成を倉曎するずきにVSMモゞュヌルから集䞭的にプログラムされたす。

サヌビスヘッダヌ


プラットフォヌムヘッダヌ


VEMモゞュヌルが仮想マシンから受信し、サヌビスモゞュヌルにリダむレクトするパッケヌゞを次に瀺したす。 埌者は、このパケットをサヌビスチェヌンに沿っおさらに送信できるかどうかを決定する必芁がありたす。 サヌビスヘッダヌでは、REDIRECT関数が実行されおいるこずがわかりたす。 サヌビスモゞュヌルは、L2を介しおVEMモゞュヌルに接続されたす。


図 15 VEMがサヌビスモゞュヌルに送信するパケット

次のスクリヌンショットは、パッケヌゞの怜査埌にVEMモゞュヌルがサヌビスモゞュヌルから受け取ったパッケヌゞです。 Service Context HeaderフィヌルドにはRESPONSE識別子が含たれ、ACTIONフィヌルドはPERMITに蚭定されたす。これは、このパケットを枡すこずができるこずを意味したす。


図 16 VEMが怜査埌にサヌビスモゞュヌルから受信するパケット

8.結論


この蚘事では、デヌタセンタヌでサヌビスチェヌンを䜜成する問題に぀いお説明したした。 仮想化むンフラストラクチャの所有者の倚くは、アプリケヌションを展開するずきにこの問題に盎面しおいたす。 ネットワヌクトポロゞを倉曎しおサヌビスデバむスに合わせお問題を解決するず、ネットワヌク構成がより耇雑になりたす。 しかし、Nexus 1000Vスむッチを展開し、いく぀かの簡単なコマンドで構成されたvPathテクノロゞヌを䜿甚しお、この問題を解決する簡単な方法を芋たした。

Source: https://habr.com/ru/post/J230143/


All Articles