API による再設定タスクの失敗後、NIC が切断状態で仮想マシンが起動する
search cancel

API による再設定タスクの失敗後、NIC が切断状態で仮想マシンが起動する

book

Article ID: 443042

calendar_today

Updated On:

Products

VMware NSX

Issue/Introduction

免責事項: これは英文の記事 「Virtual machine NICs start in a disconnected state after a failed API reconfiguration task」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

仮想マシンの起動中に、仮想マシンのNICが切断されます。 ログには、電源投入時に仮想デバイスが接続状態で起動されたというメッセージが表示されます。

vmware.log

In(05) vcpu-0 - VMXNET3 user: failed to connect EthernetX to network ####.
In(05) vcpu-0 - Msg_Post: Warning
In(05) vcpu-0 - [msg.device.startdisconnected] Virtual device 'EthernetX' will start disconnected.

電源投入前に、仮想マシンの NIC に対して API 経由で不適切な "Add" 操作が実行されたため、エラーが発生しました。

vpxd.log

info vpxd[####] [Originator@6876 sub=VmProv opID=####] Applying ConfigSpec (vim.vm.ConfigSpec) {
-->    deviceChange = (vim.vm.device.VirtualDeviceSpec) [
-->       (vim.vm.device.VirtualDeviceSpec) {
-->          operation = "add", 
-->          device = (vim.vm.device.VirtualVmxnet3) {
-->             key = 4002, 
-->             deviceInfo = (vim.Description) {
-->                label = "Network adapter X",

hostd.log

In(166) Hostd[####]: [Originator@6876 sub=Vmsvc.vm:####] Reconfigure failed: N3Vim5Fault17InvalidDeviceSpec9ExceptionE(Fault cause: vim.fault.InvalidDeviceSpec)
 
 
 

Environment

ESXi
vCenter Server
NSX-T

Cause

この問題は、仮想マシン内に既に存在する vNIC に対して、API経由で不適切な "Add" 操作が実行されたことが原因です。

  1. hostd サービスは、デバイスキーが既に存在するため、エラー(vim.fault.InvalidDeviceSpec)を返します。
  2. 操作が失敗し、ロールバックがトリガーされます。
  3. ロールバック動作のため、NIC は "start disconnected" するように構成され、これは次回の電源投入時に行われます。

Resolution

この問題を解決するには、API 呼び出し側の操作を修正してください。
既存の NIC を変更または再構成する場合は、VirtualDeviceSpec の操作タイプが "Add" ではなく "Edit" に設定されていることを確認してください。

Additional Information

Virtual machine NICs start in a disconnected state after a failed API reconfiguration task