Не вижу журналы kubernetes pod

После установки кластера kubernetes, следуя этому руководству, я решил чтобы проверить журналы системного модуля kube-scheduler, чтобы убедиться, что все работает нормально:

 kubectl logs --namespace kube-system kube-scheduler-user223225-pc

но я получил следующее сообщение об ошибке:

Error from server: Get https://10.2.2.131:10250/containerLogs/kube-system/kube-scheduler-user-pc/kube-scheduler: dial tcp 10.2.2.131:10250: getsockopt: no route to host

Я пытаюсь получить журналы из других модулей и получаю ту же ошибку.

Я запускаю кластер на Ubuntu 16.04 и выбираю фланелевую сеть, установленную с помощью следующих команд:

kubectl taint nodes --all node-role.kubernetes.io/master-
kubectl create -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel-rbac.yml
kubectl create --namespace kube-system -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

Возможно, я что-то упустил, также я вижу, что люди предлагают настроить брандмауэр, но мне это не помогло:

sudo systemctl stop kubelet
sudo systemctl stop docker
sudo ifconfig cni0 down
sudo ifconfig flannel.1 down
sudo ifconfig docker0 down

sudo service docker start
sudo service kubelet start

sudo iptables -A FORWARD -i cni0 -j ACCEPT
sudo iptables -A FORWARD -o cni0 -j ACCEPT

Кто-нибудь знает, как решить проблему с получением логов? Заранее спасибо.


person Kirill Liubun    schedule 23.06.2017    source источник


Ответы (2)


Журнал процессов kubernetes будет регистрироваться в системном журнале узла. вы можете посмотреть файл /var/log/syslog.

для проверки конфигурации кластера используйте команду kubectl.

e.g.

kubectl получить узлы kubectl получить pods -o wide

также вы можете установить пользовательский интерфейс панели мониторинга для проверки кластера.

person sfgroups    schedule 23.06.2017
comment
Я тоже пробовал через пользовательский интерфейс панели инструментов, но получил то же сообщение. Все остальные команды, такие как kubectl get nodes или kubectl get pods, работают нормально. - person Kirill Liubun; 23.06.2017
comment
вы проверяли файл главного узла /var/log/syslog? - person sfgroups; 23.06.2017
comment
Да, я проверил и не обнаружил ничего подозрительного после запуска команды logs. - person Kirill Liubun; 23.06.2017
comment
Сообщения журнала выглядят следующим образом: Jun 23 18:47:40 user223225-pc kubelet[5185]: I0623 18:47:40.065041 5185 operation_generator.go:597] MountVolume.SetUp succeeded for volume "kubernetes.io/secret/5da95967-57ec-11e7-a9de-002522f9706f-flannel-token-bq608" (spec.Name: "flannel-token-bq608") pod "5da95967-57ec-11e7-a9de-002522f9706f" (UID: "5da95967-57ec-11e7-a9de-002522f9706f"). - person Kirill Liubun; 23.06.2017
comment
Я думаю, что у вас проблемы с сетью в вашем кластере. эта команда работает для меня «kubectl logs -n kube-system kube-scheduler-cm-01» в моем кластере. Можете ли вы дать более подробную информацию о вашей среде? Вы используете вагарнт? - person sfgroups; 24.06.2017
comment
Нет, я не использую vagrant. Какая информация вам нужна о моем окружении? - person Kirill Liubun; 25.06.2017
comment
Можете ли вы опубликовать вывод этой команды «kubectl get pods -n kube-system -o wide»? Соответствует ли kube-scheduler IP-адресу главного узла? - person sfgroups; 25.06.2017
comment
Нет, не соответствует. kube-scheduler-user223225-pc 1/1 Running 3 2d 10.2.2.131 user223225-pc enp5s0 Link encap:Ethernet inet addr:10.2.3.216 - person Kirill Liubun; 26.06.2017
comment
Вы указали мне правильное направление) Проблема была с /etc/hosts - старый IP-адрес был установлен против имени машины. Я его поменял и переустановил kubeadm, после этого логи заработали!!) - person Kirill Liubun; 26.06.2017
comment
Измените свой ответ на основе нашего обсуждения, и я принимаю его. - person Kirill Liubun; 26.06.2017

Из обсуждения между @sfgroups и @Kirill Liubun:

  • Основная причина проблемы: старый IP-адрес был установлен в /etc/hosts и использовался при настройке кластера Kubernetes. В результате произошло несоответствие IP-адреса между kube-scheduler pod и IP-адресом главного узла.

  • Проблема была решена путем исправления /etc/hosts, изменения IP-адреса на правильный и переустановки кластера kubernetes с помощью kubeadm

person Vit    schedule 16.03.2021