Найти тему
Merion Academy

Установка Minikube на Windows Hyper-V Server 2019

Оглавление

👋🏻 Привет! С вами снова Merion Academy - платформа доступного IT образования. Сегодня мы поговорим про установку Minikube на Windows Hyper-V Server 2019. Гооу.

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

В этой статье рассмотрим установку Minikube на Windows Hyper-V Server 2019, его конфигурацию и работу с приложениями и их развертываниями.

Что такое Minikube?

Minikube это простой и быстрый способ создать локальный кластер Kubernetes. Он работает на MacOs, Lunix и Windows системах. Также это отличный вариант для разработчиков и тех, кто еще плохо знаком или только начинает изучать Kubernetes.

Некоторые возможности и особенности решения Minikube:

  • Кроссплатформенность, т.е. поддерживает все основные ОС: Linux, macOS и Windows;
  • В зависимости от возможностей, можно развернуть в виртуальной машине, контейнере или на железо;
  • Поддержка Docker;
  • Наличие драйверов для VmWare, VirtualBox, Docker, KVM, Hyper-V и др.;
  • Поддержка последних версий Kubernetes;
  • Docker API для быстрого развертывания образов;
  • Использование дополнений (addons);
  • Minikube обладает интегрированной поддержкой Dashboard Kubernetes

Установка Minikube

Для работы в Minikube на Hyper-v нужно выполнить следующие действия:

  1. Проверить соответствие минимальным требованиям
  2. Предварительно настроить Hyper-v server
  3. Выбрать диспетчер пакетов для установки Minikube
  4. Установить Minikube
  5. Запустить кластер Kubernetes
  6. Подключиться к кластеру, посмотреть дашборд

1. Проверка соответствия минимальным требованиям:

Для развертывания и использования Minikube в соответствии с его документацией должны удовлетворяться следующие требования:

  • 2 GB свободной оперативной памяти
  • 2 или более CPU
  • От 20 GB или более свободного дискового пространства
  • Наличие интернет
  • Docker container или виртуальная машина, например, VirtualBox или Hyper-V

2. Настройка Hyper-v server

Какой-то специальной настройки Hyper-v не требует, должны выполняться стандартные требования для работы Hyper-v: 64-разрядный процессор с преобразованием адресов второго уровня (SLAT), достаточный объем оперативной памяти и быстрые диски. Поддержка виртуализации в BIOS/UEFI (у Intel - Intel VT, у AMD - AMD-V). Чтобы виртуальные системы имели доступ в интернет, нужно заранее создать внешний виртуальный коммутатор.

Ext Network Hyper-v
Ext Network Hyper-v

Вначале посмотрим доступные сетевые адаптеры:

Get-NetAdapter

Найденное имя адаптера добавим в команду ниже.

Создать новый внешний сетевой адаптер можно командой PowerShell

New-VMSwitch -name ExternalSwitch -NetAdapterName "Ethernet 2" -AllowManagementOS $true

Get-NetAdapter
Get-NetAdapter

В противном случае при первом запуске Minikube покажет ошибку:

! StartHost failed, but will try again: creating host: create: precreate: no External vswitch nor Default Switch found. A valid vswitch must be available for this command to run.

Попросит выполнить minikube delete и отправит читать документацию: https://docs.docker.com/machine/drivers/hyper-v/

3. Диспетчер пакетов

В этой статье используется Windows Server 2019, и мы будем использовать Chocolatey, так как другой диспетчер пакетов - Windows Package Manager поддерживает только Windows 10.

Из PowerShell выполним команды:

iwr https://chocolatey.org/install.ps1 -outfile C:\install.ps1
c:\install.ps1

  chocolatey
chocolatey

4. Инсталляция Minikube

После установки Chocolatey нужно выполнить команду:

choco install minikube

choco install minikube
choco install minikube

5. Запуск

Если после выполнения команды minikube start он не запускается, значит нужно установить соответствующие драйвера и провайдер

minikube star
minikube star

Для запуска с привилегированными правами, выполним:

runas /noprofile /user:администратор powershell

В нашем случае для Hyper-V выполняем:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

Проверим установку компонентов:

Get-WindowsFeature –Name –hyper-v

Get-WindowsFeature –Name –hyper-v
Get-WindowsFeature –Name –hyper-v

Выяснилось, что актуальная версия Minikube не работает c Hyper-v, понизим версию командой

choco install minikube --version 1.6.2 --allow-downgrade

затем удалим minikube delete и снова запустим

minikube start

minikube start
minikube start

6. Подключение

Проверить, что VM запущена, поможет команда PowerShell

Get-vm

Get-vm
Get-vm

Просмотреть, что окружение запущено можно командой kubectl get po –A

Подготовим хостовую систему для работы браузеров, установив дополнительные компоненты:

Add-WindowsCapability -Online -Name ServerCore.AppCompatibility~~~~0.0.1.0

И перезагрузим сервер, затем выполним команду minikube dashboard

minikube dashboard
minikube dashboard

На сервер предварительно скопирован браузер Firefox, в нем откроем ссылку и убедимся в работоспособности.

minikube dashboard
minikube dashboard

--
До встречи на нашей образовательной платформе.
Merion Academy - платформа доступного IT образования.