Minikube windows 10 install

Minikube on Windows 10 with Hyper-V

Dec 16, 2017 · 4 min read

Getting started with Kubernetes can be daunting when you don’t know where to begin. Luckily the folks at Kubernetes have a great platform you can run locally on your laptop. This will setup up a basic test bed for kubernetes called Minikube. I will quickly walk you through getting up and running with minikube.

Pre-reqs before getting started

Open a command line window with administrator privileges.

Then use the chocolatey package manager to install minikube.

Next install the kubernetes command line program with the chocolatey package manager.

Once that is installed you will need to make some changes to the Windows Hyper-V manager. I will not get into the reasons why we need to make some of these changes, but the short answer is so you don’t have to do more work to run this along side other software packages like Docker-For-Windows that also use Windows Hyper-V, seamlessly.

Open the Hyper-V Manager.

Once in the Hyper-V Manager, on the right panel, select the Virtual Switch Manager.

Next we will create a virtual switch for minikube. Select New virtual network switch on the right hand side, select External for the network type, and then press the Create Virtual Switch button.

Name the switch Primary Virtual Switch and click the apply button.

Once you have the switch created we are now ready to start minikube. Run the following command to start the minikube VM with our applied changes.

Once the VM is running we will have two more steps to do to address a bug in minikube for Windows. We need to turn off Dynamic Memory for the minikube VM. There is bug reported on this issue which can be found here . Once this bug has been resolved, I will update the instructions here.

In your administrator command line window stop the minikube VM with the following command.

Once minikube has stopped, open the Hyper-V Manager again and right click on the minikube VM and select settings.

Select the Memory option on the left panel, then de-select Enable Dynamic Memory, and then click Apply button.

Close Hyper-V manager and then return to the administrator command line window and restart minikube.

Once minikube is restarted you should be ready to go. We will confirm the installation is ready by checking a couple of things.

In the command line window, enter the following command.

You should see the following result.

If you are a little more visual and want to see the kubernetes dashboard, you can open that up by typing in the following command in the command line window.

That will open up the dashboard window in your default browser.

Now you are ready to explore and start your journey to learning Kubernetes.

Side Note on IPv6 Networking and Minikube on Windows 10

  • I got some feedback that some users were experiencing a problem with IPv6 networking. There are some cases where minikube will not work with the network switch we created earlier in this guide. To correct this you will need to disable IPv6 protocol if this is the case. The IPv6 issue is reported on GitHub.
  • The following guide will help you quickly disable IPv6: https://medium.com/@JockDaRock/disabling-ipv6-on-network-adapter-windows-10-5fad010bca75
Читайте также:  Processing vulkan shaders dota 2 linux

If you would like to take your Kubernetes experience to the next level, try reserving a free sandbox lab environment for Kubernetes from Cisco DevNet Sandbox. Use the following guides to get started with Kubernetes in DevNet Sandbox.

trisberg / Minikube-on-Windows10.md

Setting up Minikube and Helm on Windows 10

Start with a basic Windows 10 Home or Pro installation. Some of the executables require to be on the system path. Simply create a bin folder under the home folder, add that folder to the «User variable» Path via «Environment Variables for your account» in «Windows Settings». That way any executable copied to this bin folder will automatically be on the path.

Install 7-Zip to be able to extract a variety of archive formats. After this install any typical apps needed for software development like Git and Visual Studio Code.

Also download curl and extract the package files and copy the files in the AMD64 folder to the bin folder. If, when running curl from the PowerShell command line there is a prompt saying something like «cmdlet Invoke-WebRequest . » then this is from an alias that seems to be installed by default. Remove the alias by running Remove-item alias:curl from the command line.

Minikube and kubectl

Next up is installing Minikube which runs a single node Kubernetes cluster on a local system.

There are multiple ways to get Minikube running on Windows, but for the time being, the least involved installation consists of installing «Docker Tool Box for Windows» together with Minikube.

NOTE: Minikube requires a Hypervisor. The Docker Tool Box for Windows includes VirtualBox, so this step should not be needed if following these instructions.

Install Docker Tool Box for Windows accepting all defaults including the VirtualBox install.

Next, download the latest Minikube minikube-windows-amd64 release. Rename the downloaded file to minikube.exe and place it on the system path in the bin folder.

Minikube also requires kubectl which is the Kubernetes CLI. The easiest way to install this is to download kubectl using curl. Use this curl command:

and then move this executable to the bin folder.

Start the «Docker Quickstart Terminal» and then run Minikube by just entering:

from the PowerShell command line.

In order to share the Docker environment that Minikube uses run

Установка Minikube

На этой странице рассказано, как установить Minikube, инструмент для запуска одноузлового кластера Kubernetes на виртуальной машине в персональном компьютере.

Подготовка к работе

Чтобы проверить, поддерживается ли виртуализация в Linux, выполните следующую команду и проверьте, что вывод не пустой:

Чтобы проверить, поддерживается ли виртуализация в macOS, выполните следующую команду в терминале:

Если вы видите VMX в выводе (должен быть окрашенным), значит в вашем компьютере поддерживается виртуализация VT-x.

Чтобы проверить, поддерживается ли виртуализация в Windows 8 и выше, выполните следующую команду в Windows Terminal или в командной строке.

Если вы видите следующий вывод, значит виртуализация поддерживается в Windows.

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

Установка minikube

Установка kubectl

Убедитесь, что у вас установлен kubectl. Вы можете установить kubectl согласно инструкциям в разделе Установка и настройка kubectl.

Установка Hypervisor

Если у вас ещё не установлен гипервизор, установите один из них:

• KVM, который также использует QEMU

Minikube также поддерживает опцию —vm-driver=none , которая запускает компоненты Kubernetes на хосте, а не на виртуальной машине. Для использования этого драйвера требуется только Docker и Linux, но не гипервизор.

Читайте также:  Windows устройство не готово ошибка

Если вы используете драйвер none в Debian и его производных, используйте пакеты .deb для Docker, а не snap-пакет, который не работает с Minikube. Вы можете скачать .deb -пакеты с сайта Docker.

Minikube также поддерживает vm-driver=podman , похожий на драйвер Docker. Podman, работающий с правами суперпользователя (пользователь root) — это лучший способ гарантировать вашим контейнерам полный доступ ко всем возможностям в системе.

Установка Minikube через пакет

Доступны экспериментальные пакеты для Minikube; Вы можете загрузить пакеты для Linux (AMD64) со страницы релизов Minikube на GitHub.

Используйте пакетный менеджер в вашем дистрибутиве Linux для установки нужного пакета.

Установка Minikube с помощью прямой ссылки

Вы также можете загрузить двоичный файл и использовать его вместо установки пакета:

Чтобы исполняемый файл Minikube был доступен из любой директории выполните следующие команды:

Установка Minikube через Homebrew

В качестве ещё одной альтернативы вы можете установить Minikube с помощью Linux Homebrew:

Установка kubectl

Убедитесь, что у вас установлен kubectl. Вы можете установить kubectl согласно инструкциям в разделе Установка и настройка kubectl.

Установка Hypervisor

Если у вас ещё не установлен гипервизор, установите один из них:

Установка Minikube

Простейший способ установить Minikube в macOS — использовать Homebrew:

Вы также можете установить его в macOS, загрузив двоичный файл:

Чтобы исполняемый файл Minikube был доступен из любой директории выполните следующие команды:

Установка kubectl

Убедитесь, что у вас установлен kubectl. Вы можете установить kubectl согласно инструкциям в разделе Установка и настройка kubectl.

Установка Hypervisor

Если у вас ещё не установлен гипервизор, установите один из них:

Установка Minikube с помощью Chocolatey

Простейший способ установить Minikube в Windows — использовать Chocolatey (запущенный с правами администратора):

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

Установка Minikube с помощью исполняемого файла установки

Для ручной установки Minikube в Windows с помощью установщика Windows, загрузите и запустите установщик minikube-installer.exe .

Установка Minikube с помощью прямой ссылки

Для ручной установки Minikube в Windows, загрузите minikube-windows-amd64 , переименуйте его в minikube.exe и добавьте его в директорию исполняемых файлов.

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

Чтобы убедиться в том, что гипервизор и Minikube были установлены корректно, выполните следующую команду, которая запускает локальный кластер Kubernetes:

После того, как команда minikube start отработала успешно, выполните команду для проверки состояния кластера:

Если ваш кластер запущен, то в выводе команды minikube status должно быть что-то вроде этого:

Теперь, когда вы убедились, что Minikube работает с выбранным вами гипервизором, вы можете продолжить использовать Minikube или остановить кластер. Чтобы остановить кластер выполните команду ниже:

Очистка локального состояния

Если вы уже установили Minikube, то выполните следующую команду:

В таком случае команда minikube start вернёт ошибку:

Чтобы исправить это, нужно очистить локальное состояние:

Что дальше

Обратная связь

Была ли эта страница полезной?

Спасибо за отзыв! Если у вас есть конкретный вопрос об использовании Kubernetes, спрашивайте Stack Overflow. Сообщите о проблеме в репозитории GitHub, если вы хотите сообщить о проблеме или предложить улучшение.

Начало работы в Kubernetes с помощью Minikube

Предисловие переводчика: Minikube — удобный инструмент, который мы применяем в компании для локальных экспериментов с Kubernetes (в частности, для выполнения лабораторных работ по этой системе при обучении сотрудников). Эта статья показалась мне полезной во время моего знакомства с Kubernetes. Она написана год назад автором, использующим Mac OS X, а я проделывал все операции в Ubuntu 16.04 совсем недавно и с актуальными версиями основного софта: Minikube 0.20, Docker 17.06.0-ce, kubectl 1.7.0. Поэтому все выводы команд были переделаны под новые версии и незначительно отличаются от приведённых в оригинальной статье.
Kubernetes — система оркестровки контейнеров с открытым исходным кодом, готовая для production и предназначенная для автоматизации размещения, масштабирования и управления контейнерами.

Читайте также:  Xerox 3119 не работает сканер windows 10

Это упрощенная версия руководства Hello Minikube, в которой Minikube используется для запуска локального кластера Kubernetes вместо Google Container Engine, благодаря чему отпадает необходимость в наличии облачной платформы.

Руководство написано под Mac OS X, но представленные ниже команды подойдут и для любой другой ОС. (Как уже отмечалось выше, всё было воспроизведено и адаптировано под Linux — прим. перев.)

Предварительные условия

    Проверьте, что ваша система поддерживает виртуализацию VT-x/AMD-v с помощью команды:

Если команда вернула непустой результат — можно продолжать.

Установите последний VirtualBox или VMware Fusion. В этом руководстве используется VirtualBox. Если вы устанавливали Docker Toolbox, то, возможно, у вас уже есть установленный VirtualBox.

    Проверить в Linux (Ubuntu/Debian):

Установите последний Minikube для вашей ОС и архитектуры:

Прим. перев.: sudo mv minikube /usr/local/bin/ можно убрать или поменять, если вы хотите использовать другой путь.

Установите kubectl для вашей ОС и архитектуры:

Прим. перев.: Для Ubuntu 16.04 и старше еще доступен snap-пакет:

Протестируйте свою инсталляцию Minikube

Мы можем увидеть список запущенных в кластере подов:

Установка пода hello-minikube

Проект Minikube на GitHub предлагает демо-версию для быстрого старта, использующую собранный Docker-образ hello-minikube . Так как мы уже запустили кластер, то первый шаг ( minikube start ) можно пропустить.

Теперь давайте запустим встроенный под hello-minikube . Для этого пода будет создан предварительно настроенный deployment:

С помощью следующих команд мы можем посмотреть на актуальные списки подов и deployments, чтобы убедиться в случившихся изменениях:

Для доступа к сервису hello-minikube нужно открыть ему внешний IP командой:

Примечание: необходимо использовать тип NodePort , т.к. Minikube не поддерживает сервис LoadBalancer . Так можно убедиться, что сервис стал открыт:

Теперь мы можем либо с помощью curl из командной строки, либо браузером открыть ссылку на сервис. Чтобы узнать его внешний IP и порт, предварительно воспользуемся командой:

Примечание: IP-адрес, который управляется VirtualBox’ом, может изменяться. Узнайте его с помощью команды minikube ip или в выводе ifconfig :

После того, как мы закончили с hello-minikube , можем удалить его deployment и сервис, освободив ресурсы и проверив, что все действительно удалено:

Сборка и установка сервиса с Docker

Этот пример несколько сложнее и описывает создание небольшого Node.js-сервера, сборки его в образ Docker с использованием Dockerfile и запуск в Kubernetes.

Создадим простой Node.js-проект hello-node :

Создадим простой HTTP-сервер, который возвращает «Hello World!»:

Поправим Dockerfile , объявив, что образ использует node 4.4 и контейнер запускает сервис с помощью файла server.js :

Перед запуском каких-либо команд Docker нужно задать окружение. Аналогично запуску eval $(docker-machine env) , мы создаем переменные окружения Docker для Minikube с помощью команды minikube docker-env :

Теперь соберем образ. Это займет некоторое время, т.к. для разрешения зависимостей будут подгружены образы из Docker Hub, такие как node 4.4. По завершении вы получите новый Docker-образ, готовый к деплою (завершающая точка . в конце команды говорит Docker собрать образ из текущей директории ­— прим. перев.):

Теперь мы можем разместить под hello-node в локальный кластер Kubernetes с помощью kubectl :

Как и прежде, необходимо присвоить сервису внешний IP и порт, чтобы получить к нему доступ с помощью curl :

Победа! Мы успешно написали, собрали и разместили простой сервис Node.js, используя Docker-образ в локальном кластере Kubernetes.

Этот игрушечный проект предназначен для начинающих, желающих попробовать Kubernetes локально перед тем, как вы начнете публиковать поды в платных облачных платформах. Он позволяет вам сделать первые шаги без лишних затрат на эти эксперименты.

Уборка

Не забудьте удалить сервис и deployment для hello-node и выключить службу minikube , когда закончите:

P.S. От переводчика

Более полную документацию по локальному запуску Kubernetes с Minikube можно найти на сайте проекта. Вам также могут быть интересны следующие статьи из нашего блога:

Оцените статью