システムについて
Cisco Nexus 1000V は、仮想化されたサーバ環境で、レイヤ 2 スイッチング機能を提供します。Nexus 1000V は、ESX Server 内の仮想スイッチを置き換えて、ユーザが Cisco NX-OS コマンドライン インターフェイスを使用して仮想スイッチの設定とモニタを行うことを可能にします。Nexus 1000V により、ESX Server のネットワーク コンポーネントに対する可視性、およびネットワーク上の仮想スイッチへのアクセスも得られます。
Nexus 1000V は、vCenter Server で定義されたデータセンターを管理します。データセンター内の各サーバは、Nexus 1000V ではラインカードとして表され、物理的な Cisco スイッチ内のラインカードであるかのように管理できます。Nexus 1000V の実装は、次の 2 つのコンポーネントで構成されます。
• Virtual Supervisor Module(VSM; 仮想スーパーバイザ モジュール):Nexus 1000V Distributed Virtual Switch(DVS; 分散仮想スイッチ)の制御ソフトウェア。NX-OS に基づいており、Virtual Machine(VM; 仮想マシン)上で実行されます。
• Virtual Ethernet Module(VEM; 仮想イーサネット モジュール):Cisco Nexus 1000V で実際にデータ トラフィックのスイッチングを行う部分。VMware ESX 4.0 ホスト上で実行されます。複数の VEM が、1 つの VSM によって制御されます。スイッチ ドメインを形成するすべての VEM が、VMware vCenter Server で定義されたとおりに同一の仮想データセンター内になくてはなりません。
Nexus 1000V が VMware ESX ソフトウェアでどのように機能するかの詳細については、『 Cisco Nexus 1000V Getting Started Guide 』を参照してください。
vCenter Server の基本的な制限事項
vCenter Server に関する問題のトラブルシューティングを行う際には、次の制限事項に注意してください。
• 分散仮想スイッチ(DVS)の名前は、データセンター全体にわたって一意でなければなりません。
• DVS は、ネットワーク フォルダ内に作成します。
• DBS フォルダまたは下層の DVS を削除しない限り、データセンターを削除することはできません。
• DVS を削除できるのは、config-svs-conn モードで no vmware dvs コマンドを使用して VSM の助けを得た場合だけです。
• no vmware dvs コマンドが正常に実行できるのは、DVS ポート グループを使用している VM がない場合だけです。
• vCenter Server 上のポート グループを削除できるのは、それに関連付けられているインターフェイスがない場合だけです。
• connect コマンドと一緒に同期操作を実行すると、VSM の vCenter Server との同期が保たれます。
• 各 VSM が、一意の拡張キーを使用して vCenter Server と通信し、DVS 上で操作を実行します。
拡張キー
VSM では、vCenter Server と通信する際に拡張キーが使用されます。各 VSM が独自の一意の拡張キーを持ちます(Cisco_Nexus_1000V_32943215 など)。
VSM の拡張キーを調べるには、 show vmware vc extension-key コマンドを使用します。拡張キーは、.xml ファイルでも調べることができます。
vCenter Server 上で登録されている拡張キーは、MOB を通じて見つかります。詳細については、「特定の DVS に結び付けられた拡張キーの確認」を参照してください。
同じ拡張キーを使用して、vCenter Server 上で複数の DVS を作成することはできません。
DVS の回復
DVS の作成に使用された VSM VM が失われた場合、またはその VSM VM を置き換える必要がある場合、次の手順に従って DVS を回復できます。ここでは、次の手順について説明します。
• 「VSM のコピーが保存されている場合の DVS の回復」
• 「VSM のコピーが保存されていない場合の DVS の回復」
VSM のコピーが保存されている場合の DVS の回復
VSM 設定ファイルのバックアップ コピーをあらかじめ保存していた場合は、次の手順に従って DVS を回復できます。
はじめる前に
この手順を開始する前に、次のことを確認または実行する必要があります。
• VSM 設定ファイルのバックアップ コピーをあらかじめ保存していた場合は、この手順に従います。バックアップ コピーを保存していなかった場合は、「VSM のコピーが保存されていない場合の DVS の回復」を参照してください。
• VSM VM スイッチ名が、vCenter Server 上の DVS スイッチ名と同じであることを確認します。スイッチ名が同じであれば、VSM 設定は、vCenter Server 上の正しい DVS と同期されます。
VSM スイッチ名を変更するには、 switchname newname コマンドを使用します。
ステップ 1 MOB から、DVS 拡張キーを見つけます。
詳細については、「特定の DVS に結び付けられた拡張キーの確認」を参照してください。
ステップ 2 VSM 上で、ステップ 1で見つけた DVS 拡張キーを追加します。
この拡張キーにより、VSM は vCenter Server にログインできるようになります。
n1000v(config)#
vmware vc extension-key Cisco_Nexus_1000V_32943215
ステップ 3 MOB から、ステップ 1で見つけた拡張キーを登録解除します。
詳細については、「vCenter Server の拡張キーの登録解除」を参照してください。
ステップ 4 VC クライアントから、VSM の拡張(プラグイン)を登録します。
詳細については、『 Cisco Nexus 1000V Getting Started Guide, Release 4.2(1)SV1(5.1) 』にある次の手順を参照してください。
• 「Creating a Cisco Nexus 1000V Plug-In on the vCenter Server」
ステップ 5 VSM 上で、あらかじめ保存しておいた VSM 設定ファイルのコピーを使用して設定を復元します。
copy path/filename running-config
n1000v#
copy sftp://user1@172.22.36.10/backup/hamilton_cfg running-config
ステップ 6 次のいずれかを実行します。
• vCenter Server 接続が、あらかじめ保存しておいた設定に含まれていない場合は、次のステップに進みます。
• それ以外の場合は、ステップ 8 に進みます。
ステップ 7 VSM 上で、vCenter Server 接続の設定を復元します。
n1000v (config)# svs connection VC
n1000v(config-svs-conn#) protocol vmware-vim
n1000v(config-svs-conn#) remote ip address 192.168.0.1
n1000v(config-svs-conn#) vmware dvs datacenter-name Hamilton-DC
ステップ 8 vCenter Server に接続します。
n1000v(config-svs-conn#) connect
これで、古い DVS を使用することも削除することもできます。
VSM のコピーが保存されていない場合の DVS の回復
VSM 設定ファイルのバックアップ コピーを保存していなかった場合は、次の手順に従って DVS を回復できます。
はじめる前に
この手順を開始する前に、次のことを確認または実行する必要があります。
• VSM が存在するフォルダは次を満たす必要があります。
– 存在するデータセンターのルート レベルにあること。
別のフォルダに組み込むことはできません。
– VSM と同じ名前であること。
フォルダがこの条件を満たしていない場合、vCenter サーバへの接続が「the VSM already exists」というエラーにより失敗します。
• VSM 設定ファイルのバックアップ コピーを保存していなかった場合は、この手順に従います。バックアップ コピーをあらかじめ保存していた場合は、「VSM のコピーが保存されている場合の DVS の回復」を参照してください。
• VSM 設定ファイルのバックアップ コピーを保存していなかった場合は、VC に接続する前に、古いポート プロファイルの再作成を試してみることができます。この手順には、ポート プロファイルを再作成するためのステップが含まれています。VC に接続する前にこれらを再作成しなければ、VC 上に存在するポート グループはすべて削除され、使用中のすべてのポートが検疫ポート グループに移動されます。
• VSM VM スイッチ名が、vCenter Server 上の DVS スイッチ名と同じであることを確認します。スイッチ名が同じであれば、VSM 設定は、vCenter Server 上の正しい DVS と同期されます。
VSM スイッチ名を変更するには、 switchname newname コマンドを使用します。
ステップ 1 MOB から、DVS 拡張キーを見つけます。
詳細については、「特定の DVS に結び付けられた拡張キーの確認」を参照してください。
ステップ 2 VSM 上で、ステップ 1で見つけた DVS 拡張キーを追加します。
この拡張キーにより、VSM は vCenter Server にログインできるようになります。
n1000v(config)#
vmware vc extension-key Cisco_Nexus_1000V_32943215
ステップ 3 MOB から、ステップ 1で見つけた拡張キーを登録解除します。
詳細については、「vCenter Server の拡張キーの登録解除」を参照してください。
ステップ 4 VC クライアントから、VSM の拡張(プラグイン)を登録します。
詳細については、『 Cisco Nexus 1000V Getting Started Guide, Release 4.2(1)SV1(5.1) 』にある次の手順を参照してください。
• 「Creating a Cisco Nexus 1000V Plug-In on the vCenter Server」
ステップ 5 前の設定から古いポート プロファイルを手動で再作成します。
詳細については、『 Cisco Nexus 1000V Getting Started Guide, Release 4.2(1)SV1(5.1) 』にある次の手順を参照してください。
• 「Configuring the System Port Profile for VSM-VEM Communication」
• 「Configuring the Uplink Port Profile for VM Traffic」
• 「Configuring the Data Port Profile for VM Traffic」
(注) ポート プロファイルを手動で再作成しなかった場合、VSM が接続するときに、vCenter Server 上のすべてのポート グループが削除されます。
ステップ 6 VSM 上で、vCenter Server 接続の設定を復元します。
n1000v (config)# svs connection VC
n1000v(config-svs-conn#) protocol vmware-vim
n1000v(config-svs-conn#) remote ip address 192.168.0.1
n1000v(config-svs-conn#) vmware dvs datacenter-name Hamilton-DC
ステップ 7 vCenter Server に接続します。
n1000v(config-svs-conn#) connect
これで、古い DVS を使用することも削除することもできます。
VSM と vCenter Server 接続に関連した問題
|
|
Release 4.0(4)SV1(3a) VSM と VMware vCenter Server 5.0 の間の接続がサポートされていない。 |
対応したバージョンの Cisco Nexus 1000V ソフトウェアにアップグレードしてください。 |
vCenter Server 接続が正常に見えるのに、正常でない。 |
ドメイン ID が正しく設定されていることを確認します。 |
svs connection コマンドが失敗する。 |
svs connection コマンドのすべてのパラメータを設定しているか確認します。 |
|
vCenter Server の IP アドレスを ping できるか確認します。 |
|
proxy.xml ファイルの IP アドレスと長さが両方とも正しいことを確認します。 |
|
vCenter Server を再起動します。 |
ESX の再起動後に接続が失敗する。 |
「ESX の再起動後の接続の失敗」 |
[Add host to DVS] 画面にホストが表示されない。 |
ホストのインストールに使用された VMware Enterprise Plus ライセンスに分散仮想スイッチ機能が含まれていることを確認します。 |
[Add host to DVS] でエラーが返される。 |
VEM ソフトウェアが ESX Server 上にインストールされていることを確認します。 |
show module コマンドの出力のサーバ名の列に IP アドレスが示される。 |
サーバ名は、ホスト名か IP アドレスのうち、vCenter Server 上の DVS へのホストの追加に使用された方で表示されます。 |
例 21-1 に、 show vms internal event-history errors コマンドを示します。このコマンドは、VC エラーの詳細を検証するのに便利です。この出力から、エラーが VSM(クライアント)とサーバのどちらによって発生したかがわかります。
例 21-1 show vms internal event-history error コマンド
n1000v# show vms internal event-history errors
Event:E_DEBUG, length:239, at 758116 usecs after Tue Feb 3 18:21:58 2009
[102] convert_soap_fault_to_err(1179): SOAP 1.1 fault: "":ServerFaultCode [VMWARE-VIM] A DVS n1000v with spec.name as n1000v already exists, cannot create DVS n1000v. A specified parameter was not correct.spec.name
Event:E_DEBUG, length:142, at 824006 usecs after Tue Feb 3 18:18:30 2009
[102] convert_soap_fault_to_err(1179): SOAP 1.1 fault: SOAP-ENV:Client [VMWARE-VIM] Operation could not be completed due to connection failure.
Event:E_DEBUG, length:134, at 468208 usecs after Tue Feb 3 18:15:37 2009
[102] convert_soap_fault_to_err(1179): SOAP 1.1 fault: "":ServerFaultCode [VMWARE-VIM] Extension key was not registered before its use.
ESX の再起動後の接続の失敗
VSM と VEM の間の接続が失われるのを防ぎ、ESX のリブートを経由する物理 NIC にデフォルト以外の MTU 設定を維持するには、システム ポート プロファイルでシステム MTU を設定する必要があります。
Cisco Nexus 1000V に接続されている物理 NIC に対して 1500(デフォルト)以外の MTU を使用している場合、ESX が再起動すると、VMware カーネル NIC MTU との不一致、および VSM と VEM 障害が発生することがあります。たとえば、ジャンボ フレームを使用しているネットワーク内で、手動で 1500 以外の MTU を設定したとします。電源を再投入すると、ESX は再起動し、物理 NIC の MTU はデフォルトの 1500 に戻りますが、VMware カーネル NIC は戻りません。
MTU の不一致による接続の損失を防止するには、「システム MTU の設定」を参照してください。
システム アップリンク ポート プロファイルでシステム MTU を設定していない場合に接続を回復するには、~を参照してください。
システム MTU の設定
既存のシステム アップリンク ポート プロファイルでシステム MTU を設定するには、次の手順を使用します。
はじめる前に
この手順を開始する前に、次のことを確認または実行する必要があります。
• EXEC モードで CLI にログインしていること。
• システム ポート プロファイルがすでに設定されており、アップリンク プロファイル名がわかっていること。
詳細については、『 Cisco Nexus 1000V Port Profile Configuration Guide, Release 4.2(1)SV1(5.1) 』を参照してください。
• ポート プロファイルで system mtu に設定する MTU サイズは、インターフェイスで設定した system jumbomtu のサイズより小さくする必要があります。
インターフェイスでの MTU の設定の詳細については、『 Cisco Nexus 1000V Interface Configuration Guide, Release 4.2(1)SV1(5.1) 』を参照してください。
• システム ポート プロファイルにシステム MTU を設定すると、その MTU がインターフェイスに設定した MTU よりも優先されます。
• 対応する PNIC の ESX MTU の設定を確認するには、 esxcfg-nics -l コマンドを使用します。
手順の概要
1. config t
2. port-profile profilename
3. system mtu mtu value
4. show port-profil e [ brief | expand-interface | usage ] [ name profilename]
5. copy running-config startup-config
手順の詳細
|
|
|
ステップ 1 |
config t 例: n1000v# config t n1000v(config)# |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
port-profile name 例: n1000v(config)# port-profile AccessProf n1000v(config-port-prof)# |
名前付きシステム アップリンク ポート プロファイルのポート プロファイル コンフィギュレーション モードを開始します。 |
ステップ 3 |
system mtu mtu-size 例: n1000v(config-port-prof)# system mtu 4000 n1000v(config-port-prof)# |
MTU サイズを指定します。 • 1500 ~ 9000 の範囲の偶数である必要があります。 • インターフェイスの system jumbomtu のサイズよりも小さくする必要があります。 |
ステップ 4 |
show port-profil e [ brief | expand-interface | usage ] [ name profile-name] 例: n1000v(config-port-prof)# show port-profile name AccessProf |
(任意)確認のためにコンフィギュレーションを表示します。 |
ステップ 5 |
copy running-config startup-config 例: n1000v(config-port-prof)# copy running-config startup-config |
(任意)リブート後に永続的な実行コンフィギュレーションを保存し、スタートアップ コンフィギュレーションにコピーして再起動します。 |
MTU の不一致によって失われた接続の回復
ESX のリブート後に、物理 NIC と VMware カーネル NIC 間の MTU の不一致によって失われた接続を回復するには、ここに示す手順を実行します。
はじめる前に
この手順を開始する前に、次のことを確認または実行する必要があります。
• EXEC モードで CLI にログインしていること。
• 対応する PNIC の ESX MTU の設定を確認するには、 esxcfg-nics -l コマンドを使用します。
(注) vemcmd コマンドは回復手段だけに使用して、システム アップリンクの場合はポート プロファイル設定内、システム以外のアップリンクの場合はインターフェイス設定内の MTU 値を更新します。
手順の概要
1. config t
2. module vem module_number execute vemcmd show port port-LTL-number
3. module vem module_number execute vemcmd set mtu size ltl port-LTL-number
手順の詳細
|
|
|
ステップ 1 |
config t 例: n1000v# config t n1000v(config)# |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
module vem module_number execute vemcmd show port port-LTL-number |
ステップ 3 に必要な LTL 番号を含むポート設定を表示します。 |
|
例:
n1000v(config)# module vem 3 execute vemcmd show port 48
LTL IfIndex Vlan Bndl SG_ID Pinned_SGID Type Admin State CBL Mode Name
17 1a030100 1 T 304 1 32 PHYS UP UP 1 Trunk vmnic1
n1000v(config)# |
ステップ 3 |
module vem module_number execute vemcmd set mtu size ltl port-LTL-number 例: n1000v(config)# module vem 3 execute vemcmd set mtu 9000 ltl 17 n1000v(config)# |
ステップ 2 で取得した LTL 番号を使用して、ポートの MTU サイズを指定します。 |
VSM の作成
|
|
|
VSM VM が boot プロンプトで止まる。 |
-- |
e1000 NIC が 3 つあることを確認します。 |
VSM VM が自分に ping できない。 |
-- |
mgmt0 インターフェイスを設定します。 |
VSM VM が自分には ping できるが、ゲートウェイに ping できない。 |
-- |
NIC の順序が正しいことを確認します。正しい順序は、control、mgmt、inband です。 |
VSM VM がゲートウェイには ping できるが、外部サブネットに ping できない。 |
-- |
vrf コンテキスト管理を設定します。 |
ポート プロファイル
ポート プロファイルを作成する際には、次のコマンドを使用して、vCenter Server 上に対応するポート グループを作成します。
• vmware port-group
• state enabled
システム VLAN の設定を持つプロファイルは、VEM の VSM との通信を許可します。
システム ポート プロファイルが正しいシステム VLANS で定義されていることを確認してください。
必要な基本情報を収集するには、 show port-profile コマンドと show port-profile usage コマンドを使用します。
ポート プロファイルの問題
|
|
|
「Possible failure in communication with vCenter Server.」というエラー メッセージが表示される。 |
VSM が vCenter Server に接続されていない。 |
svs connection vc コマンドを実行して、vCenter Server に接続します。 |
ポート グループ名が一意でない。 |
ポート グループ名は、vCenter Server データセンター内で一意でなければなりません。 |
ポート プロファイルまたはポート グループが vCenter Server に表示されない。 |
-- |
必ず vmware port-group コマンドと state enable コマンドを実行してください。 |
ホストでの問題
|
|
「DVS Operation failed for one or more members.」というエラー メッセージが表示される。 |
vem status -v コマンドを実行して、ホスト上で VEM が実行されていることを確認します。 |
vem unload コマンドを実行して、VEM をアップロードします。 |
vSphere Client で、次の手順を実行して、古くなった DVS を削除します。 1. [Host] タブに移動します。[Networking] -> [Configuration] -> Distributed Virtual Switch 2. [Remove] をクリックします。 |
ホストが vCenter Server 上に表示されるが、VSM には表示されない。 |
vemcmd show trunk コマンドを実行して、制御 VLAN を伝送するアップリンクがあることを確認します。アップリンクに適用されるプロファイルは、制御 VLAN をシステム VLAN として持つシステム プロファイルでなければなりません。 |
アップストリーム スイッチ ポート内の制御 VLAN と VSM VM へのパスを確認します。制御 VLAN を伝送するのは 1 つのアップリンクだけであるか、または制御 VLAN を伝送するすべてのアップリンクとアップストリーム ポートがポート チャネル内にあることを確認します。 |
モジュール フラップが発生する。 |
VSM が過負荷になっている。vCenter Server 上の VSM VM に 1GB のメモリと CPU シェアがあることを確認します。 |
VM トラフィックでの問題
ホスト内 VM トラフィックでの問題をトラブルシューティングする際には、次のガイドラインに従ってください。
• 少なくとも 1 つの VMware 仮想 NIC が正しい DVS ポート グループ上に存在し、接続されていることを確認します。
• VMware 仮想 NIC がダウンしている場合は、OS で設定されている MAC アドレスと VMware によって割り当てられている MAC アドレスの間に矛盾がないか調べます。割り当てられている MAC アドレスは、vmx ファイルで確認できます。
ホスト内 VM トラフィックでの問題をトラブルシューティングする際には、次のガイドラインに従ってください。
• VLAN を VMware 仮想 NIC と共有しているアップリンクは 1 つしかないことを確認します。2 つ以上ある場合は、それらがポート チャネルでなければなりません。
• show intX counters コマンドを使用して、アップストリーム スイッチ上の SVI を ping します。
VEM トラブルシューティング コマンド
次のコマンドを使用して、VEM 情報を表示します。
• vemlog :VEM カーネル ログの表示と制御を行います。
• vemcmd :設定とステータス情報を表示します。
• vem-support all :サポート情報を収集します。
• vem status :ステータス情報を収集します。
• vem version :バージョン情報を収集します。
• vemlog show last number-of-entries :循環バッファを表示します。
例 21-2 vemlog show last コマンド
[root@esx-cos1 ~]# vemlog show last 5
Timestamp Entry CPU Mod Lv Message
Oct 13 13:15:52.615416 1095 1 1 4 Warning vssnet_port_pg_data_ ...
Oct 13 13:15:52.620028 1096 1 1 4 Warning vssnet_port_pg_data_ ...
Oct 13 13:15:52.630377 1097 1 1 4 Warning svs_switch_state ...
Oct 13 13:15:52.633201 1098 1 1 8 Info vssnet new switch ...
Oct 13 13:16:24.990236 1099 1 0 0 Suspending log
• vemlog show info :ログ内のエントリに関する情報を表示します。
例 21-3 vemcmd show info コマンド
[root@esx-cos1 ~]# vemlog show info
Stop After Entry: Not Specified
• vemcmd help :表示できる情報の種類を表示します。
例 21-4 vemcmd help コマンド
[root@esx-cos1 ~]# vemcmd help
show card Show the card's global info
show vlan [vlan] Show the VLAN/BD table
show bd [bd] Show the VLAN/BD table
show l2 <bd-number> Show the L2 table for a given BD/VLAN
show l2 all Show the L2 table
show port [priv|vsm] Show the port table
show pc Show the port channel table
show portmac Show the port table MAC entries
show trunk [priv|vsm] Show the trunk ports in the port table
show stats Show port stats
VEM ログ コマンド
次のコマンドで、vemlog を制御できます。
• vemlog stop :ログを停止します。
• vemlog clear :ログをクリアします。
• vemlog start number-of-entries: ログを開始し、指定したエントリ数に達したところでログを停止します。
• vemlog stop number-of-entries :これから指定したエントリ数に達したところでログを停止します。
• vemlog resume :ログを開始しますが、停止値のクリアは行いません。
エラー メッセージ
vSphere Client では、最近のタスクが表示されるタブでエラー メッセージを確認できます。エラーの詳しい説明は、[Tasks and Events] タブで確認できます。同じメッセージが、VSM にも伝播されます。
表 21-1 に、VSM で表示される可能性のあるエラー メッセージを示します。
表 21-1 VSM でのエラー メッセージ
|
|
ERROR: [VMWARE-VIM] Extension key was not registered before its use |
このエラーは、VSM 拡張キーが登録されていないことを示します。 |
ERROR: [VMWARE-VIM] A DVS n1000v with spec.name as n1000v already exists, cannot create DVS n1000v.A specified parameter was not correct.spec.name. |
このエラーは、初めて connect コマンドを入力したあとに表示されるエラーで、同じ名前の DVS がすでに存在することを示します。 |
ERROR: [VMWARE-VIM] A DVS n1000v with spec.extensionKey as Cisco_Nexus_1000V_2055343757 already exists, cannot create DVS new-n1000v.A specified parameter was not correct.spec.extensionKey |
このエラーは、VSM がスイッチ名を変更したあとに別の DVS を作成しようとしたときに表示されます。 |
ERROR: [VMWARE-VIM] A DVS n1000v with name as n1000v already exists, cannot reconfigure DVS test.A specified parameter was not correct.Spec.name |
このエラーは、同じ名前の DVS がすでに存在することを示します。 |
Warning: Operation succeeded locally but update failed on vCenter server.[VMWARE-VIM] DVPortgroup test port 0 is in use.The resource vim.dvs.DistributedVirtualPort 0 is in use. |
この警告は、VSM がポート プロファイルを削除しようとしたときに、VSM がポート グループに割り当てられている NIC を認識できなかった場合に表示されます。 |