Демо-стенд kubegoat на vagrant

Requirements

Предупреждение, относящееся ко всем пунктам касательно установки софта: СТАВЬТЕ ТОЛЬКО АКТУАЛЬНЫЕ ВЕРСИИ С ОФИЦИАЛЬНЫХ САЙТОВ

Это важно, потому что в репозиториях убунты\дебиана находятся сильно устаревшие пакеты и вагрант из "apt-get" не будет работать с последней версией virtulabox. Могут также не сработать какие-то автоматизации или указания параметров, потому что "хз почему", вы только потеряете время на то, чтобы разобраться что не работает.

Я тестировал стенд на версиях vbox 6.1.18, vagrant 2.2.14, ansible 2.10.*

Для запуска стенда вам необходимо:

  • ОС linux/Macos. Для windows запустить стенд реально, с некоторыми танцами с бубном (на самом деле ничего сложного), но у меня нет возможности это проверить.
  • Не менее 6 ядрер процессора и не менее 6 Гб оперативной памяти. Эти настройки вы можете подкрутить в Vagrantfile. Но те что сейчас установлены - минимально необходимые (они же комфортные). Если у вас совсем прям все плохо по памяти, разворачивайте по 1 ноде, изменяя значение N в Vagrantfile и выполняя vagrant up --provision. Будет очень долго, но возможно сработает.
  • Virtualbox - качаем версию с официального сайта (для macos можно взять из brew).
  • Vagrant - качаем версию с официального сайта (для macos можно взять из brew).
  • Ansible - можно установить через pip (mac, linux) - предпочтительный вариант. Но в целом хватит и версии из репозиториев linux/brew.

Запуск стенда

  1. склонировать себе репозиторий и перейти в него
  2. vagrant up # это действие поднимет вам всю инфраструктуру - оно может выполняться до 10-20 минут, в зависимости от железа и вашей скорости интернета.

known issues

На текущей версии k8s не поднимается под для DIND, требуется изменить настройки деплоя. Я намеренно это не стал править, чтобы студент сам разобрался и исправил. Автор принял мой MR, теперь этой проблемы быть не должно