Появление сообщения «No resources found» при использовании super-admin.conf — это на самом деле отличный прогресс. Это значит, что API-сервер тебя пустил (ошибка Forbidden исчезла), но он считает, что в базе данных еще нет ни одной зарегистрированной ноды.
Это произошло потому, что kubeadm упал за секунду до того, как должен был «прописать» k8s-srv1 в список узлов. Давай заставим его сделать это вручную.
## 1. Принудительная регистрация мастера
Выполни на k8s-srv1 команду, которая завершит регистрацию этой ноды в кластере:
sudo kubeadm init phase mark-control-plane --config /etc/kubernetes/kubeadm-config.yaml
После этого проверь список снова:
kubectl get nodes --insecure-skip-tls-verify
Теперь ты должен увидеть k8s-srv1 в статусе NotReady.
------------------------------
## 2. Получение данных для подключения других нод
Так как нам нужно двигаться дальше по заданию и подключать srv2-5, нам нужны токены. Выполни эти две команды и обязательно сохрани результат:
1. Общая команда join (токен и хэш):
kubeadm token create --print-join-command
2. Ключ сертификатов (только для мастеров srv2 и srv3):
sudo kubeadm init phase upload-certs --upload-certs --config /etc/kubernetes/kubeadm-config.yaml
(Запиши длинный код Certificate Key в конце вывода).
------------------------------
## 3. Установка сети Calico (Пункт 14)
Чтобы нода перешла в статус Ready и кластер стал стабильным, установи сетевой плагин прямо сейчас:
kubectl apply -f https://githubusercontent.com --insecure-skip-tls-verify
------------------------------
## Почему это важно сделать именно сейчас?
Как только ты выполнишь mark-control-plane и поставишь Calico, кластер поймет, что он «живой». HAProxy увидит работающий бэкенд и перестанет спамить в консоль.
Что показала команда kubectl get nodes после mark-control-plane? Если нода появилась, мы можем официально переходить к подключению k8s-srv2!
Если нода все еще не видна, дай знать, я подскажу, как проверить, запущен ли kubelet (он может стоять на паузе из-за ошибки в конфиге).