Kubernetes 与服务器x.x.x:6443的连接被拒绝-您是否指定了正确的主机或端口?库伯内特斯

Kubernetes 与服务器x.x.x:6443的连接被拒绝-您是否指定了正确的主机或端口?库伯内特斯,kubernetes,kubectl,kubeadm,Kubernetes,Kubectl,Kubeadm,我安装了Docker、Kubectl和kubeAdm。 我想创建我的设备模型和设备CRD(我正在遵循这一点)。 因此,当我运行命令时: kubectl create -f devices_v1alpha1_devicemodel.yaml 作为一名用户,我得到以下信息: The connection to the server 10.0.0.68:6443 was refused - did you specify the right host or port? (我已添加用户访问.kube

我安装了Docker、Kubectl和kubeAdm。 我想创建我的设备模型和设备CRD(我正在遵循这一点)。 因此,当我运行命令时:

kubectl create -f devices_v1alpha1_devicemodel.yaml
作为一名用户,我得到以下信息:

The connection to the server 10.0.0.68:6443 was refused - did you
specify the right host or port?
(我已添加用户访问.kube文件夹的权限)

使用netstat,我可以得到:

> ubuntu@kubernetesmaster:~/src/github.com/kubeedge/kubeedge/build/crds/devices$
> sudo netstat -atunp    Active Internet connections (servers and
> established)                                                 Proto
> Recv-Q Send-Q Local Address           Foreign Address         State   
> PID/Program name      tcp        0      0 0.0.0.0:22             
> 0.0.0.0:*               LISTEN      1298/sshd             tcp        0    224 10.0.0.68:22            160.98.31.160:52503     ESTABLISHED
> 2061/sshd: ubuntu [   tcp6       0      0 :::22                   :::*
> LISTEN      1298/sshd             udp        0      0 0.0.0.0:68      
> 0.0.0.0:*                           910/dhclient          udp        0      0 10.0.0.68:123           0.0.0.0:*                          
> 1241/ntpd             udp        0      0 127.0.0.1:123          
> 0.0.0.0:*                           1241/ntpd             udp        0      0 0.0.0.0:123             0.0.0.0:*                          
> 1241/ntpd             udp6       0      0 fe80::f816:3eff:fe0:123 :::*
> 1241/ntpd             udp6       0      0 2001:620:5ca1:2f0:f:123 :::*
> 1241/ntpd             udp6       0      0 ::1:123                 :::*
> 1241/ntpd             udp6       0      0 :::123                  :::*
> 1241/ntpd
使用lsof-i:

ubuntu@kubernetesmaster:~/src/github.com/kubeedge/kubeedge/build/crds/devices$ sudo lsof -i
COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
dhclient  910   root    6u  IPv4  12765      0t0  UDP *:bootpc
ntpd     1241    ntp   16u  IPv6  15340      0t0  UDP *:ntp
ntpd     1241    ntp   17u  IPv4  15343      0t0  UDP *:ntp
ntpd     1241    ntp   18u  IPv4  15347      0t0  UDP localhost:ntp
ntpd     1241    ntp   19u  IPv4  15349      0t0  UDP 10.0.0.68:ntp
ntpd     1241    ntp   20u  IPv6  15351      0t0  UDP ip6-localhost:ntp
ntpd     1241    ntp   21u  IPv6  15353      0t0  UDP [2001:620:5ca1:2f0:f816:3eff:fe0a:874a]:ntp
ntpd     1241    ntp   22u  IPv6  15355      0t0  UDP [fe80::f816:3eff:fe0a:874a]:ntp
sshd     1298   root    3u  IPv4  18821      0t0  TCP *:ssh (LISTEN)
sshd     1298   root    4u  IPv6  18830      0t0  TCP *:ssh (LISTEN)
sshd     2061   root    3u  IPv4  18936      0t0  TCP 10.0.0.68:ssh->160.98.31.160:52503 (ESTABLISHED)
sshd     2124 ubuntu    3u  IPv4  18936      0t0  TCP 10.0.0.68:ssh->160.98.31.160:52503 (ESTABLISHED)
我已经试过了
并且:
sudo swapoff-a

kubelet必须关闭。您需要检查主机上的kubelet日志,并确保api服务器正在运行和联机。然后,只有您才能部署我遇到了这个问题,swapoff-a对我有效

sudo -i
swapoff -a
exit
strace -eopenat kubectl version

假设这是您的
netstat
命令的所有输出,并且您在主节点(通过kubadm on安装Kubernetes的节点)上运行了该命令,那么在我看来,安装没有正确完成,因为在Kubernetes主节点上没有您希望看到的常见端口

通常在kubernetes主节点上,您会看到kube apiserver、kube调度程序、kube控制器、kubelet以及可能的etcd都在网络上侦听


您的
kubeadm init
命令的输出是什么?

请在主节点上执行以下步骤。它的工作原理很好

1.sudo-i

2.swapoff-a

3.退出


4.strace-eopenat-kubectl版本

我将为这个错误添加另一个原因,这就是我的案例中的问题


我将错误的
Kubeconfig
文件导出到shell
中,在这种情况下,错误消息非常准确-API服务器的端点错误(当然还有其他字段,如集群名称和证书-但服务器端点是链中的第一步).

在使用法兰绒将pod网络部署到集群中时,我面临类似的问题,错误如下:

$ kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
The connection to the server 192.168.1.101:6443 was refused - did you specify the right host or port?
我执行了以下步骤来解决问题:

$ sudo systemctl stop kubelet
$ sudo systemctl start kubelet
$ strace -eopenat kubectl version
然后应用yml文件

$ kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
podsecuritypolicy.policy/psp.flannel.unprivileged created
clusterrole.rbac.authorization.k8s.io/flannel created
clusterrolebinding.rbac.authorization.k8s.io/flannel created
serviceaccount/flannel created
configmap/kube-flannel-cfg created
daemonset.apps/kube-flannel-ds created

根据错误消息,它清楚地表明端口号6443连接被拒绝

意味着

  • 端口号被防火墙阻止
  • 如果没有防火墙,那么
  • 大宗报价

    端口号未在指定的主机6443上运行。您可以 使用下面的命令进行交叉验证 #netstat-tulpn | grep-i 6443

    解决方案: 6443是k8s中的kube apiserver端口号。如果它没有运行,请确保kube apiserver正常运行。我遇到了相同的问题。之后,我已修复了在该特定端口中正确设置参数的问题

    /usr/local/bin/kube-apiserver \\
      --advertise-address=${INTERNAL_IP} \\
      --allow-privileged=true \\
      --apiserver-count=3 \\
      --audit-log-maxage=30 \\
      --audit-log-maxbackup=3 \\
      --audit-log-maxsize=100 \\
      --audit-log-path=/var/log/audit.log \\
      --authorization-mode=Node,RBAC \\
      --bind-address=0.0.0.0 \\
      --client-ca-file=/var/lib/kubernetes/ca.crt \\
      --enable-admission-plugins=NodeRestriction,ServiceAccount \\
      --enable-swagger-ui=true \\
      --enable-bootstrap-token-auth=true \\
      --etcd-cafile=/var/lib/kubernetes/ca.crt \\
      --etcd-certfile=/var/lib/kubernetes/etcd-server.crt \\
      --etcd-keyfile=/var/lib/kubernetes/etcd-server.key \\
      --etcd-servers=https://192.168.5.11:2379,https://192.168.5.12:2379 \\
      --event-ttl=1h \\
      --encryption-provider-config=/var/lib/kubernetes/encryption-config.yaml \\
      --kubelet-certificate-authority=/var/lib/kubernetes/ca.crt \\
      --kubelet-client-certificate=/var/lib/kubernetes/kube-apiserver.crt \\
      --kubelet-client-key=/var/lib/kubernetes/kube-apiserver.key \\
      --kubelet-https=true \\
      --runtime-config=api/all \\
      --service-account-key-file=/var/lib/kubernetes/service-account.crt \\
      --service-cluster-ip-range=10.96.0.0/24 \\
      --service-node-port-range=30000-32767 \\
      --tls-cert-file=/var/lib/kubernetes/kube-apiserver.crt \\
      --tls-private-key-file=/var/lib/kubernetes/kube-apiserver.key \\
      --v=2
    

    我也遇到了这个问题,我尝试了上面提到的解决方案,但它对我无效。以下是对我有效的方法:

    修正: kubeadm init--apiserver播发地址=10.139.0.42--忽略所有飞行前错误--pod网络cidr=172.17.0.1/16--令牌ttl 0

    资料来源:

    kubectl cluster info打印主机和DNS的IP:端口。它为您的设置打印什么?