magicalyak.minishift_up

minishift-up

Instaluje najnowszą wersję binarki minishift i tworzy instancję minishift.

Wykonuje następujące zadania:

  • Pobiera i instaluje najnowszą binarkę minishift
  • Kopiuje najnowszą binarkę oc z ~/.minishift/cache/oc do katalogu w twoim PATH
  • Instaluje sterownik Docker Machine
  • Tworzy instancję minishift
  • Przyznaje uprawnienia administratora klastru konto admin

Uzyskiwanie dostępu do rejestru

Po wykonaniu roli i uruchomieniu minishift, będziesz mógł uzyskać dostęp do wewnętrznego rejestru, ustawiając polecenie minishift docker-env eval:

    eval $(minishift docker-env)
    docker login -u developer -p $(oc whoami -t)

Obsługiwane platformy

  • Debian
  • Red Hat
  • OSX

Wymagania wstępne

  • Ansible 2.4+
  • Przed uruchomieniem roli, wyczyść sesję terminala z wszelkich zmiennych środowiskowych DOCKER*
  • Wymagany dostęp sudo do instalacji pakietów
  • git (jeśli korzystasz z dodatków społeczności)
  • gnu tar (brew install gnu-tar)

OSX

Montowanie katalogu /Users do maszyny wirtualnej Minishift

Gdy maszyna wirtualna Minishift jest uruchomiona, wolumen /Users będzie zamontowany do VM. Można to zrobić, ustawiając zmienną środowiskową XHYVE_VIRTIO_9P=true.

Linux

  • Zainstalowany i działający KVM. Rola instaluje sterownik Docker Machine dla KVM, ale zakłada, że KVM jest już zainstalowany i działa.
  • Ansible 2.4+

Fedora

  • Zainstaluj pakiety python2-dnf i libselinux-python

Znane problemy

Fedora

  • Przed uzyskaniem dostępu do demona Dockera na instancji Minishift, będziesz musiał zmodyfikować skrypt /etc/sysconfig/docker, aby zapobiec nadpisywaniu zmiennej środowiskowej DOCKER_CERT_PATH. Edytuj plik i zmień linię DOCKER_CERT_PATH=/etc/docker na:
if [ -z "${DOCKER_CERT_PATH}" ]; then
    DOCKER_CERT_PATH=/etc/docker
fi

Domyślne ustawienia

minishift_repo: minishift/minishift

Repozytorium, w którym znajduje się binarka minishift

minishift_github_url: https://api.github.com/repos

URL do dostępu do API GitHub.

minishift_release_tag_name: ""

Domyślnie instaluje najnowsze wydanie. Użyj do zainstalowania konkretnego wydania minishift.

minishift_dest: /usr/local/bin**

Gdzie zainstalować binarkę minishift.

minishift_force_install: yes

Nadpisuje istniejącą binarkę minishift znalezioną w {{ minishift_dest }}

minishift_restart: yes

Zatrzymuje i ponownie tworzy istniejącą instancję minishift.

minishift_delete: yes

Wykonuje minishift delete i usuwa ~/.minishift. Jeśli wykonujesz aktualizację, prawdopodobnie chcesz to zrobić.

minishift_start_options: []

Podaj listę opcji do przekazania do minishift start. Na przykład: ['--memory', '4GB', '--cpus', '4']

openshift_client_dest: /usr/local/bin

Gdzie zainstalować binarkę klienta OpenShift.

openshift_force_client_copy: yes

Nadpisuje istniejącą binarkę klienta OpenShift znalezioną w {{ openshift_client_dest }}.

minishift_experimental: no

Włącz funkcje eksperymentalne

minishift_service_catalog: no

Włącz komponent katalogu usług

use_hyperkit: no

Dla MaxOSX możesz "spróbować" użyć hyperkit zamiast xhyve, ustawiając tę opcję na tak

minishift_addons_enable no

Aby używać dodatków, ustaw na tak

minishift_addons_community_enable: no

Aby używać dodatków społeczności, ustaw na tak i ustaw ścieżkę

minishift_addons_community_path: $HOME/Downloads/git

Ustaw to na ścieżkę, w której zainstalujesz dodatki społeczności (musi istnieć)

minishift_redhat_login: '123456|magicalyak' minishift_redhat_password: 'token_stuff_stuff_token'

Ustaw to na nazwę użytkownika i hasło konta usług kontenerowych RedHat

Przykładowy playbook

Poniżej znajduje się przykładowy playbook, który zawiera wszystkie domyślne parametry. Znajdziesz przykład tego w katalogu głównym drzewa projektu.

---
- name: Instalacja minishift
  hosts: localhost
  connection: local
  gather_facts: yes
  roles:
    - rola: 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

Po zainstalowaniu roli, skopiuj minishift-nginx.yml do swojego katalogu projektu i wykonaj go, używając opcji --ask-become-pass. Na przykład:

# Zainstaluj rolę
$ ansible-galaxy install magicalyak.minishift_up

# Skopiuj playbook z twojej ścieżki ról do bieżącego katalogu roboczego
$ cp ${ANSIBLE_ROLES_PATH}/magicalyak.minishift_up/minishift-up.yml .

# Utwórz plik inwentaryzacyjny localhost
$ echo "localhost">./inventory

# Uruchom playbook
$ ansible-playbook -i inventory --ask-become-pass minishift-up.yml

Zależności

git (jeśli korzystasz z dodatków społeczności) gnu-tar (brew install gnu-tar)

Licencja

Apache v2

Autor

@magicalyak

Podziękowania

Większość informacji pochodzi z roli Chrisa Houseknechta minishift-up-role na ansible galaxy @chouseknecht

Zainstaluj
ansible-galaxy install magicalyak.minishift_up
Licencja
apache-2.0
Pobrania
97
Właściciel
Product Manager at Tigera for @tigera.io contributions. Contributions are my own for @gmail.com contributions.