Гид по технологиям

Как создать и управлять Kubernetes на DigitalOcean

8 min read Kubernetes Обновлено 20 Dec 2025
Kubernetes на DigitalOcean: создание и управление
Kubernetes на DigitalOcean: создание и управление

Быстрые ссылки

  • Зачем использовать управляемый Kubernetes?
  • Создание кластера
  • Выбор ёмкости кластера
  • Начало работы с кластером
  • Управление кластером
  • Дополнительные опции управления

Изображение с логотипами Kubernetes и DigitalOcean на тёмном фоне

Kubernetes — платформа для оркестрации контейнеризированных приложений. Эта инструкция объясняет, как запустить Managed Kubernetes (управляемый Kubernetes) на DigitalOcean: от создания кластера до базового управления и безопасности.

Зачем использовать управляемый Kubernetes?

Можно установить Kubernetes и на собственном оборудовании. Лёгкие решения для локального или небольшого окружения — MicroK8s и K3s. Они экономичны и удобны для обучения, но эксплуатация «самописного» кластера требует времени на настройку, обновления и восстановление после отказов.

Управляемые сервисы Kubernetes решают эти проблемы: провайдер обеспечивает доступный control plane, автоматические обновления и интеграцию с облачными сервисами. DigitalOcean предлагает полноценный Managed Kubernetes с поддержкой API, автоскейлинга узлов и автоматических обновлений версий Kubernetes.

Скриншот страницы Managed Kubernetes на DigitalOcean

Важно: control plane у DigitalOcean предоставляется бесплатно — вы платите только за узлы (droplets). Минимальный вариант узла в примерах стоит $10/месяц за 1 vCPU и 1–2 ГБ RAM (обозначается как «development plan»). Если вы следуете этой статье на реальном аккаунте, заранее учтите возможные расходы и используйте дешёвые узлы для экспериментов.

Важное: следуйте принципу least privilege и не изменяйте свойства «droplets», созданных Kubernetes, через интерфейс Droplets — это нарушит согласованность с control plane.

Создание кластера

  1. Войдите в аккаунт DigitalOcean.
  2. Нажмите зелёную кнопку “Create” в правом верхнем углу и выберите “Kubernetes”.

Скриншот создания нового Kubernetes кластера в DigitalOcean

  1. Выберите версию Kubernetes. На момент написания доступны релизы 1.17, 1.18, 1.19. Рекомендуется использовать самую новую доступную версию, если у вас нет ограничений по совместимости.

Скриншот выбора версии и дата-центра Kubernetes в DigitalOcean

  1. Выберите дата-центр (регион). Лучше выбирать регион, ближайший к вашим пользователям, чтобы минимизировать задержки.

  2. Наполните форму «Choose cluster capacity» — выбор типов и количества узлов описан ниже.

Выбор ёмкости кластера

Узлы (Nodes) в DigitalOcean — это обычные виртуальные машины (droplets). Они группируются в Node Pool — логическую группу с одинаковыми ресурсами.

  • Для старта достаточно одного Node Pool.
  • “Machine Type” определяет класс droplet (Basic, General Purpose и т.д.). Basic обычно подходит для разработки и небольших рабочих нагрузок.

Скриншот опций узлов кластера DigitalOcean

  1. В поле “Node Plan” выберите вариант droplet. В демонстрации использован самый маленький — 1 vCPU, 1 GB RAM, $10/месяц (development plan). Для продакшена рассматривайте более мощные варианты.

  2. Укажите количество узлов в пуле. По умолчанию — 3. Можно уменьшить до 1 для разработки, но учтите, что при обновлении Kubernetes ваши сервисы будут недоступны при единственном узле. Несколько узлов повышают отказоустойчивость и позволяют кластерам балансировать нагрузку.

Скриншот создания Kubernetes кластера в DigitalOcean

  1. Дайте имя кластеру и нажмите “Create cluster”. Provisioning занимает до 5 минут.

Краткая методология выбора узлов:

  • Для разработки: 1–3 маленьких узла (1 vCPU, 1–2 ГБ).
  • Для тестовой среды: 3+ узлов для имитации отказоустойчивости.
  • Для продакшена: планируйте ресурсы исходя из SLO/SLI, предполагаемой нагрузки и паттернов масштабирования.

Начало работы с кластером

Пока идёт развертывание, откройте «Getting Started» в интерфейсе DigitalOcean. Там предложат скачать:

  • kubectl — официальный CLI Kubernetes.
  • doctl — CLI для DigitalOcean.

Скриншот шагов начальной настройки Kubernetes в DigitalOcean

Далее можно скачать kubeconfig — файл конфигурации Kubernetes для подключения через kubectl. Используйте его так:

kubectl --kubeconfig=kubeconfig-path.yaml get nodes

Эта команда перечислит узлы в кластере.

Скриншот страницы скачивания kubeconfig и настроек

Обратите внимание: сертификат аутентификации в скачанном файле истекает через неделю. Вариант с doctl позволяет автоматически получать конфигурацию и настраивать обновление сертификатов. Используйте раздел “Automated certificate management” и соответствующую команду doctl из интерфейса.

Скриншот опций автоматического управления сертификатами и Marketplace

Также вы можете устанавливать 1-Click Apps из Marketplace — преднастроенные решения, такие как NGINX Ingress Controller или Linkerd. Нажмите “Install” у нужного приложения, дождитесь завершения.

Управление кластером

  • Перейдите на вкладку “Nodes” для просмотра Node Pools и отдельных узлов.

Скриншот просмотра узлов в Kubernetes кластере DigitalOcean

  • Добавить Node Pool: “Add Node Pool”.
  • Изменить пул: меню с тремя точками → “Resize or Autoscale”.

Скриншот изменения размера Node Pool в DigitalOcean

Диалог позволяет выбрать фиксированное количество узлов или включить автоскейлинг. При фиксированном размере вы указываете точное число узлов. При автоскейлинге задайте минимум и максимум — система будет добавлять или удалять узлы по потреблению ресурсов.

Скриншот автоскейлинга узлов

Вкладка “Insights” показывает метрики кластера: CPU, сеть и другие показатели. С помощью выпадающего списка “Select object” можно сфокусироваться на конкретном узле или пуле.

Скриншот экрана Insights кластера DigitalOcean

Дополнительные опции управления

DigitalOcean поддерживает официальный Kubernetes Dashboard — веб-интерфейс от проекта Kubernetes. Кнопка “Kubernetes Dashboard” в правом верхнем углу откроет дашборд в новой вкладке и подставит токен аутентификации.

Скриншот экрана Kubernetes Dashboard

Автоматические обновления кластера включаются в “Settings” → “Enable automatic upgrades”. Можно задать окно времени для применения обновлений — полезно для уменьшения рисков в продакшене.

Скриншот настроек кластера DigitalOcean

Удалить кластер можно через кнопку “Destroy” на странице Settings. Удаление удалит compute-ресурсы, но некоторые периферийные объекты (тома хранения, network load balancers) могут остаться и потребовать удаления вручную.

Важно: ресурсы, созданные Kubernetes, будут видны и в других разделах панели (например, узлы появятся в интерфейсе Droplets). Не редактируйте эти объекты напрямую — используйте Kubernetes API/интерфейс.

Когда управляемый Kubernetes не подойдёт

  • У вас очень строгие требования к версии Kubernetes или кастомизациям control plane — в этом случае нужен собственный кластер.
  • Для «edge» и микроустройств с крайне ограниченными ресурсами лучше подходят K3s или другие легковесные решения.
  • Если вам нужно полное управление сетью на уровне гипервизора — некоторые управляемые сервисы ограничивают такую гибкость.

Альтернативы и сравнение

  • MicroK8s / K3s — лёгкие, простые для локальной разработки.
  • GKE, EKS, AKS — набор возможностей схож, но у крупных провайдеров часто больше интеграций и больше регионов.
  • Self-hosted Kubernetes — максимум контроля, но требует команды для поддержки.

Решение выбирают, опираясь на требования к управлению, стоимости, латентности и наличию интеграций.

Чеклист для разных ролей

Разработчик

  • Подключиться к кластеру через kubeconfig или doctl.
  • Убедиться, что namespace и RBAC настроены.
  • Развернуть Deployment и Service для теста.

SRE / Оператор

  • Проверить политику резервных копий для PV.
  • Настроить мониторинг и алёрты (Prometheus, Alertmanager).
  • Настроить автоскейлинг узлов и горизонтальное автоскейлинг подов (HPA).

DevOps менеджер

  • Определить окно для автоматических обновлений.
  • Установить процессы CI/CD и канаретное развертывание.
  • Обеспечить аудит доступа и ротацию ключей.

Мини-методология развертывания кластера (быстрый план)

  1. Создать кластер с 1–3 малыми узлами в ближайшем регионе.
  2. Подключиться к кластеру и выполнить smoke-тесты (get nodes, get pods).
  3. Установить сетевой плагин, ingress и систему мониторинга.
  4. Развернуть тестовое приложение и прогнать нагрузочное тестирование.
  5. Настроить автоскейлинг и политики обновлений.
  6. Переход на более мощные узлы после тестирования.

Критерии приёмки

  • kubectl –kubeconfig указывает на все узлы и возвращает статус Ready для большинства узлов.
  • Деплой контроллера/Ingress доступен и пропускает HTTP трафик.
  • Метрики CPU/памяти отображаются в Insights.
  • Автоматические обновления включены (если это необходимость проекта).

Руководство по откату и удалению

Если обновление или изменение привело к сбою:

  1. Отключите автоматические обновления.
  2. Восстановите предыдущую конфигурацию Deployment (kubectl rollout undo).
  3. При необходимости уменьшите нагрузку, убрав внешние трафик-правила.
  4. Если узел повреждён, удалите и пересоздайте его через интерфейс Node Pools.
  5. Для полного удаления кластера используйте Settings → Destroy. Проверьте остаточные ресурсы (Volumes, Load Balancers) и удалите их вручную.

Безопасность и права доступа

  • Настройте RBAC: создайте ServiceAccount с минимальными правами для приложений.
  • Используйте NetworkPolicies для ограничения трафика между подами.
  • Храните секреты в Kubernetes Secrets и рассматривайте интеграцию с внешними секретными менеджерами.
  • Ограничьте доступ к Dashboard и используйте безопасные методы аутентификации.

Факт-бокс: ключевые показатели

  • Control plane: предоставляется DigitalOcean бесплатно.
  • Минимальная стоимость узла в примерах: $10/месяц за droplet (1 vCPU, 1 GB RAM).
  • Время создания кластера: до ~5 минут.

Практические советы и рекомендации

  • Для экспериментов создавайте кластер с одним узлом и маленькими droplet, но не используйте его для важных рабочей нагрузок.
  • Для продакшена планируйте как минимум 3 узла для распределения отказов.
  • Не редактируйте droplet-объекты, созданные Kubernetes, через панель Droplets.
  • Настройте автоматическое получение kubeconfig через doctl, чтобы избежать проблем с истечением сертификата.

Короткий глоссарий

  • Control plane — компоненты Kubernetes, управляющие состоянием кластера.
  • Node (узел) — виртуальная машина (droplet), выполняющая pod’ы.
  • Node Pool — группа однотипных узлов.
  • kubeconfig — файл с настройками доступа к API Kubernetes.

Частые вопросы

Сколько стоит управляемый Kubernetes на DigitalOcean?

Плата взимается за узлы (droplets). Control plane предоставляется бесплатно. Минимальные узлы в примере стоят $10/месяц; итоговая стоимость зависит от числа и типа узлов.

Как долго действует kubeconfig из интерфейса?

Классический kubeconfig от DigitalOcean содержит сертификат, который истекает через неделю. Используйте doctl для автоматического получения и обновления конфигурации.

Можно ли использовать автоскейлинг узлов?

Да. В настройках Node Pool можно включить Autoscale и задать минимум/максимум узлов.


Итог: Managed Kubernetes на DigitalOcean — быстрый способ начать работать с Kubernetes, особенно для команд, которые хотят сосредоточиться на приложениях, а не на управлении control plane. Начните с небольшого кластера, проверьте автоматическое управление сертификатами через doctl, настройте RBAC и мониторинг, и только затем масштабируйте для продакшена.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Teams падает в Windows 11 — как исправить
Windows

Teams падает в Windows 11 — как исправить

Музыка в облаке: как слушать коллекцию с любого устройства
Технологии

Музыка в облаке: как слушать коллекцию с любого устройства

Установка Windows Home Server (Vail) в VMware
Виртуализация

Установка Windows Home Server (Vail) в VMware

Как создать гид в Instagram из постов
Социальные сети

Как создать гид в Instagram из постов

NVIDIA Broadcast: установка и настройка
Руководство

NVIDIA Broadcast: установка и настройка

GitBook для API‑документации
Документация

GitBook для API‑документации