kube-dns и weave-net не запускаются
Я развертываю Kubernetes 1.4 на Ubuntu 16 на Raspberry Pi 3, следуя инструкциям на http://kubernetes.io/docs/getting-started-guides/kubeadm/. Мастер запускается, и миньон присоединяется без проблем, но когда я добавляю переплетение, kubedns не запускается. Вот стручки:
k8s@k8s-master:~$ kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system etcd-k8s-master 1/1 Running 1 23h
kube-system kube-apiserver-k8s-master 1/1 Running 3 23h
kube-system kube-controller-manager-k8s-master 1/1 Running 1 23h
kube-system kube-discovery-1943570393-ci2m9 1/1 Running 1 23h
kube-system kube-dns-4291873140-ia4y8 0/3 ContainerCreating 0 23h
kube-system kube-proxy-arm-nfvvy 1/1 Running 0 1h
kube-system kube-proxy-arm-tcnta 1/1 Running 1 23h
kube-system kube-scheduler-k8s-master 1/1 Running 1 23h
kube-system weave-net-4gqd1 0/2 CrashLoopBackOff 54 1h
kube-system weave-net-l758i 0/2 CrashLoopBackOff 44 1h
Журнал событий ничего не показывает. получение логов для kube-dns тоже ничего не дает.
Что я могу сделать для отладки?
2 ответа
ОБНОВЛЕНИЕ: Как отметил Брайан, Flannel больше не является единственной оверлейной сетью.
Обратите внимание на эти два совета в документации по установке kubeadm:
Фланель - единственная сетевая поддержка оверлеев
Если вы используете архитектуру, отличную от amd64, вы должны использовать сеть с фланелевым наложением, как описано в разделе о мультиплатформенности.
При использовании Flannel вам нужно сделать kubectl init --por-network-cidr=10.244.0.0/16
Примечание: это автоматически определит сетевой интерфейс для объявления мастера как интерфейса со шлюзом по умолчанию. Если вы хотите использовать другой интерфейс, укажите --api-advertise-address = аргумент для kubeadm init. Если вы хотите использовать фланель в качестве сети pod, укажите --pod-network-cidr=10.244.0.0/16, если вы используете манифест daemonset ниже. Тем не менее, обратите внимание, что это не требуется для любых других сетей, кроме Flannel.
Вы также можете проверить мою автоматическую пошаговую установку Raspberry Pi 3 с Ansible, поскольку нет проблем с DNS и, вероятно, будет работать и с Ubuntu 16:
NAMESPACE NAME READY STATUS RESTARTS AGE
default busybox-894550917-7vj3z 1/1 Running 0 15h
default busybox-894550917-p9vnl 1/1 Running 1 3d
default gogs-3464422143-cf5wb 1/1 Running 0 16h
kube-system dummy-2501624643-pxmgz 1/1 Running 2 3d
kube-system etcd-master.cluster.local 1/1 Running 2 3d
kube-system kube-apiserver-master.cluster.local 1/1 Running 2 3d
kube-system kube-controller-manager-master.cluster.local 1/1 Running 2 3d
kube-system kube-discovery-1659614412-vrhv4 1/1 Running 2 3d
kube-system kube-dns-4211557627-kpsj4 4/4 Running 8 3d
kube-system kube-flannel-ds-d1bgg 2/2 Running 6 3d
kube-system kube-flannel-ds-fcp4b 2/2 Running 6 3d
kube-system kube-flannel-ds-n7p3m 2/2 Running 6 3d
kube-system kube-flannel-ds-tn7nd 2/2 Running 6 3d
kube-system kube-flannel-ds-vpk4w 2/2 Running 6 3d
kube-system kube-proxy-5nmtn 1/1 Running 2 3d
kube-system kube-proxy-gq7bz 1/1 Running 2 3d
kube-system kube-proxy-lkkgm 1/1 Running 2 3d
kube-system kube-proxy-mlh3v 1/1 Running 1 3d
kube-system kube-proxy-sg8n8 1/1 Running 2 3d
kube-system kube-scheduler-master.cluster.local 1/1 Running 2 3d
kube-system kubernetes-dashboard-3507263287-h9q33 1/1 Running 2 3d
kube-dns
не начнется, пока сеть не будет
Посмотри в kubelet
регистрируется на каждой машине для получения дополнительной информации о сбое, которое вызывает CrashLoopBackoff.
Как вы получили изображения ARM для Weave Net? weaveworks/weave-kube
образ на DockerHub построен только для x64.
Редактировать: как говорит @pidster, Weave Net теперь поддерживает ARM