SlideShare a Scribd company logo
Interact × Cloud Samurai Roadshow
2016/06/25
System Center User Group Japan
後藤 諭史(Satoshi GOTO)
 後藤 諭史( Satoshi GOTO )
 某 ISP 所属。
 仮想化製品が主な専門分野です。
 Microsoft MVP - Cloud and Datacenter Management
(Jul.2012 - Jun.2016)
 TwitterとBlogはこちら
◦ Twitter:@wind06106/Blog:Tech Notes(http://www.dob1.info :更新止まってます)
2
 セッションの目的
◦ Windows Server 2016 で Software Defined Network を実現するネットワー
ク仮想化技術『 Hyper-V Network Virtualization ver.2 』と、必須コンポー
ネントである『 Network Controller 』の機能をご理解いただく。
◦ 『 Hyper-V Network Virtualization ver.2 』を実装するための必須コンポー
ネントとその機能をご理解いただく。
 セッションのゴール
◦ Windows Server 2016 で実現される Software Defined Network がどのよう
な機能を提供するかを説明できる。
3
 Hyper-V Network Virtualization Ver.2 ってなに?
 HNV v2 のコンポーネントと実装
 HNV v2 with SCVMM
 まとめ
4
本セッション資料ですが、個人で準備した環境において、個人的に実施した検証/結果を基に記載しています。
あくまで個人の意見/見解であり、所属する会社/組織及びマイクロソフト社とは『まったく/なにも/全
然』関係がございません。
所属する会社/組織/マイクロソフト社の正式な回答/見解ではない事に留意してください。
また、本資料を閲覧した事により問題が生じた場合、または問題が発生しかけた場合、または生じた一切の不
利益について、発表者は一切の責任を負う事はできませんのでご了承ください。
5
本セッションは Windows Server 2016 Technical Preview 5 (#14300) および
System Center 2016 Technical Preview 5 Virtual Machine Manager (#4.0.1381.0) での検証結果を基に記載しています。
今後、仕様および機能は変更される可能性があります。
6
7
8
 略して『 HNV v1 』
 Windows Server 2012 で導入されたネットワーク仮想化技術
 コア技術は Network Virtualization using Generic Routing Encapsulation (NVGRE)
詳細はこちら
9
 ネットワーク仮想化を行う上で重要な『 コントロールプレーン 』の存在が不明瞭
◦ PowerShell による運用の場合は、コントロールプレーン不在のため、全てが手動管理
◦ System Center 2012 R2 Virtual Machine Manager (SCVMM) を利用した場合には、
コントロールプレーンを運用管理ツールである SCVMM が担うことになり、ある意味
SPoF となってしまった
→ SCVMM の冗長化が非常に重要なキーワード
 Windows Server Gateway(WSG) がパフォーマンス上ボトルネックに
◦ Overlay Network(Tenant Network) と 外部 Network との唯一の接続点が WSG
◦ 外部 Network との通信のすべてが WSG を通過するため、ボトルネックになることが
容易に想像
→ データプレーン上 SPoF になりうる可能性
→ これもまた冗長化が非常に重要なキーワード
◦ 3rd Party 製の Gateway も登場したけれど……
→ 日本国内では 1 機種 (F5 BIG-IP) ?
10
NVGRE (プロトコル) が
どうこうとか、
そういう話じゃないの?
11
 略して『 HNV v2 』
 Windows Server 2016 で導入される Cloud-inspired されたネットワーク仮想化技術
→ 但し、Windows Server 2016 においても HNV v1 は使用可能
 Network Controller をはじめ、分散処理を前提としたコアコンポーネント
→ コアコンポーネントは冗長構成を前提
 データプレーンは HNV v1 から引き続き、Edge Overlay Network Architecture を採用
 Overlay Network Protocol として、NVGRE と VXLAN のどちらかを選択可能
→ デフォルトは VXLAN
 コンピュートノード側の処理は、すべて 仮想スイッチに実装された機能拡張(エクステ
ンション)で実施
12
13
14
 Network Controller
◦ HNV v2 におけるコントロールプレーン
◦ サービスファブリックライクなクラスター構成
 Software Load Balancer MUltipleXer (SLBMUX)
◦ Tenant VM に対する Source NAT 、 LB機能を提供
◦ Windows Server のサービスとして実装
 Gateway
◦ Tenant Network と 外部 Network の接続を提供
◦ 提供される接続方式は IPSec / GRE Tunnel / L3 Routing
 Hyper-V Host コンポーネント
◦ Windows Azure VFP Switch Extension
◦ NC Host Agent ( Windows サービス)
◦ SLB Host Agent ( Windows サービス)
15
 Forwarding Extension として実装
 Virtual Filtering Platform は HNV v2 のコンピュートノード側の処理の一切を実施する重要
なコンポーネント
HNV v2で実装されている
各種機能の処理を担当
※ Switch Extension の詳細に関しては、以下の資料を参照のこと
Hyper-V 仮想スイッチの Tips と To Be (仮)
http://www.slideshare.net/wind06106/mvpcomcamp2015
16
Management Plane
• Network Controller
• 仮想ネットワーク機能拡張 (例 VXLAN 対応や QoS など)
• Network Functions Virtualization
(分散ファイアウォール, ロードバランサー、ゲートウェイ)
• スクリプト & PowerShell
• REST API 呼び出しを行えるツール (例 Azure Stack)
• System Center Virtual Machine Manager (SCVMM)
今回のデモ環境
17
イベントログ
18
Hyper-V Host: 10.4.1.5
パケットの取り扱いルールを
ポリシーとして配布
 カプセル化
 ロードバランス
 NAT
 ACLVNet Routing
Policy
ACLs
NAT
Endpoints
VFP
VM1
10.1.1.2NIC
Flow Action
TO:
10.2/16
Encap to GW
TO:
10.1.1.5
Encap to
10.5.1.7
TO: !10/8 NAT out of
VNET
Flow Action
TO:
79.3.1.2
DNAT to
10.1.1.2
TO: !10/8 SNAT to 79.3.1.2
Flow Action
TO:
10.1.1/24
Allow
10.4/16 Block
TO: !10/8 Allow
VNET LB NAT ACLs
Network
Controller
19
20
 LB VIP 、 Source NAT Address 、 IPSec Gateway の 接続先 Address 等々、
Tenant VM が外部 Network と接続するために使用される Address (Public IP) は、
全て Routing Protocol である BGP (Border Gateway Protocol) で配信
 経路配信は SLBMUX / Gateway が実施
→ コアコンポーネントは冗長構成を前提
 Public IP Address は経路情報として配信され、実体 (MAC Address) を持たない
Address(Virtual IP (VIP)) としてとして扱われる
21
SLBMUX
VXLAN
NAT Address(Public IP)
を /32 にてBGP 広報
Public IP 宛のPacket を
NAT設定されている VM に
VXLAN にてForwarding
22
23
 ダイレクトサーバーリターン
◦ SLBMUX から Routing / VXLAN にて カプセル化して送信されてきた接続要求に対し、
VM(Hyper-V) が SLBMUX を経由せずに直接返答する
◦ NAT 処理は、 SLBMUX と連携して VFP Switch Extension が実施
◦ Edge Routerから見ると、非対称通信が行われているようにみえる
 BGP による VIP 配信
 分散冗長構成
◦ フェイルオーバークラスターに拠らない冗長化
◦ 経路制御は BGP で実施
24
SLBMUX
Hyper-V Switch(VFP Switch Extension)
BGP 広報
25
 接続形態は以下の 3 つ
◦ IPSec 接続
◦ GRE Tunnel 接続
◦ Layer 3 接続
 IPSec 接続は SLBMUX と協同動作
◦ IPSec Gateway Address は VIP として SLBMUX にて BGP 経路広報実施
◦ SLBMUX と Gateway 間は VXLAN による Overlay 通信
◦ Gateway からはダイレクトサーバーリターン
 GRE Tunnel は Gateway のみで完結
◦ NVGRE ではなく、純粋な GRE Tunnel
◦ GRE Tunnel なので、経路上の暗号化は行われない
26
SLBMUX
Hyper-V Switch(VFP Switch Extension)
BGP 広報
GW
27
28
Hyper-V Switch(VFP Switch Extension)
BGP 広報
GW
29参考: NVGRE
30
31
32
 主要コンポーネントは、全て Service Template にて展開
◦ Service Template を使用しない展開はサポートされない
 Service Template は github からダウンロード
◦ https://github.com/Microsoft/SDN
 Windows Server 2016 TP5 には、必ず最新の Windows Update を適用すること
 SCVMM 2016 TP5 には、必ず CU2 を適用する
◦ https://support.microsoft.com/en-us/kb/3160164
 Step-by-Step Guide のとおりに展開しても、うまく展開できないときがある
あきらめたら、そこで試合 s(ry
◦ https://blogs.technet.microsoft.com/larryexchange/2016/05/30/step-be-step-for-deploying-a-sdnv2-using-vmm-tp5-part-1/
33
 Network Controller を Service Template で展開する際、 Network Controller で管理されな
い論理スイッチ作成する必要がある(のちに Network Controller 管理に変換)。
その際、 Extension 構成時に必ず『 Microsoft Windows Filtering Platform』のチェック
ボックスをオフにして作成すること!
→ 手順を怠ると、 NC を VMM に登録する際に、必ずエラーになります
34
 全電源断の状態から起動する際、 Network Controller を起動が完全に完了してから、各コ
ンポーネントを起動すること
◦ 手順を怠ると、 動作が不安定になったり……
◦ Network Controller の完全起動(プロセスが落ち着くまで)は、手元の検証環境だと、
約 7 分かかっています
→ NC VM スペック: vCPU 4core(X3430)/4GB MEM/SSD)
◦ もしかすると、完全起動後に Network Controller に接続している Hyper-V ホストが起
動していた場合には、 NCHostAgent を再起動したほうがいいかも
◦ 各コンポーネントを起動していき、逐次ログを確認する
→ NC にて 『 netstat 』コマンドを実行し、 通信状況を確認するのも有効
◦ Network Controller 以外を色々再起動しているうちに動き始めるので、怪しい動きをし
ていたら、 NC VM 以外を再起動してみるのも手
◦ Windows Update がかかったら、 全電源断状態から起動しましょう……
◦ どうやっても動かない時は、その部分だけ作り直す勇気も必要
35
36
 SLBMUX の BGP 経路広報は、MGMT VLAN 接続 NIC から実施される
→ したがって、Edge Router は MGMT VLAN に設置する必要あり
→ 以後は、 Transit VLAN から経路広報するよう変更される
 BGP を有効化した L3 接続は未サポート
→ BGP を有効化しない場合でも、GUI での設定は不可(要 PowerShell )
37
38
 Network Controller は Microsoft Azure Stack のコアコンポーネントにも使われている
コアテクノロジーの一つです
 ネットワーク仮想化にとどまらず、ネットワークをソフトウェアでコントロールし、
『サービス』としてネットワークを提供する、プライベートクラウドをより便利に活用す
ることを可能にするテクノロジーといえます
 Microsoft Azure に Inspired された HNV v2 を理解することにより、Microsoft Azure の
ネットワークがなんとなく見えてくるかもしれません
 とりあえず、検証を始めてみることをお勧めします
39
 Zero to SDN in under five minutes
https://blogs.technet.microsoft.com/windowsserver/2016/02/04/zero-to-sdn-in-under-five-minutes/
 Software Defined Networking (SDN)
https://technet.microsoft.com/en-us/library/mt403307.aspx
 Deploy a Software Defined Network Infrastructure
https://technet.microsoft.com/en-us/library/mt590901.aspx
 Step-be-step for deploying a SDNv2 using VMM TP5
https://blogs.technet.microsoft.com/larryexchange/2016/05/30/step-be-step-for-deploying-a-sdnv2-using-vmm-tp5-part-1/
https://blogs.technet.microsoft.com/larryexchange/2016/05/30/step-be-step-for-deploying-a-sdnv2-using-vmm-tp5-part-2/
https://blogs.technet.microsoft.com/larryexchange/2016/05/31/step-be-step-for-deploying-a-sdnv2-using-vmm-tp5-part-3/
https://blogs.technet.microsoft.com/larryexchange/2016/06/01/step-be-step-for-deploying-a-sdnv2-using-vmm-tp5-part-4/
 github
https://github.com/Microsoft/SDN
40

More Related Content

PPTX
20160625 cloud samuai_final
PDF
Microsoft っぽいハイパーコンバージドって?
PPTX
AKS on Azure Stack HCI/Windows Serverのデプロイ _ Deploying AKS on Azure Stack HCI...
PDF
SCUGJ第12回勉強会:今だから再確認:Windows Azure Pack で作る IaaS 基盤(仮)
PDF
Interact2015:Host Guardian Service ってなに?(仮)
PDF
Windows server2016注目の新機能
PDF
Hyper-V エンタープライズ設計の現実解:2015 年版
PPTX
Interact2017:Windows Container "Overlay" Networking
20160625 cloud samuai_final
Microsoft っぽいハイパーコンバージドって?
AKS on Azure Stack HCI/Windows Serverのデプロイ _ Deploying AKS on Azure Stack HCI...
SCUGJ第12回勉強会:今だから再確認:Windows Azure Pack で作る IaaS 基盤(仮)
Interact2015:Host Guardian Service ってなに?(仮)
Windows server2016注目の新機能
Hyper-V エンタープライズ設計の現実解:2015 年版
Interact2017:Windows Container "Overlay" Networking

What's hot (11)

PDF
MVPComCamp2014:Hyper-V仮想スイッチのTips(仮)
PDF
Hyper-V の本格採用に必要なエンタープライズ設計術
PPTX
20180630 interact2018 rev1
PDF
SCUGJ第14回勉強会:Shielded VMってなに?
PDF
今さら聞けない!Windows server 2012 r2 hyper v入門
PPTX
20180901 community ws2019_share
PDF
[Interact 2018] 別視点からのハイパーコンバージドインフラ ~ ソフトウェアによる華麗な “ものづくり“ の世界
PDF
Windows Server 2016でコンテナを動かしてみた
PDF
Windows Server 2019 の Hyper-Converged Infrastructure (HCI)
PDF
Windows Azure で 2/29 に起こった問題のまとめ
PDF
トラブルから理解するHyper vの基礎
MVPComCamp2014:Hyper-V仮想スイッチのTips(仮)
Hyper-V の本格採用に必要なエンタープライズ設計術
20180630 interact2018 rev1
SCUGJ第14回勉強会:Shielded VMってなに?
今さら聞けない!Windows server 2012 r2 hyper v入門
20180901 community ws2019_share
[Interact 2018] 別視点からのハイパーコンバージドインフラ ~ ソフトウェアによる華麗な “ものづくり“ の世界
Windows Server 2016でコンテナを動かしてみた
Windows Server 2019 の Hyper-Converged Infrastructure (HCI)
Windows Azure で 2/29 に起こった問題のまとめ
トラブルから理解するHyper vの基礎
Ad

Similar to Interact2016:Introduction of Hyper-V Network Virtualization ver.2 (20)

PDF
OpenStackネットワーキング管理者入門 - OpenStack最新情報セミナー 2014年8月
PDF
Hyper-V Network Virtualization:R2 での進化のポイント
PDF
Microsoft tech fielders_cisco_20150126_配布版
PDF
Opencontraildays2014dist 140514051248-phpapp01
PDF
Open contraildays2014
PDF
データセンター進化論:SDNは今オープンに ~攻めるITインフラにの絶対条件とは?~
PPTX
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
PDF
Intranet Development v1.0 (TSG LIVE! 12 LT )
PDF
openstack_neutron-ovs_osc2014tf_20141019
PDF
データセンター進化論:これ以上オープンになれないSDNとは?
PDF
Neutron Icehouse Update (Japanese)
PPTX
[SoftLayer Summit 2015] DockerとOpenVNetを用いたSoftLayer VLAN上への仮想ネットワークオーバーレイ
PDF
MVPComCamp2015:Hyper-V仮想スイッチのTipsとTo Be(仮)
PDF
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
PDF
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
PDF
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
PDF
20130714 July Tech Festa 日本CloudStackユーザー会
PPTX
Hyper-V + Linux {which Microsoft Loves}
PDF
近頃のDockerネットワーク
PDF
Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要
OpenStackネットワーキング管理者入門 - OpenStack最新情報セミナー 2014年8月
Hyper-V Network Virtualization:R2 での進化のポイント
Microsoft tech fielders_cisco_20150126_配布版
Opencontraildays2014dist 140514051248-phpapp01
Open contraildays2014
データセンター進化論:SDNは今オープンに ~攻めるITインフラにの絶対条件とは?~
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
Intranet Development v1.0 (TSG LIVE! 12 LT )
openstack_neutron-ovs_osc2014tf_20141019
データセンター進化論:これ以上オープンになれないSDNとは?
Neutron Icehouse Update (Japanese)
[SoftLayer Summit 2015] DockerとOpenVNetを用いたSoftLayer VLAN上への仮想ネットワークオーバーレイ
MVPComCamp2015:Hyper-V仮想スイッチのTipsとTo Be(仮)
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
20130714 July Tech Festa 日本CloudStackユーザー会
Hyper-V + Linux {which Microsoft Loves}
近頃のDockerネットワーク
Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要
Ad

More from wind06106 (16)

PPTX
SCUGJ第29回勉強会:Introducing Azure Arc enabled VMware vSphere
PPTX
SCUGJ第28回勉強会:Azure Extended Network Ver 2.2.0 Update
PPTX
SCUGJ第27回勉強会:ものすごくざっくりなAzure Filesの話
PPTX
Windows Server Community Meetup #4:時刻の話 - Accurate Network Time -
PPTX
SCUGJ第25回勉強会:Azure Site Recoveryでハマった with VMware 環境
PPTX
SCUGJ第24回勉強会:Azureネットワークアダプターってなに?
PPTX
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
PPTX
Windows Server Community Meetup#3:Windows RDMA Networking for Windows Server ...
PPTX
SCUGJ第20回勉強会:SCVMM2019 What's New
PPTX
Interact 2019:Microsoft SDN v2 よもやま話
PPTX
Windows Server Community Meetup#2:New features of Microsoft SDN v2 in Windows...
PPTX
Windows Server Community Meetup#1 : Windows Server 2019 networking update
PPTX
Interact 2018:PowerShell of Microsoft SDN v2 101
PPTX
SCUGJ第19回勉強会:RASGWとなにかでつないでみた
PPTX
SCUGJ第18回勉強会:よろしい、ならばVMMだ
PDF
Cloud OS Tech Day 2014:Windows Azure Pack プライベートクラウドとセルフポータル(仮)
SCUGJ第29回勉強会:Introducing Azure Arc enabled VMware vSphere
SCUGJ第28回勉強会:Azure Extended Network Ver 2.2.0 Update
SCUGJ第27回勉強会:ものすごくざっくりなAzure Filesの話
Windows Server Community Meetup #4:時刻の話 - Accurate Network Time -
SCUGJ第25回勉強会:Azure Site Recoveryでハマった with VMware 環境
SCUGJ第24回勉強会:Azureネットワークアダプターってなに?
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
Windows Server Community Meetup#3:Windows RDMA Networking for Windows Server ...
SCUGJ第20回勉強会:SCVMM2019 What's New
Interact 2019:Microsoft SDN v2 よもやま話
Windows Server Community Meetup#2:New features of Microsoft SDN v2 in Windows...
Windows Server Community Meetup#1 : Windows Server 2019 networking update
Interact 2018:PowerShell of Microsoft SDN v2 101
SCUGJ第19回勉強会:RASGWとなにかでつないでみた
SCUGJ第18回勉強会:よろしい、ならばVMMだ
Cloud OS Tech Day 2014:Windows Azure Pack プライベートクラウドとセルフポータル(仮)

Interact2016:Introduction of Hyper-V Network Virtualization ver.2

  • 1. Interact × Cloud Samurai Roadshow 2016/06/25 System Center User Group Japan 後藤 諭史(Satoshi GOTO)
  • 2.  後藤 諭史( Satoshi GOTO )  某 ISP 所属。  仮想化製品が主な専門分野です。  Microsoft MVP - Cloud and Datacenter Management (Jul.2012 - Jun.2016)  TwitterとBlogはこちら ◦ Twitter:@wind06106/Blog:Tech Notes(http://www.dob1.info :更新止まってます) 2
  • 3.  セッションの目的 ◦ Windows Server 2016 で Software Defined Network を実現するネットワー ク仮想化技術『 Hyper-V Network Virtualization ver.2 』と、必須コンポー ネントである『 Network Controller 』の機能をご理解いただく。 ◦ 『 Hyper-V Network Virtualization ver.2 』を実装するための必須コンポー ネントとその機能をご理解いただく。  セッションのゴール ◦ Windows Server 2016 で実現される Software Defined Network がどのよう な機能を提供するかを説明できる。 3
  • 4.  Hyper-V Network Virtualization Ver.2 ってなに?  HNV v2 のコンポーネントと実装  HNV v2 with SCVMM  まとめ 4
  • 6. 本セッションは Windows Server 2016 Technical Preview 5 (#14300) および System Center 2016 Technical Preview 5 Virtual Machine Manager (#4.0.1381.0) での検証結果を基に記載しています。 今後、仕様および機能は変更される可能性があります。 6
  • 7. 7
  • 8. 8  略して『 HNV v1 』  Windows Server 2012 で導入されたネットワーク仮想化技術  コア技術は Network Virtualization using Generic Routing Encapsulation (NVGRE) 詳細はこちら
  • 9. 9  ネットワーク仮想化を行う上で重要な『 コントロールプレーン 』の存在が不明瞭 ◦ PowerShell による運用の場合は、コントロールプレーン不在のため、全てが手動管理 ◦ System Center 2012 R2 Virtual Machine Manager (SCVMM) を利用した場合には、 コントロールプレーンを運用管理ツールである SCVMM が担うことになり、ある意味 SPoF となってしまった → SCVMM の冗長化が非常に重要なキーワード  Windows Server Gateway(WSG) がパフォーマンス上ボトルネックに ◦ Overlay Network(Tenant Network) と 外部 Network との唯一の接続点が WSG ◦ 外部 Network との通信のすべてが WSG を通過するため、ボトルネックになることが 容易に想像 → データプレーン上 SPoF になりうる可能性 → これもまた冗長化が非常に重要なキーワード ◦ 3rd Party 製の Gateway も登場したけれど…… → 日本国内では 1 機種 (F5 BIG-IP) ?
  • 11. 11  略して『 HNV v2 』  Windows Server 2016 で導入される Cloud-inspired されたネットワーク仮想化技術 → 但し、Windows Server 2016 においても HNV v1 は使用可能  Network Controller をはじめ、分散処理を前提としたコアコンポーネント → コアコンポーネントは冗長構成を前提  データプレーンは HNV v1 から引き続き、Edge Overlay Network Architecture を採用  Overlay Network Protocol として、NVGRE と VXLAN のどちらかを選択可能 → デフォルトは VXLAN  コンピュートノード側の処理は、すべて 仮想スイッチに実装された機能拡張(エクステ ンション)で実施
  • 12. 12
  • 13. 13
  • 14. 14  Network Controller ◦ HNV v2 におけるコントロールプレーン ◦ サービスファブリックライクなクラスター構成  Software Load Balancer MUltipleXer (SLBMUX) ◦ Tenant VM に対する Source NAT 、 LB機能を提供 ◦ Windows Server のサービスとして実装  Gateway ◦ Tenant Network と 外部 Network の接続を提供 ◦ 提供される接続方式は IPSec / GRE Tunnel / L3 Routing  Hyper-V Host コンポーネント ◦ Windows Azure VFP Switch Extension ◦ NC Host Agent ( Windows サービス) ◦ SLB Host Agent ( Windows サービス)
  • 15. 15  Forwarding Extension として実装  Virtual Filtering Platform は HNV v2 のコンピュートノード側の処理の一切を実施する重要 なコンポーネント HNV v2で実装されている 各種機能の処理を担当 ※ Switch Extension の詳細に関しては、以下の資料を参照のこと Hyper-V 仮想スイッチの Tips と To Be (仮) http://www.slideshare.net/wind06106/mvpcomcamp2015
  • 16. 16 Management Plane • Network Controller • 仮想ネットワーク機能拡張 (例 VXLAN 対応や QoS など) • Network Functions Virtualization (分散ファイアウォール, ロードバランサー、ゲートウェイ) • スクリプト & PowerShell • REST API 呼び出しを行えるツール (例 Azure Stack) • System Center Virtual Machine Manager (SCVMM) 今回のデモ環境
  • 18. 18 Hyper-V Host: 10.4.1.5 パケットの取り扱いルールを ポリシーとして配布  カプセル化  ロードバランス  NAT  ACLVNet Routing Policy ACLs NAT Endpoints VFP VM1 10.1.1.2NIC Flow Action TO: 10.2/16 Encap to GW TO: 10.1.1.5 Encap to 10.5.1.7 TO: !10/8 NAT out of VNET Flow Action TO: 79.3.1.2 DNAT to 10.1.1.2 TO: !10/8 SNAT to 79.3.1.2 Flow Action TO: 10.1.1/24 Allow 10.4/16 Block TO: !10/8 Allow VNET LB NAT ACLs Network Controller
  • 19. 19
  • 20. 20  LB VIP 、 Source NAT Address 、 IPSec Gateway の 接続先 Address 等々、 Tenant VM が外部 Network と接続するために使用される Address (Public IP) は、 全て Routing Protocol である BGP (Border Gateway Protocol) で配信  経路配信は SLBMUX / Gateway が実施 → コアコンポーネントは冗長構成を前提  Public IP Address は経路情報として配信され、実体 (MAC Address) を持たない Address(Virtual IP (VIP)) としてとして扱われる
  • 21. 21 SLBMUX VXLAN NAT Address(Public IP) を /32 にてBGP 広報 Public IP 宛のPacket を NAT設定されている VM に VXLAN にてForwarding
  • 22. 22
  • 23. 23  ダイレクトサーバーリターン ◦ SLBMUX から Routing / VXLAN にて カプセル化して送信されてきた接続要求に対し、 VM(Hyper-V) が SLBMUX を経由せずに直接返答する ◦ NAT 処理は、 SLBMUX と連携して VFP Switch Extension が実施 ◦ Edge Routerから見ると、非対称通信が行われているようにみえる  BGP による VIP 配信  分散冗長構成 ◦ フェイルオーバークラスターに拠らない冗長化 ◦ 経路制御は BGP で実施
  • 24. 24 SLBMUX Hyper-V Switch(VFP Switch Extension) BGP 広報
  • 25. 25  接続形態は以下の 3 つ ◦ IPSec 接続 ◦ GRE Tunnel 接続 ◦ Layer 3 接続  IPSec 接続は SLBMUX と協同動作 ◦ IPSec Gateway Address は VIP として SLBMUX にて BGP 経路広報実施 ◦ SLBMUX と Gateway 間は VXLAN による Overlay 通信 ◦ Gateway からはダイレクトサーバーリターン  GRE Tunnel は Gateway のみで完結 ◦ NVGRE ではなく、純粋な GRE Tunnel ◦ GRE Tunnel なので、経路上の暗号化は行われない
  • 26. 26 SLBMUX Hyper-V Switch(VFP Switch Extension) BGP 広報 GW
  • 27. 27
  • 28. 28 Hyper-V Switch(VFP Switch Extension) BGP 広報 GW
  • 30. 30
  • 31. 31
  • 32. 32  主要コンポーネントは、全て Service Template にて展開 ◦ Service Template を使用しない展開はサポートされない  Service Template は github からダウンロード ◦ https://github.com/Microsoft/SDN  Windows Server 2016 TP5 には、必ず最新の Windows Update を適用すること  SCVMM 2016 TP5 には、必ず CU2 を適用する ◦ https://support.microsoft.com/en-us/kb/3160164  Step-by-Step Guide のとおりに展開しても、うまく展開できないときがある あきらめたら、そこで試合 s(ry ◦ https://blogs.technet.microsoft.com/larryexchange/2016/05/30/step-be-step-for-deploying-a-sdnv2-using-vmm-tp5-part-1/
  • 33. 33
  • 34.  Network Controller を Service Template で展開する際、 Network Controller で管理されな い論理スイッチ作成する必要がある(のちに Network Controller 管理に変換)。 その際、 Extension 構成時に必ず『 Microsoft Windows Filtering Platform』のチェック ボックスをオフにして作成すること! → 手順を怠ると、 NC を VMM に登録する際に、必ずエラーになります 34
  • 35.  全電源断の状態から起動する際、 Network Controller を起動が完全に完了してから、各コ ンポーネントを起動すること ◦ 手順を怠ると、 動作が不安定になったり…… ◦ Network Controller の完全起動(プロセスが落ち着くまで)は、手元の検証環境だと、 約 7 分かかっています → NC VM スペック: vCPU 4core(X3430)/4GB MEM/SSD) ◦ もしかすると、完全起動後に Network Controller に接続している Hyper-V ホストが起 動していた場合には、 NCHostAgent を再起動したほうがいいかも ◦ 各コンポーネントを起動していき、逐次ログを確認する → NC にて 『 netstat 』コマンドを実行し、 通信状況を確認するのも有効 ◦ Network Controller 以外を色々再起動しているうちに動き始めるので、怪しい動きをし ていたら、 NC VM 以外を再起動してみるのも手 ◦ Windows Update がかかったら、 全電源断状態から起動しましょう…… ◦ どうやっても動かない時は、その部分だけ作り直す勇気も必要 35
  • 36. 36  SLBMUX の BGP 経路広報は、MGMT VLAN 接続 NIC から実施される → したがって、Edge Router は MGMT VLAN に設置する必要あり → 以後は、 Transit VLAN から経路広報するよう変更される  BGP を有効化した L3 接続は未サポート → BGP を有効化しない場合でも、GUI での設定は不可(要 PowerShell )
  • 37. 37
  • 38. 38  Network Controller は Microsoft Azure Stack のコアコンポーネントにも使われている コアテクノロジーの一つです  ネットワーク仮想化にとどまらず、ネットワークをソフトウェアでコントロールし、 『サービス』としてネットワークを提供する、プライベートクラウドをより便利に活用す ることを可能にするテクノロジーといえます  Microsoft Azure に Inspired された HNV v2 を理解することにより、Microsoft Azure の ネットワークがなんとなく見えてくるかもしれません  とりあえず、検証を始めてみることをお勧めします
  • 39. 39  Zero to SDN in under five minutes https://blogs.technet.microsoft.com/windowsserver/2016/02/04/zero-to-sdn-in-under-five-minutes/  Software Defined Networking (SDN) https://technet.microsoft.com/en-us/library/mt403307.aspx  Deploy a Software Defined Network Infrastructure https://technet.microsoft.com/en-us/library/mt590901.aspx  Step-be-step for deploying a SDNv2 using VMM TP5 https://blogs.technet.microsoft.com/larryexchange/2016/05/30/step-be-step-for-deploying-a-sdnv2-using-vmm-tp5-part-1/ https://blogs.technet.microsoft.com/larryexchange/2016/05/30/step-be-step-for-deploying-a-sdnv2-using-vmm-tp5-part-2/ https://blogs.technet.microsoft.com/larryexchange/2016/05/31/step-be-step-for-deploying-a-sdnv2-using-vmm-tp5-part-3/ https://blogs.technet.microsoft.com/larryexchange/2016/06/01/step-be-step-for-deploying-a-sdnv2-using-vmm-tp5-part-4/  github https://github.com/Microsoft/SDN
  • 40. 40