Поиск по сайту:

Как настроить кластер Kubernetes с Kubeadm в Debian 11


На этой странице

  1. Предпосылки
  2. Настройка систем
  3. Настройка файла /etc/hosts
  4. Настройка брандмауэра UFW
  5. Включить модули ядра и отключить SWAP
  6. Установка среды выполнения контейнера: CRI-O
  7. Установка пакетов Kubernetes
  8. Инициализация плоскости управления Kubernetes
  9. Добавление рабочих узлов в Kubernetes
  10. Развертывание модуля Nginx в кластере Kubernetes
  11. Заключение

Kubernetes или k8s — это платформа с открытым исходным кодом для оркестрации контейнеров, которая автоматизирует развертывание, управление и масштабирование контейнерных приложений. Kubernetes — это оркестровка контейнеров, созданная Google, которая теперь стала проектом с открытым исходным кодом и стандартом для современных платформ развертывания приложений и вычислений.

Kubernetes — это решение для современной эпохи развертывания контейнеров. Он обеспечивает обнаружение служб и балансировку нагрузки, оркестрацию хранилища, автоматическое развертывание и откат, службу самовосстановления, управление секретами и конфигурацией. Kubernetes обеспечивает экономичную облачную разработку.

В этом руководстве вы настроите кластер Kubernetes, выполнив следующие действия:

  • Настройка систем, в том числе настройка файла /etc/hosts, включение модулей ядра и отключение SWAP.
  • Настройка брандмауэра UFW путем добавления некоторых портов, необходимых для Kubernetes и подключаемого модуля CNI (Calico).
  • Установка CRI-O в качестве среды выполнения контейнера для Kubernetes.
  • Установка пакетов Kubernetes, таких как kubelet, kubeadm и kubectl.
  • Инициализация одного узла плоскости управления и добавление двух рабочих узлов.

Предпосылки

Для выполнения этого руководства вам потребуются следующие требования:

  • Три или более серверов Debian 11.
  • Пользователь без полномочий root с правами root/администратора.

Настройка систем

Прежде чем вы начнете устанавливать какие-либо пакеты для развертывания Kubernetes, вам необходимо настроить все свои системы в соответствии с требованиями для развертывания Kubernetes. Сюда входят следующие конфигурации:

  1. Настройте правильный файл /etc/hosts: каждое имя хоста сервера должно быть преобразовано в правильный IP-адрес. Это можно сделать несколькими способами, но самый простой и удобный — использовать файл /etc/hosts на всех серверах.
  2. Настройка брандмауэра UFW. В производственной среде всегда рекомендуется включать брандмауэр как на уровне управления, так и на рабочих узлах. Вы настроите брандмауэр UFW для плоскости управления Kubernetes, рабочего узла и подключаемого модуля CNI Calico.
  3. Включить модули ядра. Kubernetes требовал включения некоторых модулей ядра в системе Linux. Модуль ядра \overlay\ и \br_netfilter\ требуется, чтобы позволить iptables видеть трафик моста.
  4. Отключить SWAP: это обязательно, вы должны отключить SWAP на всех узлах Kubernetes, как на уровне управления, так и на рабочих узлах. В противном случае служба kubelet будет работать с проблемами.

Настройка файла /etc/hosts

На этом первом шаге вы настроите системное имя хоста и файл /etc/hosts на всех ваших серверах. Для этой демонстрации мы будем использовать следующие серверы.

Hostname        IP Address        Used as
--------------------------------------------
k8s-master      192.168.5.10      control-plane
k8s-worker1     192.168.5.115     worker node
k8s-worker2     192.168.5.116     worker node

Запустите следующую команду hostnamectl ниже, чтобы настроить системное имя хоста на каждом сервере.

Для узла уровня управления выполните следующую команду, чтобы установить системное имя хоста \k8s-master\.

sudo hostnamectl set-hostname k8s-master

Для рабочих узлов Kubernetes выполните следующую команду hostnamectl.

# setup hostname k8s-worker1
sudo hostnamectl set-hostname k8s-worker1

# setup hostname k8s-worker2
sudo hostnamectl set-hostname k8s-worker2

Затем отредактируйте файл /etc/hosts на всех серверах с помощью следующей команды.

sudo nano /etc/hosts

Добавьте следующую конфигурацию в файл. Убедитесь, что каждое имя хоста указывает на правильный IP-адрес.

192.168.5.10 k8s-master
192.168.5.115 k8s-worker1
192.168.5.116 k8s-worker2

Сохраните и закройте файл, когда закончите.

Наконец, если вы запустите команду ping для каждого имени хоста, вам будет указан правильный IP-адрес, указанный в файле /etc/hosts.

ping k8s-master -c3
ping k8s-worker1
ping k8s-worker2 -c3

Настройка брандмауэра UFW

Kubernetes требовал, чтобы некоторые порты были открыты во всех ваших системах. В системе Ubuntu по умолчанию в качестве брандмауэра по умолчанию используется брандмауэр UFW. Вы установите брандмауэр UFW на все свои системы Debian и добавите некоторые правила UFW для развертывания Kubernetes.

Для плоскости управления Kubernetes вам необходимо открыть следующие порты:

Protocol  Direction Port Range  Purpose Used By
-----------------------------------------------
TCP       Inbound   6443        Kubernetes API server All
TCP       Inbound   2379-2380   etcd server client API  kube-apiserver, etcd
TCP       Inbound   10250       Kubelet API Self, Control plane
TCP       Inbound   10259       kube-scheduler  Self
TCP       Inbound   10257       kube-controller-manager Self

Для рабочих узлов Kubernetes необходимо открыть следующие порты:

Protocol  Direction Port Range  Purpose Used By
--------------------------------------------------
TCP       Inbound   10250       Kubelet API Self, Control plane
TCP       Inbound   30000-32767 NodePort Services†  All

В этом примере мы будем использовать Calico в качестве плагина CNI (контейнерного сетевого интерфейса). Итак, вы откроете несколько дополнительных портов ниже:

Protocol  Direction          Port Range  Purpose Used By
-------------------------------------------------------
TCP       Bidirectional      179         Calico networking (BGP)
UDP       Bidirectional      4789        Calico networking with VXLAN enabled
TCP       Incoming           2379        etcd datastore
UDP       Bidirectional      4789        flannel networking (VXLAN)

Установите пакет UFW на свои серверы Debian с помощью следующей команды apt. Введите Y, чтобы подтвердить установку, и нажмите ENTER, и установка начнется.

sudo apt install ufw

Затем добавьте приложение OpenSSH в свой брандмауэр, используя приведенную ниже команду. Затем включите брандмауэр UFW. При запросе подтверждения введите \y\, чтобы включить и запустить брандмауэр UFW.

sudo ufw allow "OpenSSH"
sudo ufw enable

На узле уровня управления \k8s-master\ выполните следующую команду ufw, чтобы открыть порты. Затем проверьте и проверьте правила UFW.

Правила брандмауэра для плоскости управления Kubernetes.

sudo ufw allow 6443/tcp
sudo ufw allow 2379:2380/tcp
sudo ufw allow 10250/tcp
sudo ufw allow 10259/tcp
sudo ufw allow 10257/tcp

Правила брандмауэра для плагина Calico CNI.

sudo ufw allow 179/tcp
sudo ufw allow 4789/udp
sudo ufw allow 4789/tcp
sudo ufw allow 2379/tcp

sudo ufw status

На рабочих узлах «k8s-worker1» и «k8s-worker2» выполните следующую команду ufw, чтобы открыть некоторые порты. Затем проверьте правила брандмауэра UFW.

Правила брандмауэра для рабочих узлов Kubernetes.

sudo ufw allow 10250/tcp
sudo ufw allow 30000:32767/tcp

Правила брандмауэра для Calico на рабочих узлах Kubernetes.

sudo ufw allow 179/tcp
sudo ufw allow 4789/udp
sudo ufw allow 4789/tcp
sudo ufw allow 2379/tcp
sudo ufw status

Включить модули ядра и отключить SWAP

Kubernetes требовал, чтобы модули ядра \overlay\ и \br_netfilter\ были включены на всех серверах. Это позволит iptbales видеть мостовой трафик. Также вам нужно будет включить переадресацию портов и отключить SWAP.

Выполните следующую команду, чтобы включить модули ядра \overlay\ и \br_netfilter\.

sudo modprobe overlay
sudo modprobe br_netfilter

Чтобы сделать его постоянным, создайте файл конфигурации в \/etc/modules-load.d/k8s.conf\, используя приведенную ниже команду. Это позволит системам Linux включать модули ядра во время загрузки системы.

cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
overlay
br_netfilter
EOF

Затем создайте необходимые параметры systemctl с помощью следующей команды.

cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-iptables  = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward                 = 1
EOF

Чтобы применить новую конфигурацию sysctl без перезагрузки, используйте приведенную ниже команду sysctl. Вы должны получить список параметров sysctl по умолчанию в вашей системе и убедиться, что вы получили параметры sysctl, которые вы только что добавили в файл \k8s.conf\.

sudo sysctl --system

Чтобы отключить SWAP, вам нужно будет прокомментировать конфигурацию SWAP в файле \/etc/fstab\. Это можно сделать с помощью одной команды через sed (редактор потока) или вручную отредактировав файл /etc/fstab.

sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab

или

sudo nano /etc/fstab

Затем отключите SWAP в текущем сеансе с помощью приведенной ниже команды. Затем убедитесь, что SWAP отключен с помощью команды \free -m\. Вы должны увидеть, что SWAP имеет значения «0», что означает, что теперь он отключен.

sudo swapoff -a
free -m

Установка среды выполнения контейнера: CRI-O

Чтобы настроить кластер Kubernetes, необходимо установить среду выполнения контейнера на всех серверах, чтобы могли работать поды. Для развертываний Kubernetes можно использовать несколько сред выполнения контейнеров, таких как containerd, CRI-O, Mirantis Container Runtime и Docker Engine (через cri-dockerd).

В этой демонстрации мы будем использовать CRI-O в качестве контейнера для развертывания Kubernetes. Итак, вы установите CRI-O на все серверы, панель управления и рабочие узлы.

Перед установкой CRI-O выполните приведенную ниже команду apt, чтобы установить базовый пакет \gnupg2\ и \apt-transport-https\. Введите Y, чтобы подтвердить установку, и нажмите ENTER.

sudo apt install gnupg2 apt-transport-https

Теперь создайте новую переменную среды для установки CRI-O. Переменная \$OS\ со значением \Debian_11\ и переменная \$VERSION\ со значением \1.24\. В этом примере мы установим контейнер CRI-O v1.24 (текущая версия) для систем «Debian_11».

export OS=Debian_11
export VERSION=1.24

Выполните следующую команду, чтобы добавить репозиторий CRI-O для системы Debian 11.

echo "deb [signed-by=/usr/share/keyrings/libcontainers-archive-keyring.gpg] https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/$OS/ /" > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
echo "deb [signed-by=/usr/share/keyrings/libcontainers-crio-archive-keyring.gpg] https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/$VERSION/$OS/ /" > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable:cri-o:$VERSION.list

Выполните следующую команду, чтобы добавить ключ GPG для репозитория CRI-O.

mkdir -p /usr/share/keyrings
curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/$OS/Release.key | gpg --dearmor -o /usr/share/keyrings/libcontainers-archive-keyring.gpg
curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/$VERSION/$OS/Release.key | gpg --dearmor -o /usr/share/keyrings/libcontainers-crio-archive-keyring.gpg

Теперь обновите системные репозитории и обновите индекс пакетов с помощью приведенной ниже команды. Вы должны увидеть, что репозиторий CRI-O добавлен на серверы Debian 11.

sudo apt update

Чтобы установить среду выполнения контейнера CRI-O, выполните следующую команду apt. Введите Y, чтобы подтвердить установку, и нажмите ENTER, после чего начнется установка CRI-O.

sudo apt install cri-o cri-o-runc cri-tools

После завершения установки отредактируйте конфигурацию CRI-O \/etc/crio/crio.conf\ с помощью приведенной ниже команды.

sudo nano /etc/crio/crio.conf

В разделе \[crio.network]\ раскомментируйте параметры \network_dir\ и \plugin_dir\.

# The crio.network table containers settings pertaining to the management of
# CNI plugins.
[crio.network]

# The default CNI network name to be selected. If not set or "", then
# CRI-O will pick-up the first one found in network_dir.
# cni_default_network = ""

# Path to the directory where CNI configuration files are located.
network_dir = "/etc/cni/net.d/"

# Paths to directories where CNI plugin binaries are located.
plugin_dirs = [
        "/opt/cni/bin/",
]

Когда вы закончите, сохраните и закройте файл.

Затем отредактируйте конфигурацию моста CRI-O \/etc/cni/net.d/100-crio-bridge.conf\, используя приведенную ниже команду.

sudo nano /etc/cni/net.d/100-crio-bridge.conf

Измените подсеть IP-адреса по умолчанию, используя свою пользовательскую подсеть. Этот IP-адрес подсети будет использоваться для ваших модулей в кластере Kubernetes. Кроме того, вам необходимо убедиться, что IP-адрес подсети соответствует конфигурации IP-адреса в подключаемом модуле CNI.

В этом примере мы будем использовать IP-адрес подсети «10.42.0.0/24» для модулей Pod в кластере Kubernetes.

...
        "ranges": [
            [{ "subnet": "10.42.0.0/24" }],
            [{ "subnet": "1100:200::/24" }]
        ]
...

Сохраните и закройте файл, когда закончите.

Затем выполните следующую команду systemctl, чтобы перезапустить службу CRI-O и применить новые изменения.

sudo systemctl restart crio

Наконец, включите службу CRI-O для запуска при загрузке системы. Затем проверьте и проверьте статус службы CRI-O. И вы должны увидеть, что служба CRI-O включена и текущий статус работает.

sudo systemctl enable crio
sudo systemctl status crio

Установка пакетов Kubernetes

Вы установили среду выполнения контейнера CRI-O. Теперь вы установите пакеты Kubernetes на все свои системы Debian. Сюда входят kubeadm для начальной загрузки кластера Kubernetes, kubelet — основной компонент кластера Kubernetes и kubectl — утилита командной строки для управления кластером Kubernetes.

В этом примере мы будем устанавливать пакеты Kubernetes, используя репозиторий, предоставленный Kubernetes. Итак, вы добавите репозиторий Kubernetes во все свои системы Debian.

Выполните следующую команду, чтобы добавить репозиторий Kubernetes и ключ GPG.

sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg
echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list

Обновите и обновите репозиторий Ubuntu и индекс пакетов.

sudo apt update

Когда обновление будет завершено, установите пакеты Kubernetes с помощью следующей команды apt. Введите Y, чтобы подтвердить установку, и нажмите ENTER, чтобы продолжить, и установка начнется.

sudo apt install kubelet kubeadm kubectl

После завершения установки выполните следующую команду, чтобы закрепить текущую версию пакетов Kubernetes. Это предотвратит автоматическое обновление пакетов Kubernetes и предотвратит перекос версий между пакетами Kubernetes.

sudo apt-mark hold kubelet kubeadm kubectl

Инициализация плоскости управления Kubernetes

Вы выполнили все зависимости и требования для развертывания кластера Kubernetes. Теперь вы запустите кластер Kubernetes, впервые инициализировав узел Control Plane. В этом примере панель управления Kubernetes будет установлена на сервере «k8s-master» с IP-адресом «192.168.5.10».

Перед инициализацией узла Control Plane выполните следующую команду, чтобы проверить, включены ли модули ядра br_netfilter. Если вы получите вывод команды, это означает, что модуль br_netfilter включен.

lsmod | grep br_netfilter

Затем выполните следующую команду, чтобы загрузить образы, необходимые для кластера Kubernetes. Эта команда загрузит все образы контейнеров, необходимые для создания кластера Kubernetes, такие как coredns, сервер kube-api и т. д., kube-controller, kube-proxy и образ контейнера pause.

sudo kubeadm config images pull

После завершения загрузки выполните приведенную ниже команду \crictl\, чтобы проверить список доступных образов на сервере \k8s-master\. Вы должны увидеть список образов, которые будут использоваться для создания кластера Kubernetes.

sudo crictl images

Затем выполните следующую команду «kubeadm init», чтобы инициализировать кластер Kubernetes на сервере «k8s-master». Этот узел «k8s-master» будет автоматически выбран в качестве плоскости управления Kubernetes, поскольку это первая инициализация кластера.

Кроме того, в этом примере мы указываем сеть для модулей как \10.42.0.0/24\, которая является той же подсетью, что и конфигурация моста CRI-O \/etc/cni/net.d/100. -crio-bridge.conf\.
\--apiserver-advertise-address\ определяет, на каком IP-адресе будет работать сервер Kubernetes API, этот пример использует внутренний IP-адрес \192.168.5.10\.
Для параметра \--cri-socket\ здесь мы указываем сокет CRI для сокета среды выполнения контейнера CRI-O, который доступен на \/var/run/crio/crio.sock\. Если вы используете другую среду выполнения контейнера, вы должны изменить путь к файлу сокета или просто удалить этот параметр \--cri-socket\, потому что kubeadm обнаружит среду выполнения контейнера. розетка автоматически.

sudo kubeadm init --pod-network-cidr=10.42.0.0/24 \
--apiserver-advertise-address=192.168.5.10 \
--cri-socket=unix:///var/run/crio/crio.sock

Ниже приведен результат инициализации кластера Kubernetes на сервере «k8s-master».

Когда инициализация завершена, вы можете увидеть сообщение, такое как «Ваша плоскость управления Kubernetes успешно инициализирована!» с некоторыми важными выходными сообщениями для настройки учетных данных Kubernetes и развертывания сетевой надстройки Pod, как добавить рабочий узел в свой кластер Kubernetes.

Прежде чем вы начнете управлять кластером Kubernetes с помощью инструмента «kubectl», вам необходимо настроить учетные данные Kubernetes. Выполните следующую команду, чтобы настроить учетные данные Kubernetes.

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

Теперь вы можете использовать команду \kubectl\ для взаимодействия с вашим кластером Kubernetes. Выполните следующую команду \kubectl\, чтобы проверить информацию о кластере Kubernetes. И вы должны увидеть плоскость управления Kubernetes и работающие ядра.

kubectl cluster-info

Чтобы получить полную информацию о вашем Kubernetes, вы можете использовать опцию дампа — так \kubectl cluster-info dump\.

После запуска Kubernetes вы настроите подключаемый модуль Calico CNI для своего кластера Kubernetes. Выполните следующую команду, чтобы загрузить файл манифеста Calico \calico.yaml\. Затем отредактируйте файл \calico.yaml\ с помощью редактора nano.

curl https://docs.projectcalico.org/manifests/calico.yaml -O
nano calico.yaml

Раскомментируйте конфигурацию «CALICO_IPV4POOL_CIDR» и измените подсеть на «10.42.0.0/24». Эта конфигурация подсети должна быть той же подсетью, что и в конфигурации моста CRI-O и конфигурации --pod-network-cidr во время инициализации Kubernetes с помощью команды \kubeadm init\.

...
            - name: CALICO_IPV4POOL_CIDR
              value: "10.42.0.0/24"
...

Когда вы закончите, сохраните и закройте файл.

Затем выполните приведенную ниже команду \kubectl\, чтобы развернуть подключаемый модуль Calico CNI с настраиваемым файлом манифеста \calico.yaml\. Эта команда создаст несколько ресурсов Kubernetes для плагина Calico CNI. Кроме того, это загрузит образы Calico и создаст новые модули для Calico.

sudo kubectl apply -f calico.yml

Теперь выполните приведенную ниже команду kubectl, чтобы проверить доступные поды в вашем кластере Kubernetes. Вы должны увидеть два дополнительных модуля: «calico-node-xxx» и «calico-kube-controller-xxx».

kubectl get pods --all-namespaces

Добавление рабочих узлов в Kubernetes

После инициализации плоскости управления Kubernetes на сервере «k8s-master» вы добавите рабочие узлы «k8s-worker1» и «k8s-worker2» в кластер Kubernetes.

Перейдите на сервер \k8s-worker1\ и выполните приведенную ниже команду \kubeadm join\, чтобы добавить \k8s-worker1\ в кластер Kubernetes. У вас могут быть другие токен и ca-cert-hash, вы можете увидеть подробную информацию об этой информации в выходном сообщении при инициализации узла Control Plane.

kubeadm join 192.168.5.10:6443 --token dbgk8h.nwzqqp1v5aqif5fy \
        --discovery-token-ca-cert-hash sha256:7a543a545585358b143ce3e8633a8d673b6f628c5abc995939a58606c6dd219c

В следующем выводе вы можете видеть, что сервер k8s-worker1 присоединен к кластеру Kubernetes.

Затем перейдите на сервер \k8s-worker2\ и запустите команду \kubeadm join\, чтобы добавить \k8s-worker2\ в кластер Kubernetes.

kubeadm join 192.168.5.10:6443 --token dbgk8h.nwzqqp1v5aqif5fy \
        --discovery-token-ca-cert-hash sha256:7a543a545585358b143ce3e8633a8d673b6f628c5abc995939a58606c6dd219c

Вы увидите такое же выходное сообщение, когда процесс завершится.

Теперь вернитесь к серверу плоскости управления k8s-master\ и выполните следующую команду, чтобы проверить все запущенные модули в кластере Kubernetes. Вы должны увидеть дополнительные модули для каждого компонента Kubernetes во всех пространствах имен.

kubectl get pods --all-namespaces

или

kubectl get pods -o wide --all-namespaces

Наконец, проверьте все доступные узлы в кластере Kubernetes с помощью приведенной ниже команды kubectl. Вы должны увидеть, что сервер cplane1 работает в качестве плоскости управления Kubernetes, а серверы k8s-worker1 и k8s- worker2\ работают как рабочий узел.

kubectl get nodes -o wide

Развертывание модуля Nginx в кластере Kubernetes

Выполните следующую команду, чтобы создать новое развертывание для веб-сервера Nginx. В этом примере мы создадим новые модули Nginx на основе образа \nginx:alpine\ с двумя репликами.

kubectl create deployment nginx --image=nginx:alpine --replicas=2

Теперь создайте новый тип службы «NodePort», который будет предоставлять развертывание Nginx с помощью следующей команды kubectl. Эта команда создаст новую службу Kubernetes с именем «nginx» с типом «NodePort» и предоставит порт «80» для Pod.

kubectl create service nodeport nginx --tcp=80:80

Затем выполните следующую команду kubectl, чтобы проверить список работающих модулей в вашем кластере Kubernetes. И вы должны увидеть два запущенных модуля Nginx.

kubectl get pods

Теперь проверьте список доступных сервисов в Kubernetes с помощью следующей команды. Вы должны увидеть, что тип службы «nginx» NodePort предоставляет порт «80» и порт «31277» на хостах Kubernetes. Служба NodePort всегда будет предоставлять порт в диапазоне 30000-32767.

kubectl get svc

Запустите команду curl ниже, чтобы получить доступ к развертыванию Nginx.

curl k8s-worker1:31277
curl k8s-worker2:31277

Ниже приведен вывод исходного кода index.html узла \k8s-worker1\.

А ниже приведен код index.html узла \k8s-worker2\.

Заключение

В рамках этого руководства вы завершили развертывание кластера Kubernetes с тремя узлами и серверами Debian 11. Кластер Kubernetes работает с одной плоскостью управления и двумя рабочими узлами. Он работает с CRI-O в качестве среды выполнения контейнера для вашего кластера Kubernetes и с плагином Calico CNI для организации сети модулей в вашем кластере. Кроме того, вы успешно развернули веб-сервер Nginx внутри кластера Kubernetes.

Вы полностью настроили кластер Kubernetes, вы можете начать развертывание своих приложений в кластере Kubernetes или попробовать установить панель управления Kubernetes, чтобы узнать больше о вашей среде Kubernetes.