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

Другие вопросы по тегам