Развертывание K3s на сервере Bare Metal
K3s — это упрощенная версия Kubernetes для сред с ограниченными ресурсами. Она сохраняет все возможности Kubernetes и подходит для тестирования и разработки небольших приложений.
В этом сценарии:
-
развернем K3s на сервере с ОС Ubuntu;
-
настроим к нему удаленный доступ;
-
добавим дополнительные узлы для расширения кластера.
Перед началом работы
-
Арендуйте сервер Bare Metal с публичным IP-адресом.
-
Обновите систему и установите утилиту Curl:
sudo apt update && sudo apt upgrade -ysudo apt install -y curl -
Откройте порт 6443:
sudo ufw allow 6443
Установите K3s
-
Выполните команду:
curl -sfL https://get.k3s.io | sh - -
Проверьте установку:
systemctl status k3sРезультат:
● k3s.service - Lightweight KubernetesLoaded: loaded (/etc/systemd/system/k3s.service; enabled; preset: enabled)Active: active (running) since Thu 2025-07-17 13:26:31 MSK; 1s ago...
Настройте удаленный доступ
-
Получите содержимое конфигурационного файла:
cat /etc/rancher/k3s/config.yamlСкопируйте содержимое.
-
Вставьте содержимое в файл /.kube/config на вашем устройстве.
Замените IP-адрес 127.0.0.1 на IP-адрес сервера или DNS-имя вашего хоста.
Добавьте дополнительные узлы
Дополнительным узлом может стать виртуальная машина, другой сервер или пользовательское устройство.
-
Сгенерируйте токен на сервере:
sudo k3s token create --ttl 1h -
Установите K3s на новый узел:
curl -sfL https://get.k3s.io | K3S_URL=https://<server_ip>:6443 K3S_TOKEN=<token> sh -Где:
-
<server_ip> — IP-адрес сервера.
-
<token> — токен, полученный на предыдущем шаге.
-
-
Проверьте подключение узла:
k3s kubectl get nodesРезультат:
k3s kubectl get nodesNAME STATUS ROLES AGE VERSIONserver.local Ready control-plane,master 3d v1.31.5+k3s1
Вы установили K3s, настроили к нему удаленный доступ и добавили дополнительные узлы для расширения кластера. Такую конфигурацию можно использовать как среду для небольших приложений.
- Перед началом работы
- Установите K3s
- Настройте удаленный доступ
- Добавьте дополнительные узлы