Go to main content
Oracle® Solaris 11.3 での仮想ネットワークとネットワークリソースの管理

印刷ビューの終了

更新: 2016 年 11 月
 
 

ネットワーク仮想化の概要

仮想化により、複数の仮想マシンを単一の物理マシン上で同時に実行できます。仮想化テクノロジによって、複数の仮想マシン間で分離が行われ、オペレーティングシステムの複数のインスタンスを単一のマシン上で実行できます。ネットワーク仮想化は、サーバー仮想化を次のレベルに引き上げます。これは、サーバー、ルーター、スイッチ、およびファイアウォールすべてが単一のプラットフォームで実行されている場合のネットワークテクノロジ全体を仮想化する機能で、ネットワークハードウェアに追加の投資を行う必要はありません。ネットワーク仮想化は、プロトタイプ、開発、テスト、サービスの配備に至るさまざまな目的に使用できます。

ネットワーク仮想化は、OS でプロビジョニングされたメカニズムであり、ベースとなる物理ネットワークから切り離された仮想ネットワークをプログラム的に作成して構成できるようにします。そのため、仮想ネットワークは、物理ネットワークをパケット転送のバックボーンとしてのみ使用する擬似ネットワークです。仮想ネットワークは通常、ネットワークインタフェースが物理ネットワークインタフェースカード (NIC) または etherstub 上に構成されている仮想マシンまたはゾーンを使用する 1 つのシステムで構成されます。これらのネットワークインタフェースは、仮想ネットワークインタフェースカードまたは仮想 NIC (VNIC) と呼ばれます。VNIC を持つ仮想マシンまたはゾーンは、同じローカルネットワーク上に存在するかのように互いに通信できるため、実質的には単一ホスト上の仮想ネットワークになります。

ネットワーク仮想化の利点

ネットワーク仮想化には次の利点があります。

  • さまざまなアプリケーションを 2、3 のサーバーに統合することによって、使用可能なリソースをより適切に利用できます。分離、セキュリティー、および柔軟性を大きく損なうことなく、多数のシステムを、複数のゾーンまたは仮想マシンを含む 1 つのシステムに置き換えることができます。デモについては、データセンターとネットワーク仮想化の統合 (http://download.oracle.com/otndocs/tech/OTN_Demos/data-center-consolidation.html)について参照してください。

  • MAC レイヤーでハードウェア NIC を仮想化できるため、経済的に優れています。

  • ネットワークをプロビジョニングするための時間が短縮されるため、アプリケーションを配備するための時間が短縮されます。

  • 完全に自動化されたクラウド環境を構築するためのベースを提供します。

  • VLAN、VXLAN、または PVLAN ベースの仮想ネットワークを作成できるため、ネットワークが分離されます。

  • 現在のネットワークテクノロジにおける制限 (VLAN でのスケーラビリティーの問題など) が解決されます。

  • SR-IOV VF VNIC の使用により、システムのオーバーヘッドが削減されます。

  • NIC リングや CPU などのハードウェアリソースを VNIC に割り当てることで、システムパフォーマンスが向上します。

  • VNIC にサービスレベル契約を適用することで、ネットワークリソースの管理が向上します。

  • 仮想ポートとフローのレベルでネットワークに観測性が提供されます

Oracle Solaris でサポートされるネットワーク仮想化テクノロジ

Oracle Solaris は次のネットワーク仮想化テクノロジをサポートしています。

  • エッジ仮想ブリッジング (EVB) – ホストがシステム上の仮想リンクに関連する情報を外部スイッチと交換できます。EVB は、ポートに関する情報を交換するためにデータセンターブリッジング (DCB) を使用するのと同様に、ポートの背後にあるすべての仮想リンクに関する情報を交換するために使用されます。EVB の詳細は、エッジ仮想ブリッジングを使用したサーバーネットワークエッジの仮想化の管理を参照してください。

  • 仮想拡張ローカルエリアネットワーク (VXLAN) – VXLAN は仮想ローカルエリアネットワーク (VLAN) の 4K の制限に対応し、スイッチなどの物理インフラストラクチャーでの仮想化の必要性も減らします。これは、複数の L2 ネットワークにまたがるデータセンターで物理サーバーリソースを効率的に使用し、仮想ネットワークのスケーラビリティーとネットワーク分離を提供します。詳細は、仮想拡張ローカルエリアネットワークを使用することによる仮想ネットワークの構成を参照してください。

  • シングルルート I/O 仮想化 (SR-IOV) - SR-IOV をサポートするネットワークデバイスに、仮想機能 (VF) ベースの VNIC を作成できます。詳細は、VNIC でのシングルルート I/O 仮想化の使用を参照してください。

  • プライベート仮想ローカルエリアネットワーク (PVLAN) VNIC – VLAN をサブ VLAN に分割してネットワークトラフィックを分離するために使用される PVLAN VNIC を構成できるため、数に限りがある使用可能な VLAN の使用状況が改善します。

Oracle Solaris は、仮想マシン内で実行される Virtual Network Services ソフトウェアをサポートしています。Oracle SDN の詳細は、Oracle SDN のドキュメント (http://docs.oracle.com/cd/E48586_01/)を参照してください。

ネットワーク仮想化コンポーネント

ネットワーク仮想化のコンポーネントは次のとおりです。

  • 仮想ネットワークインタフェースカード (VNIC)

  • 仮想スイッチ

  • etherstub

  • エラスティック仮想スイッチ

仮想ネットワークインタフェースカード (VNIC)

VNIC は、構成されている場合は物理 NIC であるかのように動作する L2 エンティティー、つまり仮想ネットワークデバイスです。dladm コマンドを使用して VNIC を構成するか、システムで作成された VNIC と呼ばれる VNIC をシステムによって作成できます。ベースとなるデータリンク上に VNIC を構成して、複数のゾーンまたは VM 間で共有します。さらに、システムのリソースは、VNIC を物理 NIC であるかのように扱います。すべての物理 Ethernet インタフェースが VNIC の作成をサポートします。VNIC を構成する方法についての詳細は、VNIC と etherstub を構成する方法を参照してください。

VNIC には、自動的に生成された MAC アドレスがあります。使用されているネットワークインタフェースによっては、自動的に生成される MAC アドレス以外の MAC アドレスを VNIC に割り当てることができます。詳細は、VNIC の MAC アドレスの変更を参照してください。

システムで作成された VNIC

dladm create-vnic コマンドを使用して作成できる VNIC に加え、システムでも、Oracle VM Server for SPARC の vnet 用の仮想ネットワーク I/O で役立つ、システムで作成された VNIC と呼ばれる VNIC を作成できます。システムで作成される VNIC は命名規則 <entity>-<name> に従います (entity は VNIC を作成したシステムエンティティーを指し、name はシステムエンティティー内での VNIC 名を指します)。ユーザーが作成する VNIC 名にハイフン (-) を含めることはできません。ハイフン (-) が含まれるのはシステムで作成された VNIC だけのため、システムで作成された VNIC とユーザーが作成した VNIC を区別するために役立ちます。システムで作成された VNIC の変更、名前変更、plumb、または削除を行うことはできません。詳細は、『Oracle VM Server for SPARC 3.1 管理ガイド』を参照してください。

dlstat および snoop コマンドを使用すると、システムで作成された VNIC 上のネットワークトラフィックをモニターできます。flowadm コマンドを使用して、システムで作成された VNIC 上にフローを作成することもできます。フローは、ネットワークリソースの管理だけでなく、ネットワークトラフィックの統計のモニターにも役立ちます。flowstat コマンドを使用すると、フロー上のネットワークトラフィックの統計をモニターできます。フローについての詳細は、フローの構成を参照してください。

仮想スイッチ

仮想スイッチは、同じデータリンクを共有する仮想マシン (VM) 間での通信を容易にするエンティティーです。仮想スイッチは物理マシン内の仮想マシン間のトラフィック (VM 間トラフィック) をループし、このトラフィックをネットワーク上では送信しません。仮想スイッチは、ベースとなるデータリンクの最上位に VNIC を作成するたびに、暗黙的に作成されます。VM が構成されている VNIC は、VM 間通信のためには同じ VLAN または VXLAN 上に存在する必要があります。仮想スイッチは EVS で管理できます。EVS の詳細は、エラスティック仮想スイッチについてを参照してください。

Ethernet 設計に従って、スイッチポートが、そのポートに接続されたホストから送信パケットを受信した場合、そのパケットは同じポート上の宛先に到達できません。仮想ネットワークは同じ NIC を共有するため、この Ethernet 設計は、仮想ネットワークが構成されたシステムでは制限となります。この Ethernet 設計の制限は仮想スイッチを使用することによって解決され、それにより VM が互いに通信できるようになります。

場合によっては、システムの VM 間の通信にスイッチの使用が必要になる場合があります。たとえば、スイッチに構成されているアクセス制御リスト (ACL) に従って VM 間の通信を行う必要がある場合などです。デフォルトでは、スイッチは、パケットを受信した同じポートでパケットを送信することはできません。したがって、スイッチを使用する VM 間の通信には、スイッチでの反射型リレーが有効になります。反射型リレーにより、スイッチは、パケットを受信した同じポートでパケットを転送できます。詳細は、Oracle Solaris 11.3 での仮想ネットワークとネットワークリソースの管理 の 反射型リレーを参照してください。

etherstub

etherstub は、Oracle Solaris ネットワークスタックのデータリンク層 (L2) に構成された擬似 Ethernet NIC です。VNIC は物理 NIC 上にではなく、etherstub 上に作成できます。etherstub を使用すると、システム上のほかの仮想ネットワークと外部ネットワークの両方から切り離されたプライベート仮想ネットワークを作成できます。たとえば、etherstub を使用すると、外部接続またはリソースなしのネットワーク環境を作成できます。

エラスティック仮想スイッチ

Oracle Solaris ネットワーク仮想化機能は、仮想スイッチを直接管理できるように拡張されています。Oracle Solaris エラスティック仮想スイッチ (EVS) 機能は、複数のシステム上に存在する仮想マシンを相互接続するデータセンターやマルチテナントクラウド環境に、仮想ネットワークインフラストラクチャーを提供します。EVS を使用すると、複数のホスト上の仮想スイッチを集中管理でき、したがってエラスティック仮想スイッチに接続された VNIC を集中管理できます。同じエラスティック仮想スイッチに接続された仮想マシンは、互いに通信できます。詳細は、エラスティック仮想スイッチについてを参照してください。エラスティック仮想スイッチを管理する方法の詳細は、エラスティック仮想スイッチの管理を参照してください。

Oracle Solaris におけるネットワーク仮想化の VM のタイプ

Oracle Solaris OS の単一のインスタンス内にあるリソースに VNIC を割り当てることができますが、Oracle Solaris ゾーン、Oracle Solaris カーネルゾーン、Oracle VM Server for SPARC などの仮想化環境で使用することで、その使用をネットワーク仮想化で拡張できます。

Oracle Solaris ゾーン

ゾーンは、Oracle Solaris オペレーティングシステムの 1 つのインスタンス内で作成される、仮想化されたオペレーティングシステム環境です。etherstub と VNIC は、Oracle Solaris の仮想化機能の一部にすぎません。VNIC または etherstub を Oracle Solaris で使用するように割り当てることによって、1 つのシステム内にネットワークを作成できます。ゾーンの詳細は、Oracle Solaris ゾーンの紹介を参照してください。

Oracle Solaris カーネルゾーン

Oracle Solaris カーネルゾーン (別名 solaris-kz ブランドゾーン) は、ブランドゾーンフレームワークを使用して、大域ゾーンからの個別のカーネルとオペレーティングシステム (OS) のインストールでゾーンを実行します。個別のカーネルおよび OS インストールにより、オペレーティングシステムのインスタンスとアプリケーションの独立性が高まり、セキュリティーが強化されます。

Oracle VM Server for SPARC

Oracle VM Server for SPARC は、SPARC T シリーズと SPARC M5 プラットフォームおよび Fujitsu M10 システム用に効率性の高いエンタープライズクラスの仮想化機能を提供します。同じコンピュータ上で複数のオペレーティングシステムを可能にするために、オペレーティングシステムのインスタンスを実行できる「論理ドメイン」という仮想サーバーを作成できます。詳細は、『Oracle VM Server for SPARC 3.1 管理ガイド』を参照してください。

仮想ネットワークの仕組み

次の図は、システム内の仮想ネットワークとそのコンポーネントの仕組みを示しています。

図 1  仮想ネットワークの仕組み

image:この図は、1 つのインタフェース用の VNIC 構成を示しています。

この図は、1 枚の NIC を備えた 1 つのシステムを示しています。この NIC には 3 つの VNIC が構成されています。各 VNIC が 1 つのゾーンに割り当てられます。Zone 1Zone 2、および Zone 3 は、システム内で使用するために構成された 3 つのゾーンです。これらのゾーンは、それらの各 VNIC を使用して、ほかのゾーンや外部ネットワークと通信します。これらの 3 つの VNIC が、仮想スイッチを通してベースとなる物理 NIC に接続します。両方ともシステムに接続できる場合、仮想スイッチの機能は物理スイッチの機能と同じです。

仮想ネットワークが構成されている場合、ゾーンは、仮想ネットワークが存在しないシステムと同じ方法で外部のホストにトラフィックを送信します。トラフィックは、そのゾーンから VNIC を通して仮想スイッチに、さらに物理インタフェースへと転送され、その物理インタフェースによってデータがネットワークに送信されます。

また、これらのゾーンは、ゾーンに構成されているすべての VNIC が同じ VLAN の一部である場合は、システム内で互いにトラフィックを交換することもできます。たとえば、パケットは、Zone 1 からその専用の VNIC 1 を通して転送されます。そのトラフィックは次に、仮想スイッチを通して VNIC 3 に転送されます。次に、VNIC 3 がそのトラフィックを Zone 3 に通します。このトラフィックがシステムを離れることはないため、Ethernet の制限には違反しません。

あるいは、etherstub に基づいて仮想ネットワークを作成できます。etherstub は完全にソフトウェアベースであるため、仮想ネットワークの基礎としてのネットワークインタフェースを必要としません。

次の図は、etherstub に基づいたプライベート仮想ネットワークを示しています。

図 2  プライベート仮想ネットワーク

image:この図は、etherstub に基づいたプライベート仮想ネットワークを示しています。

この図は、VNIC1VNIC2、および VNIC3 が構成されている etherstub0 を示しています。各 VNIC が 1 つのゾーンに割り当てられます。etherstub に基づくプライベート仮想ネットワークには、外部ネットワークからはアクセスできません。詳細は、ユースケース: プライベート仮想ネットワークの構成を参照してください。

また、Oracle ではネットワーク仮想化の一部の側面 (たとえば、仮想データセンターの内部に仮想ネットワークを作成する機能) を管理するための Oracle Enterprise Manager Ops Center も提供しています。Oracle Enterprise Manager Ops Center の詳細は、http://www.oracle.com/pls/topic/lookup?ctx=oc122&id=OPCCM を参照してください。

Oracle Virtual Networking Drivers for Oracle Solaris のリリースでは、Oracle Virtual Networking が x86 および SPARC サーバー上の Oracle Solaris をサポートするようになりました。Oracle Virtual Networking の詳細は、Oracle Virtual Networking のドキュメント (http://docs.oracle.com/cd/E38500_01/)を参照してください。