Я уже рассказывал как создать кластер Kubernetes в Яндекс облаке и давайте сегодня рассмотрим создание кластера в облаке Cloud.ru. Особых отличий нет и мне кажется, что в облаке Cloud.ru создать проще чем у Яндекса.
Для доступа кластеров в интернет создайте SNAT-шлюз
Добавление публичного ключа
Преимущества авторизации по ключу против логин-пароль.
| Критерий | Авторизация по ключу | Авторизация по паролю |
|---|---|---|
| Стойкость к брутфорсу | Практически неуязвима | Зависит от сложности пароля; слабые пароли легко подбираются |
| Уязвимость к фишингу | Низкая | Высокая |
| Передача секрета на сервер | Нет (используется подпись) | Да (пароль или его хеш) |
| Удобство для скриптов | Отличное | Плохое (требует хранения пароля) |
| Управление доступом (добавление/удаление) | Простое (добавить/удалить ключ) | Требует смены пароля и информирования всех пользователей |
| Утечка данных с сервера | Безопасна (публичные ключи бесполезны) | Опасна (пароли/хеши могут быть восстановлены) |
| Двухфакторная аутентификация | Легко реализуется (ключ + passphrase) | Требует отдельной настройки 2FA |
| Масштабируемость | Высокая (сотни ключей на сервере) | Низкая (общий пароль) |

Создание SNAT-шлюза
SNAT‑шлюз (Source Network Address Translation Gateway) — сетевой узел (маршрутизатор, межсетевой экран или специализированное ПО), выполняющий преобразование исходного IP‑адреса в пакетах данных при их прохождении из внутренней сети во внешнюю.

Дождитесь окончания создания SNAT-шлюза.

Создание кластера Managed Kubernetes
Создаем минимальный кластер Kubernetes.

Настройка сети с внешним IP-адресом.

Настройка группы узлов для воркеров.

Настройка авторизации и группы безопасности.

Базовые настройки логирования, мониторинга и т.п.

Итого в месяц получается примерно 5700. Кластер у нас конечно маленький получился, но для экспериментов вполне достаточно.

Подключение к созданному кластеру
Для установки инструментов управления кластером можно воспользоваться моей инструкцией.
Для установки cloudlogin скачайте https://github.com/cloud-ru-tech/cloudlogin/releases/download/v1.0.2/cloudlogin_Linux_amd64.tar.gz и распакуйте бинарный файл в /usr/local/bin.
Для подключения к кластеру вам необходимо скачать файл kubeconfig.

Сохраните файл с названием config в каталоге $HOME/.kube и создайте персональный ключ доступа.
- Перейдите в Мой профиль, нажав в правом верхнем углу на инициалы → имя пользователя.
- Перейдите на вкладку Ключи доступа.
- Нажмите Создать ключ.
- Введите краткое описание ключа, которое поможет в будущем идентифировать его среди других ключей.
- Задайте время жизни ключа: от 1 до 10 000 дней. После этого срока ключ перестанет быть активным.Или выберите вариант «Бессрочно». Бессрочные ключи менее безопасны, рекомендуем выбирать ограничение по периоду действия или обновлять ключи самостоятельно не менее одного раза в год.
- Нажмите Создать.После этого будут сгенерированы Key ID (логин) и Key Secret (пароль).
- Сохраните Key Secret.
После того как вы закроете окно, повторно посмотреть его будет нельзя. Укажите персональный ключ доступа в config. Для этого откройте config и заполните value для параметров CLOUDRU_KEY_ID и CLOUDRU_SECRET_ID.
env:
- name: CLOUDRU_KEY_ID
value: "<key_id>"
- name: CLOUDRU_SECRET_ID
value: "<key_secret>"
Для тестирования запросим список узлов.
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
vm-2fa2ca0e-bd4b-4607-80b8-7c2080e69338 Ready <none> 77m v1.34.6
vm-4f046067-f719-4765-b0f5-ac9a63eeb77b Ready <none> 76m v1.34.6
Установка lenshq.io
Удобное приложение для работы с кластером Kubernetes можно скачать по адресу https://lenshq.io.
Установка пакета в Ubuntu Linux.
# curl -fsSL https://downloads.k8slens.dev/keys/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/lens-archive-keyring.gpg > /dev/null
# echo "deb [arch=amd64 signed-by=/usr/share/keyrings/lens-archive-keyring.gpg] https://downloads.k8slens.dev/apt/debian stable main" | sudo tee /etc/apt/sources.list.d/lens.list > /dev/null
# apt update && sudo apt install lens
Объединение нескольких конфигурацилонных файлов Kubernetes в один
Если вы работаете с несколькими Kubernetes кластерами можете воспользоваться моей статьей.




