我正在閱讀有關使用 kubeadm 設定 Kubernetes 集群的檔案。我在三臺虛擬機上運行 Ubuntu Server 20.04,但目前我只使用其中一臺,然后再對另外兩臺進行配置。我已經準備好 containerd 和禁用交換,但我一直在啟用所需的埠。我首先使用 OpenSSH 應用程式組態檔將 ufw 配置為僅允許來自埠 22 的傳入流量。在閱讀啟用所需埠后,我運行了以下命令:
sudo ufw allow 6443、
sudo ufw allow 6443/tcp、 和
sudo ufw allow 6443/udp。
當我嘗試使用 telnet 連接時,它失敗了:
telnet 127.0.0.1 6443
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
...當使用私有 IP 時,其他計算機通過以下方式連接到它:
telnet 192.168.50.55 6443
Trying 192.168.50.55...
telnet: Unable to connect to remote host: Connection refused
如果我告訴 telnet 使用埠 22,它就可以正常作業:
telnet 127.0.0.1 22
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.3
^]
telnet> close
Connection closed.
我的防火墻配置有什么問題嗎?或者是另一回事?
感謝您的幫助,
Foxler2010
uj5u.com熱心網友回復:
連接被拒絕通常意味著請求到達服務器,但指定埠上沒有運行服務。您確定 api-server 已在您的節點上啟動嗎?
uj5u.com熱心網友回復:
您是否應該檢查 Kubernetes 是否已運行?
嘗試命令:
kubectl cluster-info
輸出如下所示:

如果沒有,則必須使用以下命令初始化 kubernetes 的主節點:
kubeadm init --apiserver-advertise-address=192.168.50.55 --pod-network-cidr=10.123.0.0/16
192.168.50.55:IP主節點的
10.123.0.0/16:kubernetesIP的網路插件范圍
uj5u.com熱心網友回復:
I did not do anything with kubeadm, I have only installed containerd so far.
運行 kubeadm 設定 k8s后,執行 6443 測驗。如果你現在這樣做,你將不會得到任何回應。
uj5u.com熱心網友回復:
那是因為沒有行程偵聽 6443.you 可以驗證它使用
ss -nltp | grep 64436443 將被“kube-apiserver”偵聽,它在您使用初始化集群后創建
kubeadm init --apiserver-advertise-address=192.168.50.55 --pod-network-cidr=<pod cidr>由于您尚未初始化集群,kube-apiserver 將不會運行,因此出現“連接被拒絕”錯誤。
如果您想驗證防火墻/ufw 設定是否正確完成以接受埠 6443 上的流量(不安裝 kubernetes 集群),那么您可以嘗試以下操作:
1. Install nmap " sudo apt-get install nmap "
2. listen to port 6443 "nc -l 6443"
3. open a another terminal/window and connect to 6443 port "nc -zv 192.168.50.55 6443" . It should say connected.
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/403410.html
標籤:
