J'ai installé, Docker, Kubectl et Kubeadm. Je souhaite créer mon modèle de périphérique et des CRD de périphérique (je suive cela Guide . Donc, quand j'exécute la commande:
kubectl create -f devices_v1alpha1_devicemodel.yaml
en tant qu'utilisateur, je reçois la suite:
The connection to the server 10.0.0.68:6443 was refused - did you
specify the right Host or port?
(J'ai ajouté la permission pour l'utilisateur d'accéder au dossier .kube)
Avec netstat, je reçois:
> 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
Avec 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)
J'ai déjà essayé ceci et: Sudo swapoff -a
Selon le message d'erreur, il est clairement indiqué que le numéro de port 6443 est refusé.
Moyens
Blockquote
le numéro de port ne s'exécute pas sur l'hôte spécifié 6443. Vous pouvez traverser la vérification à l'aide de la commande ci-dessous #netstat -tulpn | grep -i 6443.
Solution: 6443 Il s'agit de numéro de port Kube-apiserver en K8S. S'il ne fonctionne pas, assurez-vous que Kube-apiserver fonctionne correctement. J'ai fait face au même problème. Après cela, j'ai corrigé correctement l'argument correct dans ce port spécifique.
/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
J'ajouterai une autre raison de cette erreur qui était la question dans mon cas.
J'ai exporté le mauvais fichier Kubeconfig
fichier à shell et le message d'erreur était très précis dans ce cas - le point final du serveur API a eu tort (et bien sûr d'autres champs tels que le nom du cluster et Les certificats - mais le point final du serveur est la première étape de la chaîne).
J'ai rencontré ce problème et Swapoff -a travaille pour moi cependant.
Sudo -i
swapoff -a
exit
strace -eopenat kubectl version
Je suis confronté à un problème similaire avec l'erreur suivante tout en déployant le réseau POD dans un cluster utilisant Flannel:
$ 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?
J'ai effectué des étapes ci-dessous pour résoudre le problème:
$ Sudo systemctl stop kubelet
$ Sudo systemctl start kubelet
$ strace -eopenat kubectl version
puis appliquez le fichier 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
En supposant que tout soit la sortie de votre commande netstat
_ et que vous l'avez rencontrée sur le nœud maître (celui que vous avez installé Kubettes via kubadm ON), il me semble que l'installation ne s'est pas terminée correctement comme aucun de l'habituel Des ports à laquelle vous vous attendriez à voir sur un nœud maître Kubettes sont présents.
Habituellement sur un nœud Master Kubetestes, vous vous attendez à voir Kube-Apiserver, Kube-Scheduler, Kube-Controller, Kubelet et éventuellement etcd tous écouter sur le réseau.
Quelle a été la sortie de votre kubeadm init
commande?