Подключение к кластеру k8s
Для подключения личного устройства к кластеру k8s требуется выполнить следующее:
1. Сначала проверяем доступность API Server с личный устройством
Нужно получить что-то вроде:
2. Установить kubectl на ваше устройство
документация по установке kubectl
3. Забираем kubeconfig с control plane
На Control plane kubeadm создал:
именно его нам нужно перенести на наше устройство
создаем директорию на вашем устройстве:
Далее нам нужно перенести admin.conf из control plane на наше устройство, но есть одна преграда
перенос admin.conf на личное устройство
файл admin.conf на control plane имеет права root и если вы работаете не от него, то при копировании/попытке открыть его будете получать Permission denied
Поэтому изменяем владельца файла:
Затем копируем на личное устройство:
4. Проверяем, куда наше устройство собирается подключаться
Самое важное Server должен указывать на адрес Control Plane
5. Проверяем работу с кластером с личного устройства
Что мы сделали
Mac
└── kubectl
│
│ Kubernetes API
▼
Control Plane
└── kube-apiserver :6443
│
├── etcd
├── scheduler
├── controllers
└── kubelets → Nodes
kubectl не использует SSH для конекта к Control Plane, он отправляет HTTPS запрос в kube-api-server:6443, используя credentials из ~/.kube/config.