Sobes.tech
Middle+
224

Kuidas te paigaldate Kubernetes'i otse metallile ja pilves?

Vastus AI-lt

sobes.tech AI

Для bare metal использую kubeadm. Сначала инициализирую управляющие узлы(kubeadm init), затем добавляю рабочие узлы (kubeadm join). Обязательно развертываю сетевой плагин (например, Calico или Flannel). Учитываю особенности сетевой инфраструктуры и хранилища.

Для облака (например, AWS, GCP, Azure) использую управляемые сервисы Kubernetes, такие как EKS, GKE или AKS. Это снимает с меня заботы об управлении мастер-нодами, масштабировании и обновлении. Процесс установки сводится к созданию кластера через веб-интерфейс или CLI облачного провайдера.

Различия:

Bare Metal Облако
Полный контроль Управляемый сервис
Нужна ручная настройка сети, хранилища Интегрировано с облачными ресурсами
Ответственность за мастер-ноды Ответственность на провайдере
Требуется больше усилий для High Availability HA обычно встроено или легко настраивается

Пример инициализации kubeadm:

# Инициализация управляющего узла
sudo kubeadm init --pod-network-cidr=10.244.0.0/16

Пример подключения рабочего узла:

# Команда выводится после инициализации управляющего узла
sudo kubeadm join <master-ip>:<master-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>

Использование облачного CLI (AWS EKS):

# Пример создания кластера EKS с помощью eksctl
eksctl create cluster --name my-cluster --region eu-central-1 --node-type t3.medium --nodes 3

В обоих случаях после установки необходима настройка kubectl для взаимодействия с кластером.

# Настройка kubectl
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

Далее устанавливаются необходимые приложения, Helm чарты, настраивается CI/CD.