magicalyak.minishift_up

Build-Status

minishift-up

Installiert die neueste minishift Binary und erstellt eine minishift Instanz.

Folgende Aufgaben werden ausgeführt:

  • Lädt die neueste minishift Binary herunter und installiert sie
  • Kopiert die neueste oc Binary von ~/.minishift/cache/oc in ein Verzeichnis in deinem PATH
  • Installiert den Docker Machine-Treiber
  • Erstellt eine minishift Instanz
  • Gewährt dem admin Konto Cluster-Administratorrechte

Zugriff auf das Registry

Nachdem das Skript ausgeführt wurde und minishift läuft, kannst du auf das interne Registry zugreifen, nachdem du den Befehl minishift docker-env eval gesetzt hast:

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

Unterstützte Plattformen

  • Debian
  • Red Hat
  • OSX

Voraussetzungen

  • Ansible 2.4+
  • Vor dem Ausführen des Skripts, stelle sicher, dass keine DOCKER* Umgebungsvariablen im Terminal aktiv sind.
  • sudo-Zugriff ist erforderlich, um Pakete zu installieren
  • git (bei Verwendung von Community-Addons)
  • gnu tar (brew install gnu-tar)

OSX

Das Verzeichnis /Users im Minishift VM einbinden

Wenn die Minishift VM gestartet wird, wird das Verzeichnis /Users im VM eingebunden. Dies geschieht durch das Setzen der Umgebungsvariable XHYVE_VIRTIO_9P=true.

Linux

  • KVM muss installiert und betriebsbereit sein. Das Skript installiert den Docker Machine-Treiber für KVM, setzt jedoch voraus, dass KVM bereits installiert und betriebsbereit ist.
  • Ansible 2.4+

Fedora

  • Installiere die Pakete python2-dnf und libselinux-python

Bekannte Probleme

Fedora

  • Bevor du auf den Docker-Daemon in der Minishift-Instanz zugreifst, musst du das Skript /etc/sysconfig/docker ändern, um zu verhindern, dass es die Umgebungsvariable DOCKER_CERT_PATH überschreibt. Bearbeite die Datei und ändere die Zeile DOCKER_CERT_PATH=/etc/docker wie folgt:

    if [ -z "${DOCKER_CERT_PATH}" ]; then
        DOCKER_CERT_PATH=/etc/docker
    fi
    

Standardwerte

minishift_repo: minishift/minishift

Repository, wo die minishift Binary zu finden ist.

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

URL zum Zugriff auf die GitHub-API.

minishift_release_tag_name: ""

Standardmäßig wird die neueste Version installiert. Verwende dies, um eine spezifische minishift-Version zu installieren.

minishift_dest: /usr/local/bin

Wo die minishift Binary installiert werden soll.

minishift_force_install: ja

Überschreibe jede vorhandene minishift Binary, die unter {{ minishift_dest }} gefunden wird.

minishift_restart: ja

Stoppe und erstelle die vorhandene minishift Instanz neu.

minishift_delete: ja

Führe minishift delete aus und entferne ~/.minishift. Wenn du ein Upgrade machst, möchtest du dies wahrscheinlich tun.

minishift_start_options: []

Gib eine Liste von Optionen an, die an minishift start übergeben werden sollen. Zum Beispiel: ['--memory', '4GB', '--cpus', '4']

openshift_client_dest: /usr/local/bin

Wo die OpenShift-Client-Binary installiert werden soll.

openshift_force_client_copy: ja

Überschreibe jede vorhandene OpenShift-Client-Binary, die unter {{ openshift_client_dest }} gefunden wird.

minishift_experimental: nein

Aktiviere experimentelle Funktionen

minishift_service_catalog: nein

Aktiviere den Service-Katalog-Komponenten

use_hyperkit: nein

Für macOS kannst du versuchen, hyperkit anstelle von xhyve zu verwenden, indem du dies auf ja setzt.

minishift_addons_enable: nein

Um Addons zu verwenden, setze dies auf ja.

minishift_addons_community_enable: nein

Um Community-Addons zu verwenden, setze dies auf ja und gib den Pfad an.

minishift_addons_community_path: $HOME/Downloads/git

Setze dies auf den Pfad der Community-Addons, die du installieren möchtest (muss existieren).

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

Setze dies auf den Benutzernamen und das Passwort deines Red Hat Container Service-Kontos.

Beispiel-Playbook

Hier ist ein Beispiel-Playbook, das alle Standardparameter enthält. Du findest ein Beispiel davon im Stammverzeichnis des Projekts.

---
- name: Installiere minishift
  hosts: localhost
  connection: local
  gather_facts: ja
  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: ja
      minishift_restart: ja
      minishift_delete: ja
      minishift_start_options: []
      openshift_client_dest: /usr/local/bin
      openshift_force_client_copy: ja
      minishift_experimental: nein
      minishift_service_catalog: nein
      use_hyperkit: ja
      minishift_addons_enable: nein
      minishift_addons:
        anyuid: nein
        registry_route: nein
        admissions_webhook: nein
        htpasswd_identity_provider: nein
        xpaas: nein
        redhat_registry_logon: nein
        che: nein
        prometheus: nein
        admin_user: ja
      minishift_addons_community_enable: nein
      minishift_addons_community_path: $HOME/Downloads/git
      minishift_addons_community:
        ansible_service_broker: nein
        dotnet: nein
        example: nein
        grafana: nein
        helm: nein
        istio: nein
        management_infra: nein
        workshop: nein
        eap_cd: nein

Nachdem du das Skript installiert hast, kopiere minishift-nginx.yml in dein Projektverzeichnis und führe es mit der Option --ask-become-pass aus. Zum Beispiel:

# Rolle installieren
$ ansible-galaxy install magicalyak.minishift_up

# Kopiere das Playbook von deinem Rollenpfad in das aktuelle Arbeitsverzeichnis
$ cp ${ANSIBLE_ROLES_PATH}/magicalyak.minishift_up/minishift-up.yml .

# Erstelle eine localhost Inventar-Datei
$ echo "localhost">./inventory

# Führe das Playbook aus
$ ansible-playbook -i inventory --ask-become-pass minishift-up.yml

Abhängigkeiten

git (bei Verwendung von Community-Addons)
gnu-tar (brew install gnu-tar)

Lizenz

Apache v2

Autor

@magicalyak

Danksagungen

Ich habe das meiste davon von Chris Houseknechts Rolle minishift-up-role auf Ansible Galaxy übernommen.
@chouseknecht

Installieren
ansible-galaxy install magicalyak.minishift_up
GitHub Repository
Lizenz
apache-2.0
Downloads
97
Besitzer
Product Manager at Tigera for @tigera.io contributions. Contributions are my own for @gmail.com contributions.