瞭解 NSX Manager UI 和 ESXi 主機上分散式負載平衡器服務的運作狀態。

由於分散式負載平衡器服務會隨著主機數目增加 ESXi 而線性擴充,單一分散式負載平衡器服務可以支援多個 ESXi 主機。反過來,每個 ESXi 主機可在許多 ESXi 主機之間支援多個虛擬介面 (VIF)。在 NSX Manager 層級的分散式負載平衡器整併狀態會使用所有相關聯 ESXi 主機的整併狀態進行計算。在 ESXi 主機層級的分散式負載平衡器整併狀態,則是使用該 ESXi 主機上所有相關聯 VIF 的個別狀態進行計算。

NSX Manager 的狀態

狀態 說明

開啟

當所有相關傳輸節點傳回的分散式負載平衡器服務狀態為就緒時,狀態為開啟

已降級

當滿足下列所有條件時,狀態為已降級

  • 至少一個傳輸節點傳回的分散式負載平衡器服務狀態為就緒部分就緒
  • 並非所有相關傳輸節點傳回的負載平衡器服務狀態皆為就緒
關閉

當下列其中一個條件為成立時,狀態為關閉

  • 所有相關傳輸節點傳回未就緒
  • 至少一個傳輸節點傳回未就緒,且沒有任何傳輸節點傳回就緒

未知

當所有相關傳輸節點傳回的分散式負載平衡器服務狀態為未知時,狀態為未知

已停用 當分散式負載平衡器服務已啟用,但未指定連線路徑時,狀態為己停用

ESXi 主機的狀態

狀態 說明
就緒
當此 ESXi 主機上所有相關聯 VIF 的狀態為 就緒時, ESXi 主機上分散式負載平衡器服務的整併狀態為 就緒
備註:
  • VIF 上的就緒狀態表示分散式負載平衡器執行個體為最舊且已套用。

未就緒

沒有相關聯的 VIF 為就緒時,ESXi 主機上分散式負載平衡器服務的整併狀態為未就緒

部分就緒

當以下兩個條件皆成立時,ESXi 主機上分散式負載平衡器服務的整併狀態會為部分就緒

  • 至少有一個相關聯的 VIF 為就緒
  • 至少有一個相關聯的 VIF 為未就緒衝突
備註:
  • VIF 上的未就緒狀態表示分散式負載平衡器服務執行個體為最舊且應套用,但未套用。
  • VIF 上的衝突狀態表示分散式負載平衡器服務執行個體不是最舊且未套用。

透過 API 的詳細狀態

執行下列 API,以取得在傳輸節點上執行的分散式負載平衡器執行個體的詳細狀態。

GET https://<manager IP>/policy/api/v1/infra/lb-services/<DLBname>/detailed-status?source=realtime&include_instance_details=true&transport_node_ids=node1_uuid

回應範例:

{
  "results": 
    {
      "service_path": "/infra/lb-services/mydlb",
      "service_status": "UP",
      "virtual_servers": [
        {
          "virtual_server_path": "/infra/lb-virtual-servers/mytcpvip",
          "status": "UP",
          "last_update_timestamp": 1591344963509,
          "resource_type": "LBVirtualServerStatus"
        }
      ],
      "pools": [
        {
          "pool_path": "/infra/lb-pools/mylbpool",
          "status": "UP",
          "last_update_timestamp": 1591344963509,
          "resource_type": "LBPoolStatus"
        }
      ],
      "last_update_timestamp": 1591344963509,
      "instance_detail_per_tn": [
        {
          "transport_node_id": "b09b7b6c-a60d-11ea-835e-d95476fe6438",
          "instance_detail_per_status": [
            {
              "status": "READY",
              "instance_number": 3,
              "instance_details": [
                {
                  "attachment_display_name": "12-vm_Client_VM_Ubuntu_1404-local-1762/12-vm_Client_VM_Ubuntu_1404-local-1762.vm@b09b7b6c-a60d-11ea-835e-d95476fe6438"
                },
                {
                  "attachment_display_name": "10-vm_Client_VM_Ubuntu_1404-local-1762/10-vm_Client_VM_Ubuntu_1404-local-1762.vm@b09b7b6c-a60d-11ea-835e-d95476fe6438"
                },
                {
                  "attachment_display_name": "11-vm_Client_VM_Ubuntu_1404-local-1762/11-vm_Client_VM_Ubuntu_1404-local-1762.vm@b09b7b6c-a60d-11ea-835e-d95476fe6438"
                }
              ]
            },
            {
              "status": "NOT_READY",
              "instance_number": 0
            },
            {
              "status": "CONFLICT",
              "instance_number": 0
            }
          ]
        }
      ],
      "enforcement_point_path": "/infra/sites/default/enforcement-points/default",
      "resource_type": "LBServiceStatus"
    }
  ],
  "intent_path": "/infra/lb-services/mydlb"
}

透過 CLI 的狀態

執行下列 CLI 命令,以取得分散式負載平衡器的狀態。

get load-balancer <UUID_LoadBalancer> status

Load Balancer
UUID : 8721fb3e-dbef-4d9a-8f48-432e893883f1
Display-Name : DLB_Service21
Status : ready
Ready LSP Count : 4
Not Ready LSP Count: 0
Partially Ready LSP Count : 0