簡體   English   中英

為什么 calico 在 Kubernetes 中缺少一些節點對等地址?

[英]Why calico missing some nodes peer address in Kubernetes?

我正在使用 kubernetes v1.18 並使用 calico 作為我的 CNI 插件,這是 calico pod 狀態(刪除不相關的 pod):

[root@localhost ~]# kubectl get pods --all-namespaces -o wide
NAME                                            READY   STATUS    RESTARTS   AGE     IP              NODE                    NOMINATED NODE   READINESS GATES
calico-kube-controllers-75d555c48-lt4jr         1/1     Running   0          2d12h   10.11.102.134   localhost.localdomain   <none>           <none>
calico-node-6rj58                               1/1     Running   0          37h     192.168.31.30   k8sslave1               <none>           <none>
calico-node-czhww                               1/1     Running   0          2d12h   192.168.31.29   localhost.localdomain   <none>           <none>
calico-node-vwr5w                               1/1     Running   0          2d12h   192.168.31.31   k8sslave2               <none>           <none>
calicoctl                                       1/1     Running   0          93m     192.168.31.31   k8sslave2               <none>           <none>

我在我的主主機節點中安裝了 calicoctl:

curl -O -L  https://github.com/projectcalico/calicoctl/releases/download/v3.15.1/calicoctl
chmod +x calicoctl
mv calicoctl /usr/local

並獲取calico節點狀態。

[root@localhost ~]# calicoctl node status
Calico process is running.

IPv4 BGP status
+---------------+-------------------+-------+----------+-------------+
| PEER ADDRESS  |     PEER TYPE     | STATE |  SINCE   |    INFO     |
+---------------+-------------------+-------+----------+-------------+
| 192.168.31.31 | node-to-node mesh | up    | 02:56:08 | Established |
| 192.168.31.30 | node-to-node mesh | up    | 02:56:09 | Established |
+---------------+-------------------+-------+----------+-------------+

IPv6 BGP status
No IPv6 peers found.

問題是:為什么找不到master 192.168.31.29 calico節點? 所有 pod 運行良好,我不知道如何找到原因。

問題是:為什么找不到master 192.168.31.29 calico節點?

聽起來 Calico 無法為 master 檢索您的NODENAME 我看到它在您的命令的 output 中定義為localhost.localdomain

如果您看到文檔,Calico 需要能夠確定您的NODENAME以添加 calico/node 資源並將其視為“網格”的一部分。

calico/node 必須知道它正在運行的節點的名稱。 節點名稱用於檢索為該節點配置的 Node 資源(如果存在),如果不存在則創建代表該節點的新節點資源。 它還用於將節點與每個節點的 BGP 配置、felix 配置和端點相關聯。

另一個問題是,您是否打算在 Kubernetes 主服務器上運行工作負載? 如果你不這樣做,那么你的設置現在很好。 如果您這樣做,那么是的,您必須確保 Calico(覆蓋)工作,以便您的工作負載具有網絡連接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM