在VMware vSphere環境中基于NSX部署第三方底層殺毒時,我們首先需要通過NSX在每台主機上釋出一個Guest Introspection服務虛拟機。
之前遇到過一個問題,釋出Guest Introspection服務虛拟機後,出現報錯。在NSX出現警告,顯示Guest Intrpspection service is not ready
然後在主機中檢視報錯資訊為
<a href="https://s2.51cto.com/wyfs02/M00/06/47/wKiom1m1f3ygQHt7AAFtza74HPg064.png" target="_blank"></a>
之後找到KB,發現有解決方法,但全部嘗試之後發現全都無法解決這個報錯。
确認NSX、主機、虛拟機之間都可以互相通信,端口也未被占用,時間也同步,Guest Introspection重新釋出。主機也已重新開機并重新添加進Cluster但問題就是一直存在。
後來在遷移虛拟機的時候發現有兩台虛拟機遷移至其它主機後,有故障的主機報錯消失,這兩台虛拟機所在的主機出現了同樣的報錯。反複遷移嘗試後,确認故障是由這兩台虛拟機引起的.
檢視其中一台虛拟機的LOG日志:
grep vsepAuditSvmConnectivity vmware*.log
vmware-20.log:2017-08-03T16:37:28.439Z| vcpu-1| I125: Guest: vsep: AUDIT: vsepAuditSvmConnectivity : connected to SVM
vmware-20.log:2017-08-03T18:12:32.099Z| vcpu-1| I125: Guest: vsep: AUDIT: vsepAuditSvmConnectivity : Lost connectivity to SVM
vmware-20.log:2017-08-03T18:17:52.635Z| vcpu-1| I125: Guest: vsep: AUDIT: vsepAuditSvmConnectivity : connected to SVM
vmware-20.log:2017-08-04T08:02:18.809Z| vcpu-0| I125: Guest: vsep: AUDIT: vsepAuditSvmConnectivity : Lost connectivity to SVM
vmware-20.log:2017-08-04T08:04:38.742Z| vcpu-1| I125: Guest: vsep: AUDIT: vsepAuditSvmConnectivity : connected to SVM
vmware-23.log:2017-08-10T03:06:56.174Z| vcpu-1| I125: Guest: vsep: AUDIT: vsepAuditSvmConnectivity : Lost connectivity to SVM
vmware-23.log:2017-08-10T03:07:31.819Z| vcpu-1| I125: Guest: vsep: AUDIT: vsepAuditSvmConnectivity : connected to SVM
vmware-23.log:2017-08-11T02:36:04.208Z| vcpu-1| I125: Guest: vsep: AUDIT: vsepAuditSvmConnectivity : connected to SVM
vmware.log:2017-08-22T06:05:46.358Z| vcpu-1| I125: Guest: vsep: AUDIT: vsepAuditSvmConnectivity : connected to SVM
vmware.log:2017-08-22T06:06:42.145Z| vcpu-1| I125: Guest: vsep: AUDIT: vsepAuditSvmConnectivity : connected to SVM
可以看到的确是有連接配接丢失的情況,之後重裝vmtools,但仍然未能解決問題。
後來再看NSX的日志,終于有了重要的發現。在NSX Mgr日志中可以看到如下報錯,
</biosUUID><vmxPath>/vmfs/volumes/5980d44e-195eae02-c124-0025b5020015/VMWIN2003_SFISPM2_192.168.88.151/VMWIN2003_SFISPM2_192.168.88.151.vmx</vmxPath><eventTime>252034051</eventTime><eve ntType>1000</eventType><eventParameter>7.0.0.8</eventParameter><eventParameter>4325376</eventParameter></ObjectEvent><ObjectEvent><objectType>1</objectType><altitude>100</altitude><eventTime>248054676</eventTime><eventType>2000</e ventType><eventParameter>1.4.2</eventParameter></ObjectEvent></MUXReport></VShieldEndpointSecurity>
440 javax.xml.bind.UnmarshalException
441 - with linked exception:
442 [org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 5413; The reference to entity "SMO_192.168.88.46" must end with the ';' delimiter.]
這台虛拟機的名字是win2003_DCN&SMO_192.168.88.46,搜尋類似問題發現該問題可能由于vmx路徑裡&字元導緻無法處理健康狀況報告。
那麼把這台虛拟機更改成了一個簡單的路徑名後,重新開機NSX,并重新釋出Guest Introspection,問題解決。
和VMware技術支援溝通後,了解到這是一個BUG,但目前還未修複。
本文轉自 川流資訊 51CTO部落格,原文連結:http://blog.51cto.com/tech4fei/1964216