

 **協助改進此頁面** 

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

若要為本使用者指南貢獻內容，請點選每個頁面右側面板中的**在 GitHub 上編輯此頁面**連結。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 檢視節點的運作狀態
<a name="learn-status-conditions"></a>

本主題說明可用於監控 Amazon EKS 叢集中節點運作狀態的工具和方法。相關資訊涵蓋節點條件、事件和偵測案例，可協助您識別和診斷節點層級問題。使用此處所述的命令和模式來檢查節點運作狀態資源、解譯狀態條件，並分析節點事件以進行操作故障診斷。

您可以針對所有節點使用 Kubernetes 命令，以取得一些節點運作狀態資訊。此外，如果您透過 Amazon EKS 自動模式或 Amazon EKS 受管附加元件使用節點監控代理程式，您將會取得更多種類的節點訊號，進而協助故障診斷。在可觀測性儀表板中，還會提供節點監控代理程式偵測的運作狀態問題說明。如需詳細資訊，請參閱[使用 EKS 節點監控代理程式偵測節點運作狀態問題](node-health-nma.md)。

## 節點條件
<a name="status-node-conditions"></a>

節點條件代表需要修復動作的終端問題，例如執行個體替換或重新啟動。

 **若要取得所有節點的條件：**

```
kubectl get nodes -o 'custom-columns=NAME:.metadata.name,CONDITIONS:.status.conditions[*].type,STATUS:.status.conditions[*].status'
```

 **若要取得特定節點的詳細條件** 

```
kubectl describe node node-name
```

 **運作狀態良好的節點的範例條件輸出：**

```
  - lastHeartbeatTime: "2024-11-21T19:07:40Z"
    lastTransitionTime: "2024-11-08T03:57:40Z"
    message: Monitoring for the Networking system is active
    reason: NetworkingIsReady
    status: "True"
    type: NetworkingReady
```

 **存在聯網問題的運作狀態不佳的節點的範例條件：**

```
  - lastHeartbeatTime: "2024-11-21T19:12:29Z"
    lastTransitionTime: "2024-11-08T17:04:17Z"
    message: IPAM-D has failed to connect to API Server which could be an issue with
      IPTable rules or any other network configuration.
    reason: IPAMDNotReady
    status: "False"
    type: NetworkingReady
```

## 事件節點
<a name="status-node-events"></a>

節點事件表示暫時性問題或非最佳化的組態。

 **若要取得節點監控代理程式報告的所有事件** 

節點監控代理程式可用時，您可以執行下列命令。

```
kubectl get events --field-selector=reportingComponent=eks-node-monitoring-agent
```

輸出範例：

```
LAST SEEN   TYPE      REASON       OBJECT                                              MESSAGE
4s          Warning   SoftLockup   node/ip-192-168-71-251.us-west-2.compute.internal   CPU stuck for 23s
```

 **若要取得所有節點的事件** 

```
kubectl get events --field-selector involvedObject.kind=Node
```

 **若要取得特定節點的事件** 

```
kubectl get events --field-selector involvedObject.kind=Node,involvedObject.name=node-name
```

 **若要即時監看事件** 

```
kubectl get events -w --field-selector involvedObject.kind=Node
```

 **範例事件輸出：**

```
LAST SEEN   TYPE     REASON           OBJECT         MESSAGE
2m          Warning  MemoryPressure   Node/node-1    Node experiencing memory pressure
5m          Normal   NodeReady        Node/node-1    Node became ready
```

## 常見的故障診斷命令
<a name="status-node-troubleshooting"></a>

```
# Get comprehensive node status
kubectl get node node-name -o yaml

# Watch node status changes
kubectl get nodes -w

# Get node metrics
kubectl top node
```