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

Установка Minikube на Ubuntu 20.04

• 5 min read • Kubernetes • Обновлено 25 Nov 2025
Установка Minikube на Ubuntu 20.04
Установка Minikube на Ubuntu 20.04

Схема локального однoузлового кластера Minikube на Ubuntu

О чём эта инструкция

Minikube — это инструмент с открытым исходным кодом для запуска однoузлового кластера Kubernetes локально. Он удобен для разработки и тестирования. В этой инструкции показано, как установить Minikube на сервер или рабочую станцию с Ubuntu 20.04 и подготовить базовое окружение для работы.

Важно: инструкция рассчитана на локальную или тестовую среду. Для production рекомендуется использовать управляемые или многокластерные решения и следовать корпоративным требованиям по безопасности.

Кому подходит эта инструкция

  • Разработчикам, которые хотят развернуть локальный Kubernetes для тестов.
  • Инженерам DevOps для изучения Kubernetes локально.
  • Тем, кто готов управлять системой с правами root или sudo.

Требования

  • Ubuntu 20.04 (рабочая станция или сервер).
  • Не менее 4 ГБ оперативной памяти и 2 CPU.
  • Аппаратная виртуализация должна быть включена (Intel VT-x / AMD-V).
  • Настроен пароль root или доступ через sudo.

Быстрая подготовка системы

Перед установкой обновите пакеты и установите зависимости:

apt-get update -y

Установите curl, wget, transport для apt и VirtualBox (если планируете использовать драйвер virtualbox):

apt-get install curl wget apt-transport-https virtualbox virtualbox-ext-pack -y

Примечание: Minikube поддерживает несколько драйверов (docker, virtualbox, kvm, none). Для большинства пользователей удобнее использовать драйвер docker.

Установка Docker

Minikube использует контейнеры. Установите Docker:

apt-get install docker.io -y

Запустите и включите Docker при старте системы:

systemctl start docker
systemctl enable docker

Проверьте версию Docker:

docker --version

Ожидаемый вывод (пример):

Docker version 19.03.8, build afacb8b7f0

Установка Minikube

Minikube не всегда доступен в стандартных репозиториях Ubuntu. Скачайте официальный бинарник и поместите его в /usr/local/bin:

wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
cp minikube-linux-amd64 /usr/local/bin/minikube
chmod 755 /usr/local/bin/minikube

Проверьте версию Minikube:

minikube version

Пример вывода:

minikube version: v1.16.0
commit: 9f1e482427589ff8451c4723b6ba53bb9742fbb1

Установка kubectl

kubectl — утилита для управления Kubernetes. Добавьте GPG-ключ и репозиторий, затем установите kubectl и kubeadm:

curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" | tee /etc/apt/sources.list.d/kubernetes.list

Обновите кэш и установите инструменты:

apt-get update -y
apt-get install kubectl kubeadm kubectl -y

Запуск Minikube

После установки всех компонентов запустите Minikube:

minikube start

Пример итогового вывода (сокращённо) показывает, что кластер поднят и kubectl настроен:

* minikube v1.16.0 on Ubuntu 20.04 (kvm/amd64)
* Using the none driver based on user configuration
* Starting control plane node minikube in cluster minikube
* Running on localhost (CPUs=2, Memory=3936MB, Disk=100726MB) ...
* Done! kubectl is now configured to use "minikube" cluster and "default" namespace by default

Важно: если вы используете драйвер none, Minikube работает под root и kubeconfig будет в /root. Для использования под обычным пользователем выполните:

sudo mv /root/.kube /root/.minikube $HOME
sudo chown -R $USER $HOME/.kube $HOME/.minikube

Или установите переменную окружения CHANGE_MINIKUBE_NONE_USER=true, если хотите автоматизировать этот шаг.

Проверка состояния кластера

Просмотреть информацию о кластере:

kubectl cluster-info

Пример вывода:

Kubernetes control plane is running at https://45.58.38.77:8443
KubeDNS is running at https://45.58.38.77:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

Посмотреть текущую конфигурацию kubectl:

kubectl config view

Список нод:

kubectl get nodes

Статус Minikube:

minikube status

Список pod’ов в system namespace:

kubectl get pods --all-namespaces

Доступ к Kubernetes Dashboard

Minikube включает аддоны. Посмотреть доступные:

minikube addons list

Включить dashboard и получить URL:

minikube dashboard --url

Пример URL, возвращаемый командой:

http://127.0.0.1:36499/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/

Откройте этот адрес в браузере на той же машине, где запущен Minikube, или используйте порт-форвардинг/ssh-туннель для доступа удалённо.

Частые проблемы и отладка (Runbook)

  1. Minikube не стартует — проверьте логи:
minikube logs
  1. Проблемы с драйвером docker / virtualbox — убедитесь, что соответствующий сервис запущен и у вас есть права.
  2. kubelet падает — проверьте системный журнал:
journalctl -u kubelet -xe
  1. kubectl не видит кластер — проверьте KUBECONFIG и права доступа к файлам в ~/.kube.

Краткий план отката (rollback):

  • Остановите Minikube: minikube stop
  • Удалите профиль: minikube delete
  • Проверьте и очистите файлы ~/.kube и ~/.minikube при необходимости

Безопасность и hardening (базовые советы)

  • Не запускайте драйвер none в производственной среде.
  • Ограничьте доступ к kubeconfig и ключам: chown и chmod на файлы в ~/.kube.
  • Используйте RBAC для управления доступом в кластере даже в тестовых окружениях.
  • Периодически обновляйте Minikube и компоненты Kubernetes.

Альтернативные подходы

  • minikube с драйвером docker — простая локальная конфигурация без root.
  • kind (Kubernetes IN Docker) — запускает многоконтейнерные кластеры в Docker и удобен для CI.
  • k3s — облегчённый Kubernetes для небольших машин и edge.

Когда минikube не подходит

  • Для production окружений.
  • Если необходимы высокодоступные мульти-нодовые кластеры.
  • Если требуется интеграция с корпоративным облаком и сетевыми политиками на уровне провайдера.

Рекомендации для разных ролей

  • Разработчик: запускать minikube start –driver=docker, использовать локальные образа с minikube image load.
  • DevOps: автоматизировать создание профилей и тестовые деплои через CI, хранить конфигурации как код.
  • Системный администратор: следить за ресурсами хоста, обеспечивать обновления и бэкапы конфигураций.

Коробка с фактами (Fact box)

  • Минимальные ресурсы: 2 CPU, 4 ГБ RAM. Для удобной работы рекомендуются 4+ GB.
  • Популярные драйверы: docker, virtualbox, kvm2, none.
  • kubectl нужен локально для управления кластерами.

Краткий глоссарий (1 строка)

  • kubelet: агент на ноде, который управляет контейнерами.
  • kubectl: CLI для управления Kubernetes.
  • kubeadm: инструмент для инициации кластера (используется при ручной установки).
  • Minikube: локальный инструмент для запуска Kubernetes в одном узле.

Совместимость и миграция

  • Minikube версии часто тестируются с конкретными версиями Kubernetes; перед апгрейдом проверьте совместимость версий в официальной документации.
  • Для миграции рабочих нагрузок в облачный кластер экспортируйте манифесты и образа, используйте CI/CD для деплоя.

Контроль качества: критерии приёмки

  • kubectl get nodes показывает Ready.
  • Все системные pod’ы в kube-system в статусе Running.
  • Dashboard доступен по URL при локальном запуске.

Резюме

  • Подготовьте систему и установите Docker.
  • Скачайте Minikube, сделайте бинарник исполняемым и установите kubectl.
  • Запустите minikube start и проверьте состояние кластера.
  • Для доступа к Dashboard используйте minikube dashboard –url.
  • Используйте советы по безопасности, альтернативные инструменты и runbook при проблемах.

Если у вас остались вопросы по конкретным шагам или вы хотите скрипт установки/ansible-плейбук, напишите, и я подготовлю шаблон.

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

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

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

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

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро