minishift_up
minishift-up
Устанавливает последнюю версию minishift и создает экземпляр minishift.
Выполняет следующие задачи:
- Загружает и устанавливает последнюю версию minishift
- Копирует последнюю версию oc из ~/.minishift/cache/oc в директорию в вашем PATH
- Устанавливает драйвер Docker Machine
- Создает экземпляр minishift
- Предоставляет права администратора кластера учетной записи admin
Доступ к реестру
После выполнения роли и запуска minishift вы сможете получить доступ к внутреннему реестру, установив команду minishift docker-env eval:
eval $(minishift docker-env)
docker login -u developer -p $(oc whoami -t)
Поддерживаемые платформы
- Debian
- Red Hat
- OSX
Предварительные условия
- Ansible 2.4+
- Перед запуском роли очистите вашу терминальную сессию от любых переменных окружения DOCKER*
- Для установки пакетов требуется доступ sudo
- git (если используете общие дополнения)
- gnu tar (установить с помощью brew install gnu-tar)
OSX
Подключение /Users к VM Minishift
Когда VM Minishift запущен, объем /Users будет подключен к VM. Это делается путем установки переменной окружения XHYVE_VIRTIO_9P=true
.
Linux
- Установлен и работает KVM. Роль устанавливает драйвер Docker Machine для KVM, но предполагает, что KVM уже установлен и работает.
- Ansible 2.4+
Fedora
- Установите пакеты python2-dnf и libselinux-python
Известные проблемы
Fedora
Прежде чем получить доступ к демоню Docker на экземпляре Minishift, вам нужно изменить скрипт
/etc/sysconfig/docker
, чтобы предотвратить переопределение переменной окружения DOCKER_CERT_PATH. Отредактируйте файл и измените строкуDOCKER_CERT_PATH=/etc/docker
на следующее:if [ -z "${DOCKER_CERT_PATH}" ]; then DOCKER_CERT_PATH=/etc/docker fi
По умолчанию
minishift_repo: minishift/minishift
Репозиторий, где можно найти бинарный файл minishift
minishift_github_url: https://api.github.com/repos
URL для доступа к GitHub API.
minishift_release_tag_name: ""
По умолчанию устанавливается последняя версия. Используйте для установки конкретной версии minishift.
minishift_dest: /usr/local/bin**
Место для установки бинарного файла minishift.
minishift_force_install: yes
Перезаписать существующий бинарный файл minishift в {{ minishift_dest }}
minishift_restart: yes
Остановить и пересоздать существующий экземпляр minishift.
minishift_delete: yes
Выполнить
minishift delete
и удалить~/.minishift
. Если вы обновляетесь, вам, скорее всего, потребуется это сделать.
minishift_start_options: []
Предоставьте список опций для передачи команде
minishift start
. Например:['--memory', '4GB', '--cpus', '4']
openshift_client_dest: /usr/local/bin
Место для установки бинарного файла клиента OpenShift.
openshift_force_client_copy: yes
Перезаписать существующий бинарный файл клиента OpenShift в {{ openshift_client_dest }}.
minishift_experimental: no
Включить экспериментальные функции
minishift_service_catalog: no
Включить компонент каталога сервисов
use_hyperkit: no
Для MaxOSX вы можете попробовать использовать hyperkit вместо xhyve, установив это значение в yes
minishift_addons_enable no
Чтобы использовать дополнения, установите в yes
minishift_addons_community_enable: no
Чтобы использовать общие дополнения, установите в yes и укажите путь
minishift_addons_community_path: $HOME\Downloads\git
Установите это значение в путь к общим дополнениям (должен существовать)
minishift_redhat_login: '123456|magicalyak' minishift_redhat_password: 'token_stuff_stuff_token'
Установите это значение в имя пользователя и пароль учетной записи сервиса контейнеров Red Hat
Пример плейбука
Ниже приведен пример плейбука, который включает все параметры по умолчанию. Вы найдете пример этого в корне структуры проекта.
---
- name: Установить minishift
hosts: localhost
connection: local
gather_facts: yes
roles:
- role: magicalyak.minishift_nginx
minishift_repo: minishift/minishift
minishift_github_url: https://api.github.com/repos
minishift_release_tag_name: ""
minishift_dest: /usr/local/bin
minishift_force_install: yes
minishift_restart: yes
minishift_delete: yes
minishift_start_options: []
openshift_client_dest: /usr/local/bin
openshift_force_client_copy: yes
minishift_experimental: no
minishift_service_catalog: no
use_hyperkit: yes
minishift_addons_enable: no
minishift_addons:
minishift_addons:
anyuid: no
registry_route: no
admissions_webhook: no
htpasswd_identity_provider: no
xpaas: no
redhat_registry_logon: no
che: no
prometheus: no
admin_user: yes
minishift_addons_community_enable: no
minishift_addons_community_path: $HOME/Downloads/git
minishift_addons_community:
ansible_service_broker: no
dotnet: no
example: no
grafana: no
helm: no
istio: no
management_infra: no
workshop: no
eap_cd: no
После того как вы установите роль, скопируйте minishift-nginx.yml в свою проектную директорию и выполните его с опцией --ask-become-pass
. Например:
# Установите роль
$ ansible-galaxy install magicalyak.minishift_up
# Скопируйте плейбук из вашего каталога ролей в текущую рабочую директорию
$ cp ${ANSIBLE_ROLES_PATH}/magicalyak.minishift_up/minishift-up.yml .
# Создайте файл инвентаризации для localhost
$ echo "localhost">./inventory
# Запустите плейбук
$ ansible-playbook -i inventory --ask-become-pass minishift-up.yml
Зависимости
git (если используете общие дополнения)
gnu-tar (установить с помощью brew install gnu-tar)
Лицензия
Apache v2
Автор
Благодарности
Большая часть этого была взята из роли Криса Хаускнехта minishift-up-role на ansible galaxy @chouseknecht
ansible-galaxy install magicalyak/minishift-up