ESXi ホスト上に多くのトランスポート ノードと仮想マシンがある大規模な環境では、ESXi ホスト上で実行される NSX Agent が NSX Manager との通信中にタイムアウトになる可能性があります。

問題

仮想マシンの vNIC が論理スイッチに接続する場合などで、処理に失敗する。 /var/run/log/nsx-opsagent.log に次のようなメッセージが表示される。
level="ERROR" errorCode="MPA41542"] [MP_AddVnicAttachment] RPC call [0e316296-13-14] to NSX management plane timout
2017-05-15T05:32:13Z nsxa: [nsx@6876 comp="nsx-esx" subcomp="NSXA[VifHandlerThread:-2282640]" tid="1000017079" level="ERROR" errorCode="MPA42003"] [DoMpVifAttachRpc] MP_AddVnicAttachment() failed: RPC call to NSX management plane timout

原因

大規模な環境では、一部の処理が通常よりも長い時間がかかったり、デフォルトのタイムアウト値を超えるために失敗することがあります。

解決方法

  1. NSX Agent のタイムアウト値を増やします。
    1. ESXi ホストでは、次のコマンドを使用して NSX opsAgent を停止します。
      /etc/init.d/nsx-opsagent stop
    2. /etc/vmware/nsx-opsagent/nsxa.json ファイルを編集し、vifOperationTimeout の値を 25 からたとえば 55 に変更します。
      "mp" : {
          /* timeout for VIF operation */
          "vifOperationTimeout" : 25,
      注: このタイムアウト値は、手順 2 で設定した hostd タイムアウト値よりも小さい値にする必要があります。
    3. 次のコマンドを使用して NSX opsAgent を起動します。
      /etc/init.d/nsx-opsagent start
  2. hostd のタイムアウト値を増やします。
    1. ESXi ホストでは、次のコマンドを使用して hostd エージェントを停止します。
      /etc/init.d/hostd stop
    2. /etc/vmware/hostd/config.xml ファイルを編集します。<opaqueNetwork> で、<taskTimeout> のエントリのコメントを外し、値を 30 からたとえば 60 に変更します。
      <opaqueNetwork>
          <!-- maximum message size allowed in opaque network manager IPC, in bytes. -->
          <!-- <maxMsgSize> 65536 </maxMsgSize> -->
          <!-- maximum wait time for opaque network response -->
          <!-- <taskTimeout> 30 </taskTimeout> -->
    3. 次のコマンドを使用して hostd エージェントを起動します。
      /etc/init.d/hostd start