ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris 11.1 ネットワークパフォーマンスの管理 Oracle Solaris 11.1 Information Library (日本語) |
トランキングとも呼ばれるリンクアグリゲーションは、ネットワークトラフィックのスループットを向上させるために、システム上で単一の論理的なユニットとして構成された複数のインタフェースから成ります。次の図は、システム上に構成されたリンクアグリゲーションの例を示しています。
図 2-1 リンクアグリゲーション構成
図 2-1 は、ベースとなる 3 つのデータリンク net0 から net2 で構成されたアグリゲーション aggr1 を示しています。これらのデータリンクは、このアグリゲーションを介してシステムを通過するトラフィック専用で利用されます。ベースとなるリンクは外部アプリケーションには隠されています。代わりに、データリンク aggr1 がアクセス可能になります。
帯域幅の増加 – 複数のリンクの伝送容量が 1 つの論理的なリンクに統合されます。
自動フェイルオーバーおよびフェイルバック – リンクベースの障害検出をサポートすることにより、障害が発生したリンクのトラフィックがアグリゲーション内のほかの正常なリンクにフェイルオーバーされます。
管理の向上 – ベースとなるすべてのリンクが単一のユニットとして管理されます。
ネットワークアドレスプールのアドレスの節約 – アグリゲーション全体に 1 つの IP アドレスを割り当てることができます。
リンク保護 – アグリゲーションを通過するパケットのリンク保護を有効にするデータリンクプロパティーを構成できます。
リソース管理 – ネットワークリソースに関するデータリンクプロパティーおよびフロー定義を使用して、アプリケーションでのネットワークリソースの使用を制御できます。リソース管理の詳細については、『Oracle Solaris 11.1 での仮想ネットワークの使用』の第 3 章「Oracle Solaris でのネットワークリソースの管理」を参照してください。
注 - リンクアグリゲーションは IP マルチパス (IPMP) と同様の機能を実行して、ネットワークのパフォーマンスと可用性を向上させます。これら 2 つのテクノロジの比較については、付録 B リンクアグリゲーションと IPMP: 機能比較を参照してください。
Oracle Solaris は 2 種類のリンクアグリゲーションをサポートしています。
トランクアグリゲーション
データリンクマルチパス (DLMP) アグリゲーション
これら 2 種類のリンクアグリゲーションの相違点の概要については、付録 A リンクアグリゲーションの種類: 機能比較を参照してください。
次のセクションでは、各タイプのリンクアグリゲーションについて詳細に説明します。
トランクアグリゲーションは、トラフィック負荷の異なるさまざまなネットワークに役立ちます。たとえば、ネットワーク内のあるシステムが、分散された多くのトラフィックを処理するアプリケーションを実行している場合、トランクアグリゲーションをそのアプリケーションのトラフィック専用で使用すると、より大きい帯域幅を利用できます。IP アドレス空間が制限されていながら大容量の帯域幅が必要なサイトの場合、大規模なインタフェースのアグリゲーションでも 1 つの IP アドレスのみで済みます。内部インタフェースの存在を隠す必要があるサイトの場合、アグリゲーションの IP アドレスによって、内部インタフェースを外部アプリケーションから隠します。
Oracle Solaris では、アグリゲーションを作成すると、トランクアグリゲーションがデフォルトで構成されます。通常、リンクアグリゲーションが構成されているシステムは、ほかのシステムへの接続に外部スイッチも使用します。次の図を参照してください。
図 2-2 スイッチを使用するリンクアグリゲーション
図 2-2 は、それぞれにアグリゲーションが構成された 2 つのシステムを含むローカルネットワークを示しています。2 つのシステムはスイッチによって接続されており、このスイッチには Link Aggregation Control Protocol (LACP) が構成されています。
システム A は、net1 と net2 の 2 つのインタフェースで構成されるアグリゲーションを使用しています。これらのインタフェースは、集約されたポートを介してスイッチに接続されています。システム B は、net1 から net4 の 4 つのインタフェースのアグリゲーションを使用しています。これらのインタフェースもスイッチの集約されたポートに接続されています。
このリンクアグリゲーショントポロジでは、スイッチがアグリゲーションテクノロジをサポートしている必要があります。したがって、そのスイッチポートは、システムからのトラフィックを管理するように構成されている必要があります。
トランクアグリゲーションでは、バックツーバック構成もサポートされます。次の図に示すように、スイッチを使用する代わりに、2 つのシステムが相互に直接接続され、並列アグリゲーションを実行します。
図 2-3 バックツーバックリンクアグリゲーション構成
図 2-3 では、システム A のリンクアグリゲーション aggr0 とシステム B のリンクアグリゲーション aggr0 が、それぞれのベースとなるデータリンク間の対応するリンクを使用して直接接続されています。この方法では、システム A とシステム B は、冗長性と高可用性を提供し、さらに両方のシステム間での高速通信を提供します。各システムではさらに、ローカルネットワーク内のトラフィックフロー用の net0 も構成されています。
バックツーバックリンクアグリゲーションのもっとも一般的な用途は、ミラー化されたデータベースサーバーの構成です。両方のサーバーを同時に更新する必要があるため、大きな帯域幅、高速のトラフィックフロー、および信頼性が必要になります。バックツーバックリンクアグリゲーションのもっとも一般的な使用場所としてデータセンターがあります。
注 - バックツーバック構成は DLMP アグリゲーションではサポートされていません。
次のセクションでは、トランクアグリゲーションに固有のほかの機能について説明します。DLMP アグリゲーションを作成する場合は、これらの機能を構成しないでください。
トランクアグリゲーションを使用する予定の場合は、送信トラフィック用のポリシーを定義することを検討してください。このポリシーでは、使用可能なアグリゲーションのリンク全体にパケットを分散する方法を指定し、負荷分散を確立することができます。次に、使用可能な層指定子とアグリゲーションポリシーに対するそれらの意味について説明します。
L2 – 各パケットの MAC (L2) ヘッダーをハッシュすることで送信リンクを決定します
L3 – 各パケットの IP (L3) ヘッダーをハッシュすることで送信リンクを決定します
L4 – 各パケットの TCP、UDP、またはほかの ULP (L4) ヘッダーをハッシュすることで送信リンクを決定します
これらのポリシーを任意に組み合わせて使用することもできます。デフォルトのポリシーは L4 です。
トランクアグリゲーションの設定にスイッチが含まれている場合は、スイッチが LACP をサポートするかどうかに注意する必要があります。スイッチが LACP をサポートしている場合は、スイッチとアグリゲーションの LACP を構成する必要があります。アグリゲーションの LACP は、3 つの値のいずれかに設定できます。
off – アグリゲーションのデフォルトのモード。「LACPDU」と呼ばれる LACP パケットは生成されません。
active – システムは、ユーザーが指定可能な間隔で LACPDU を定期的に生成します。
passive – システムは、スイッチから LACPDU を受け取った場合のみ LACPDU を生成します。アグリゲーションとスイッチの両方が受動モードで構成されている場合、それらの間で LACPDU を交換することはできません。
通常、トランクアグリゲーションはネットワーク設定の要件を十分に満たします。ただし、トランクアグリゲーションは 1 つのスイッチでしか機能しません。そのため、スイッチがシステムのアグリゲーションの単一障害点になります。複数のスイッチにまたがるアグリゲーションを可能にする過去のソリューションには、それ独自の欠点があります。
スイッチに実装されているソリューションはベンダー固有のもので、標準化されていません。ベンダーの異なる複数のスイッチを使用する場合、あるベンダーのソリューションがほかのベンダーの製品に適用されない可能性があります。
リンクアグリゲーションを IP マルチパス (IPMP) と組み合わせることは、特に大域ゾーンと非大域ゾーンが関与するネットワーク仮想化の状況では、非常に複雑になります。たとえば、多数のシステム、ゾーン、NIC、仮想 NIC (VNIC)、および IPMP グループを含むシナリオなど、構成を拡大するほど複雑さが増します。このソリューションでは、すべてのシステムの大域ゾーンと各非大域ゾーンに対して構成を実行することも必要になります。
リンクアグリゲーションと IPMP の組み合わせを実装しても、その構成では、リンク層だけで動作することから得られるほかの利点、たとえば、リンク保護、ユーザー定義のフロー、帯域幅などのリンクプロパティーをカスタマイズする機能などを享受できません。
DLMP アグリゲーションはこのような欠点を解消します。次の図は、DLMP アグリゲーションの動作を示しています。
図 2-4 DLMP アグリゲーション
図 2-4 は、リンクアグリゲーション aggr0 を含むシステム A を示しています。このアグリゲーションは、ベースとなる 4 つのリンク net0 から net3 で構成されています。プライマリインタフェースである aggr0 に加え、アグリゲーション上には VNIC vnic1 から vnic4 も構成されています。アグリゲーションはスイッチ A およびスイッチ B に接続されており、これらのスイッチはより広いネットワーク内のほかの宛先システムに接続されています。
トランクアグリゲーションでは、アグリゲーション上に構成されている各データリンクが各ポートに関連付けられます。DLMP アグリゲーションでは、アグリゲーションに構成されている任意のデータリンクと、そのアグリゲーション上のプライマリインタフェースおよび VNIC が、1 つのポートに関連付けられます。
VNIC の数がベースとなるリンクの数を超えている場合、1 つのポートに複数のデータリンクが関連付けられます。たとえば、図 2-4 では、vnic4 と vnic3 が 1 つのポートを共有しています。
同様に、アグリゲーションのポートに障害が発生すると、そのポートを使用しているすべてのデータリンクがほかのポートに分散されます。たとえば、net0 に障害が発生した場合、aggr0 はポートをほかのデータリンクの 1 つと共有します。アグリゲーションポート間の分散は、ユーザーに対しては透過的に、また、アグリゲーションに接続されている外部スイッチとは無関係に行われます。
スイッチに障害が発生した場合、アグリゲーションはほかのスイッチを使用して、そのデータリンクへの接続を引き続き提供します。したがって、DLMP アグリゲーションでは複数のスイッチを使用できます。
まとめると、DLMP アグリゲーションは次の機能をサポートします。
アグリゲーションは複数のスイッチにまたがることができます。
スイッチの構成は不要で、スイッチに対して構成を実行してもいけません。
そのタイプでサポートされているオプションだけを使用するかぎり、dladm modify-aggr コマンドを使用してトランクアグリゲーションと DLMP アグリゲーションを切り替えることができます。
注 - トランクアグリゲーションから DLMP アグリゲーションに切り替える場合は、トランクアグリゲーション用に以前作成したスイッチ構成を削除する必要があります。
リンクアグリゲーションの構成には次のような要件があります。
アグリゲーションに構成するデータリンク上には、IP インタフェースが構成されていてはいけません。
アグリゲーション内のすべてのデータリンクは、同じ速度かつ全二重モードで実行される必要があります。
DLMP アグリゲーションの場合、アグリゲーションをほかのシステムのポートに接続するために、少なくとも 1 つのスイッチが必要です。DLMP アグリゲーションを構成する場合、バックツーバック設定は使用できません。
SPARC ベースのシステムでは、各データリンクに一意の MAC アドレスが必要です。手順については、『Oracle Solaris 11.1 での固定ネットワーク構成を使用したシステムの接続』の「各インタフェースの MAC アドレスが一意であることを確認する方法」を参照してください。
ポートをアグリゲーションに接続したり、アグリゲーションから切り離したりするには、IEEE 802.3ad Link Aggregation Standard で定義されているリンク状態通知がデバイスでサポートされている必要があります。リンク状態通知をサポートしていないデバイスは、dladm create-aggr コマンドの -f オプションを使用してのみ集約できます。このようなデバイスの場合、リンク状態は常に UP として報告されます。-f オプションの使用については、「リンクアグリゲーションを作成する方法」を参照してください。