```bash # === 13. Посмотреть IP адреса мастера === hostname -I # Запомни нужный IP (например, 192.168.0.26) и подставь его в следующую команду. # POD CIDR под Flannel — 10.244.0.0/16 ``` ```bash # === 14. Инициализация control-plane (kubeadm init) === kubeadm init \ --apiserver-advertise-address=192.168.0.154 \ --pod-network-cidr=10.244.0.0/16 ``` ```bash # === 15. Настроить kubeconfig для root (чтобы kubectl работал без доп. флагов) === mkdir -p /root/.kube cp /etc/kubernetes/admin.conf /root/.kube/config chown root:root /root/.kube/config ``` ```bash # === 16. (Опционально) Скопировать kubeconfig обычному пользователю adminuser === # ЗАМЕНИ adminuser на своё имя пользователя mkdir -p /home/adminuser/.kube cp /etc/kubernetes/admin.conf /home/adminuser/.kube/config chown adminuser:adminuser /home/adminuser/.kube/config ``` ```bash # === 17. Установить Flannel как CNI-плагин === kubectl apply -f https://github.com/flannel-io/flannel/releases/latest/download/kube-flannel.yml ``` ```bash # === 18. (Опционально) Разрешить запуск pod'ов на master (single-node кластер) === # Если хочешь использовать мастер и как worker: kubectl taint nodes --all node-role.kubernetes.io/control-plane- ``` ```bash # === 19. Проверить статус кластера === kubectl get nodes kubectl get pods -A ``` ```bash # === 20. Получить команду для присоединения worker-узлов === kubeadm token create --print-join-command # Скопируй полностью выведенную команду "kubeadm join ..." — она понадобится на worker. ```