Bug 48180 - Ошибки при инициализации кластера с использованием haproxy
Summary: Ошибки при инициализации кластера с использованием haproxy
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: podsec-k8s (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: kaf@altlinux.org
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-10-25 17:22 MSK by Alexander Makeenkov
Modified: 2024-04-17 15:49 MSK (History)
3 users (show)

See Also:


Attachments
kubeadm -v 9 init (175.43 KB, text/plain)
2023-10-25 17:22 MSK, Alexander Makeenkov
no flags Details
journalctl (214.18 KB, text/plain)
2023-10-25 17:23 MSK, Alexander Makeenkov
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Makeenkov 2023-10-25 17:22:44 MSK
Created attachment 14882 [details]
kubeadm -v 9 init

Версия пакета:
podsec-k8s-1.0.8-alt1

Шаги воспроизведения:
# uname -r
6.1.53-std-def-alt1

# sed -i '/swap/d' /etc/fstab (согласно https://www.altlinux.org/Kubernetes#Разворачивание_кластера)
# reboot

# apt-get install podsec-k8s
# export PATH=/usr/libexec/podsec/u7s/bin/:$PATH && which kubeadm
/usr/libexec/podsec/u7s/bin/kubeadm

# kubeadm -v 9 init --apiserver-advertise-address 192.168.0.1 --control-plane-endpoint 192.168.0.2:8443

При завершении инициализации выводятся ошибки:

Created symlink /etc/systemd/system/multi-user.target.wants/u7s.service → /lib/systemd/system/u7s.service.
Unable to connect to the server: EOF
Unable to connect to the server: EOF
Unable to connect to the server: EOF
Unable to connect to the server: EOF
namespace/kube-flannel created

При этом сам кластер инициализируется корректно. Последующие присоединения worker и controlplane выполняются успешно.

Полные логи выполнения "kubeadm -v 9 init" и journalctl во вложениях.
Comment 1 Alexander Makeenkov 2023-10-25 17:23:05 MSK
Created attachment 14883 [details]
journalctl
Comment 2 ALexey Kostarev 2024-03-25 21:00:11 MSK
(Ответ для Alexander Makeenkov на комментарий #0)
> Создано вложение 14882 [details] [подробности]
> kubeadm -v 9 init
> 
> Версия пакета:
> podsec-k8s-1.0.8-alt1
> 
> Шаги воспроизведения:
> # uname -r
> 6.1.53-std-def-alt1
> 
> # sed -i '/swap/d' /etc/fstab (согласно
> https://www.altlinux.org/Kubernetes#Разворачивание_кластера)
> # reboot
> 
> # apt-get install podsec-k8s
> # export PATH=/usr/libexec/podsec/u7s/bin/:$PATH && which kubeadm
> /usr/libexec/podsec/u7s/bin/kubeadm
> 
> # kubeadm -v 9 init --apiserver-advertise-address 192.168.0.1
> --control-plane-endpoint 192.168.0.2:8443
> 
> При завершении инициализации выводятся ошибки:
> 
> Created symlink /etc/systemd/system/multi-user.target.wants/u7s.service →
> /lib/systemd/system/u7s.service.
> Unable to connect to the server: EOF
> Unable to connect to the server: EOF
> Unable to connect to the server: EOF
> Unable to connect to the server: EOF
> namespace/kube-flannel created
> 
> При этом сам кластер инициализируется корректно. Последующие присоединения
> worker и controlplane выполняются успешно.
> 
> Полные логи выполнения "kubeadm -v 9 init" и journalctl во вложениях.

Если речь идет о сообщениях 

> Unable to connect to the server: EOF

то это стандартная ситуация
После разворачивания вызывается функция 
добавления аудита обращений к kubeserver в файл /etc/kubernetes/audit/audit.log
<code>tuneAudit</code> - https://github.com/alt-cloud/podsec/blob/master/podsec-k8s/bin/podsec-u7s-functions#L255
которая правит файл-манифеста kube-apiserver: 
/etc/kubernetes/manifests/kube-apiserver.yaml
См. https://github.com/alt-cloud/podsec/tree/master/docs/k8s/RBAC/tuneAudit

Данный файл мониторит скрипт <code>podsec-inotify-check-kubeapi</code>:
https://www.altlinux.org/Rootless_kubernetes#podsec-inotify-check-kubeapi_-_%D0%BC%D0%BE%D0%BD%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BD%D0%B3_%D0%B0%D1%83%D0%B4%D0%B8%D1%82%D0%B0_API-%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81%D0%B0_kube-apiserver_control-plane_%D1%83%D0%B7%D0%BB%D0%B0

В связи с этим примерно в течении одной минуты сервис kube-apiserver (и основные связанные с ним сервисы) перезапускается, что приводит к появлению сообщений

> Unable to connect to the server: EOF

После перезапуска kube-сервисов узел должен успешно включаться в состав кластера.
Это относиться ко всем control-plane-узлам. К worker-узлам (на которых не запускается kube-apiserver) это е относится.