J'ai installé, Docker, Kubectl et kubeAdm. Je souhaite créer mon modèle d'appareil et les CRD d'appareil (je suis ce guide . Ainsi, lorsque j'exécute la commande:
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)
en tant qu'utilisateur, je reçois ce qui suit:
> 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
(J'ai ajouté l'autorisation pour l'utilisateur d'accéder au dossier .kube)
Avec netstat, j'obtiens:
The connection to the server 10.0.0.68:6443 was refused - did you specify the right host or port?
Avec lsof -i:
kubectl create -f devices_v1alpha1_devicemodel.yaml
J'ai déjà essayé ceci et: sudo swapoff -a
6 Réponses :
kubelet doit être en panne. vous devez vérifier les journaux de kubelet sur le maître et vous assurer que le serveur api est en cours d'exécution et en ligne. alors seulement vous devriez pouvoir déployer
J'ai rencontré ce problème et swapoff -a fonctionne pour moi cependant.
sudo -i swapoff -a exit strace -eopenat kubectl version
En supposant que c'est toute la sortie de votre commande netstat
et que vous l'avez exécutée sur le nœud maître (celui sur lequel vous avez installé Kubernetes via kubadm), il me semble que l'installation ne s'est pas terminée correctement car aucun des ports habituels auxquels vous vous attendez voir sur un nœud maître Kubernetes sont présents.
Habituellement, sur un nœud maître kubernetes, vous vous attendez à voir kube-apiserver, kube-scheduler, kube-controller, kubelet et éventuellement etcd tous en écoute sur le réseau.
Quelle a été la sortie de votre commande kubeadm init
?
Veuillez effectuer les étapes ci-dessous sur le nœud maître. Cela fonctionne comme du charme.
1. sudo -i
2. swapoff -a
3. exit
4. strace -eopenat kubectl version
J'ajouterai une autre raison à cette erreur qui était le problème dans mon cas.
J'ai exporté le mauvais fichier Kubeconfig
vers le shell et le message d'erreur était très précis dans ce cas - Le point de terminaison du serveur API était incorrect (et bien sûr d'autres champs comme le nom du cluster et les certificats - mais le point de terminaison du serveur est la première étape dans la chaine).
Je suis confronté à un problème similaire avec l'erreur suivante lors du déploiement du réseau de pod dans un cluster à l'aide de flanelle:
$ 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
J'ai effectué les é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 The connection to the server 192.168.1.101:6443 was refused - did you specify the right host or port?