Ricerca nel sito web

Configura Minishift ed esegui Jenkins su Linux


Installa, configura e utilizza Minishift per creare la tua prima pipeline.

Minishift è uno strumento che ti aiuta a eseguire OKD (la piattaforma container OpenShift open source di Red Hat) localmente avviando un cluster OKD a nodo singolo all'interno di una macchina virtuale. È alimentato da Kubernetes, che è una delle cose di cui preferisco parlare.

In questo articolo, dimostrerò come iniziare con Minishift su Linux. Questo è stato scritto per Ubuntu 18.04 e avrai bisogno dell'accesso sudo sul tuo computer Linux per eseguire alcuni comandi.

Prerequisiti

Prima di iniziare l'installazione, la tua macchina Linux deve avere KVM per Linux o VirtualBox, che funziona su ogni piattaforma. Questa demo utilizza KVM, che puoi installare insieme a tutte le dipendenze richieste:

$ sudo apt install qemu-kvm \
libvirt-clients libvirt-daemon-system \
bridge-utils virt-manager  

Dopo aver installato KVM, devi apportare alcune modifiche per consentire all'utente di utilizzarlo. Nello specifico, devi aggiungere il tuo nome utente al gruppo libvirt:

$ sudo usermod --append --groups libvirt $(whoami)
$ newgrp libvirt

Successivamente, installa il driver KVM Docker, necessario per eseguire i contenitori su Minishift. Ho scaricato il driver della macchina Docker direttamente su /usr/local/bin. Non è necessario salvarlo in /usr/local/bin, ma devi assicurarti che la sua posizione sia nel tuo PATH:

$ curl -L https://github.com/dhiltgen/docker-machine-kvm/releases/download/v0.10.0/docker-machine-driver-kvm-ubuntu16.04 \
-o /usr/local/bin/docker-machine-driver-kvm

$ sudo chmod +x /usr/local/bin/docker-machine-driver-kvm

Installa Minishift

Ora che i prerequisiti sono presenti, visita la pagina delle versioni di Minishift e determina quale versione di Minishift desideri installare. Ho usato Minishift v1.34.3.

Scarica il file Linux .tar in una directory che potrai trovare facilmente. Ho utilizzato la directory minishift:

$ ls
Minishift-1.34.3-linux-amd64.tgz

Successivamente, decomprimi il tuo nuovo file utilizzando il comando tar:

$ tar zxvf minishift-1.34.3-linux-amd64.tgz
minishift-1.34.3-linux-amd64/
minishift-1.34.3-linux-amd64/LICENSE
minishift-1.34.3-linux-amd64/README.adoc
minishift-1.34.3-linux-amd64/minishift

Utilizzando l'opzione v (per verbose) nel tuo comando, puoi vedere tutti i file e le loro posizioni nella struttura della directory.

Esegui il comando ls per confermare che la nuova directory è stata creata:

$ ls
minishift-1.34.3-linux-amd64

Successivamente, passa alla nuova directory e trova il file binario che ti serve; si chiama minishift:

$ cd minishift-1.34.3-linux-amd64
$ ls
LICENSE  minishift  README.adoc
$

Sposta il file binario minishift sul tuo PERCORSO, che puoi trovare eseguendo quanto segue e osservando l'output:

$ echo $PATH
/home/jess/.local/bin:/usr/local/sbin:/usr/local/bin

Ho utilizzato /usr/local/bin come percorso del file binario minishift:

$ sudo mv minishift /usr/local/bin
[sudo] password for jess:
$ ls /usr/local/bin
minishift

Esegui il comando minishift e guarda l'output:

$ minishift
Minishift is a command-line tool that provisions and manages single-node OpenShift clusters optimized for development workflows.

Usage:
  minishift [command]

Available Commands:
  addons  	Manages Minishift add-ons.
  completion  Outputs minishift shell completion for the given shell
  config  	Modifies Minishift configuration properties.
  console 	Opens or displays the OpenShift Web Console URL.
[...]

Use "minishift [command] --help" for more information about a command.

Accedi alla console web di Minishift

Ora che Minishift è installato, puoi esplorarlo e giocare con alcuni nuovi fantastici software. Inizia con minishift start. Questo, come puoi immaginare, avvia Minishift, nello specifico, avvia un cluster a un nodo sul tuo computer:

$ minishift start
  Starting profile 'minishift'
  Check if deprecated options are used … OK
  Checking if https://github.com is reachable … OK
[...]
  Minishift will be configured with…
  Memory: 4GB
  vCPUs : 2GB
  Disk size: 20 GB
Starting Minishift VM ……….OK

Questo processo può richiedere molto tempo, a seconda dell'hardware, quindi sii paziente. Al termine, riceverai informazioni su dove trovare il tuo cluster immaginario sulla tua rete virtualizzata:

Server Information ...
MiniShift server started.
The server is accessible via web console at:
https://192.168.42.66:8443/console

Ora MiniShift è in esecuzione, completo di console web. Puoi accedere alla console OKD utilizzando sviluppatore come nome utente e qualsiasi password desideri. Ho scelto sviluppatore/sviluppatore.

(Jess Cherry, CC BY-SA 4.0)

La console web è un pannello di controllo semplice che puoi utilizzare per amministrare il tuo umile cluster. È un luogo in cui puoi creare e caricare immagini di contenitori, aggiungere e monitorare i pod e garantire che la tua istanza sia integra.

(Jess Cherry, CC BY-SA 4.0)

Costruisci una pipeline

Per iniziare a creare la tua prima pipeline, fai clic su Esempio di creazione di pipeline sulla console. Fai clic su Avanti per mostrare i parametri disponibili per creare il progetto della pipeline.

(Jess Cherry, CC BY-SA 4.0)

Appare una finestra con i parametri da inserire se vuoi; puoi usare ciò che è già lì per questo esempio. Esamina il resto delle scelte della schermata per creare una pipeline di esempio.

(Jess Cherry, CC BY-SA 4.0)

Fai clic su Crea e lascia che Minishift crei il progetto per te. Mostra il tuo successo (o fallimento).

(Jess Cherry, CC BY-SA 4.0)

Puoi anche fare clic su Mostra parametri e scorrere l'elenco dei parametri configurati per questo progetto. Fai clic su Chiudi e cerca un messaggio di conferma sulla sinistra. 

(Jess Cherry, CC BY-SA 4.0)

(Jess Cherry, CC BY-SA 4.0)

Quando fai clic su Il mio progetto, puoi visualizzare i dettagli e i pod creati per l'esecuzione del progetto.

(Jess Cherry, CC BY-SA 4.0)

Apri il collegamento jenkins-ephemeral che è stato generato. Accedi nuovamente con le credenziali dello sviluppatore e consenti l'accesso per eseguire una pipeline in Jenkins.

(Jess Cherry, CC BY-SA 4.0)

Ora puoi esaminare l'interfaccia di Jenkins per avere un'idea di ciò che ha da offrire.

(Jess Cherry, CC BY-SA 4.0)

Trova il tuo progetto.

(Jess Cherry, CC BY-SA 4.0)

Quando sei pronto, fai clic su Crea ora.

(Jess Cherry, CC BY-SA 4.0)

Quindi puoi visualizzare l'output del lavoro nell'output della console.

(Jess Cherry, CC BY-SA 4.0)

Una volta completato con successo il lavoro, vedrai un messaggio di successo nella parte inferiore della console.

Cosa ha fatto questo gasdotto? Ha aggiornato la distribuzione manualmente.

(Jess Cherry, CC BY-SA 4.0)

Congratulazioni, hai creato con successo un esempio di distribuzione automatizzata utilizzando Minishift!

Puliscilo

L'ultima cosa da fare è ripulire tutto eseguendo due comandi:

$ minishift stop
$ minishift delete

Perché interrompi e poi elimina? Bene, mi piace assicurarmi che non sia in esecuzione nulla prima di eseguire un comando di eliminazione di qualsiasi tipo. Ciò si traduce in un'eliminazione più pulita senza la possibilità di avere processi rimanenti o bloccati. Ecco l'output dei comandi.

(Jess Cherry, CC BY-SA 4.0)

(Jess Cherry, CC BY-SA 4.0)

Note finali

Minishift è un ottimo strumento con una grande automazione integrata. L'interfaccia utente è comoda da usare e piacevole da vedere. L'ho trovato un nuovo strumento divertente con cui giocare a casa e, se vuoi approfondire, basta dare un'occhiata alla fantastica documentazione e ai numerosi tutorial online. Consiglio di esplorare questa applicazione in modo approfondito. Buon divertimento Minishifting!

Articoli correlati: