針對具有 NSX 後端失敗的每個 Kubernetes 資源物件,會使用錯誤資訊建立一個 NSXError 物件。此外,所有叢集範圍錯誤還有一個錯誤物件。

依預設,會停用此功能。若要啟用此功能,您必須在安裝 NCP 時,在 ncp.ini 中將 enable_nsx_err_crd 設定為 True

備註: 不得建立、更新或刪除 NSXError 物件。

如果您以原則模式啟動 NCP (搭配 NCP YAML 檔案中的選項 policy_nsxapi=true),則不支援 NSXError 資源。

用於顯示 NSXError 物件的命令:

  • kubectl get nsxerrors

    列出所有 NSXError 物件。

  • kubectl get nsxerrors -l error-object-type=<type of resource>

    列出與特定類型 Kubernetes 物件相關的 NSXError 物件,例如,類型為 services 的物件。

  • kubectl get nsxerrors <nsxerror name> -o yaml

    顯示 NSXError 物件的詳細資料。

  • kubectl get svc <service name> -o yaml | grep nsxerror

    找到與特定服務相關聯的 NSXError。

當您顯示 NSXError 物件的詳細資料時,[規格] 區段包含下列重要資訊。例如,
error-object-id: default.svc-1
error-object-name: svc-1
error-object-ns: default
error-object-type: services
message:
- '[2019-01-21 20:25:36]23705: Number of pool members requested exceed LoadBalancerlimit'

在此範例中,命名空間是 default。服務名稱是 svc-1。Kubernetes 資源的類型是 services

在此版本中,NSXError 物件支援下列錯誤。
  • 由於 NSX Edge 限制,自動調整無法配置額外的負載平衡器。
  • 負載平衡器虛擬伺服器數目超過限制 (未啟用自動調整)。
  • 負載平衡器伺服器集區數目超過限制。
  • 負載平衡器伺服器集區成員數目超過負載平衡器限制或 NSX Edge 限制。
  • 處理負載平衡器類型的服務時,浮動 IP 位址已用盡。