Configurare OpenShift Local
Con le ultime versioni di OpenShift, il vecchio e caro Minishift ha cominciato a sparire, finché qualche tempo fa, Red Hat ha rilasciato OpenShift Local (prima CodeReady Containers), per consentire a chi sviluppa di testare una configurazione di OpenShift 4.x in un ambiente locale installando un cluster minimale.
Cos’è
Red Hat OpenShift Local è il modo più rapido per iniziare a lavorare su un cluster OpenShift. È progettato per essere eseguito su un computer locale per semplificare la configurazione e i test e per emulare l’ambiente di sviluppo cloud a livello locale con tutti gli strumenti necessari per sviluppare applicazioni basate su container come su un cluster di produzione.
Come funziona
OpenShift Local è essenzialmente un cluster OpenShift con un singolo nodo che viene eseguito localmente sul computer dello sviluppatore. Si basa sulla stessa tecnologia di OpenShift e fornisce un ambiente coerente per lo sviluppo e il test delle applicazioni.
Installazione
Naturalmente, ha dei requisiti minimi, sia dal punto di vista software che hardware. Vediamo quali:
Requisiti software
- Richiede un hypervisor per eseguire la VM contenente OpenShift:
- macOS: xhyve (predefinito), VirtualBox
- GNU/Linux: KVM (predefinito), VirtualBox
- Windows: Hyper-V (predefinito), VirtualBox
- Un account su RedHat (è gratuito!) per accedere alla console ed essere in grado di ottenere il pull secret
- Un sistema operativo tra i seguenti
- Windows: per Microsoft, Red Hat OpenShift Local richiede l’aggiornamento Windows 10 Fall Creators Update (versione 1709) o successivo. Red Hat OpenShift Local non funziona su versioni precedenti di Microsoft Windows. Microsoft Windows 10 Home Edition non è supportato.
- macOS: Red Hat OpenShift Local richiede macOS 11 Big Sur o successivo. Red Hat OpenShift Local non funziona su versioni precedenti di macOS.
- Linux: Red Hat OpenShift Local è supportato solo sulle ultime due release minori di Red Hat Enterprise Linux/CentOS 7, 8 e 9 e sulle ultime due release stabili di Fedora. Quando si utilizza Red Hat Enterprise Linux, la macchina che esegue Red Hat OpenShift Local deve essere registrata nel Red Hat Customer Portal. Ubuntu 18.04 LTS o versioni successive e Debian 10 o versioni successive non sono supportate e potrebbero richiedere la configurazione manuale della macchina host.
Requisiti hardware
- 4 core fisici della CPU
- 9 GB di RAM
- 35 GB di spazio di archiviazione
Per procedere, accedere alla Red Hat Console, loggarsi e, facendo clic sulla voce “Services”, cercare la parola “OpenShift”.
Pagina principale della console Red Hat
Installazione di OpenShift locale
Ci verrà chiesto di scaricare un pacchetto in base al sistema operativo; facciamo clic su “Download OpenShift Local” senza chiudere però la pagina; tra poco dovremo recuperare il pull secret.
Download del file eseguibile
In base al sistema operativo, installiamo OpenShift Local tramite il file eseguibile seguendo tutti i passaggi descritti dalla procedura guidata e lasciando il percorso predefinito per l’installazione.
Verranno apportate molte modifiche al sistema, riguardanti la configurazione di rete, i servizi, l’ambiente e così via, per cui si consiglia di riavviare il sistema.
Esempio di schermata di installazione di OpenShift Local per Windows
Una volta riavviato il sistema, aprire RedHat OpenShift Local:
Configurazione iniziale di OpenShift Local
Fare clic su “Avanti” e passare alla seconda fase. Qui si può scegliere se proseguire la configurazione usando OpenShift o Podman; le due cose non si escludono a vicenda, ma si può scegliere di installare Podman successivamente o manualmente. Lasciare la selezione attuale su OpenShift e continuare.
Tornare alla Red Hat Console e copiare e incollare il pull secret facendo clic sul link mostrato nell’immagine sottostante:
Recupero del pull secret dalla console Red Hat
Proseguire e concludere il setup.
L’installazione potrebbe richiedere fino a 5-15 minuti. Se richiede più tempo, provare a chiudere e ricominciare.
Una volta completata l’installazione, sarà possibile avviare OpenShift Local e cominciare a utilizzarlo: per chi usa Windows, dovrebbe essere possibile trovare un’icona rossa nella barra degli strumenti in basso a destra: fare clic con il pulsante destro del mouse e verificare se il cluster è in esecuzione. Altrimenti, continuate a leggere.
Icona di OpenShift Local per Windows nella barra degli strumenti
Si noti che questo strumento sarà gestito attraverso questa finestra: qui è possibile arrestare il cluster, eliminarlo e ripartire da zero (opzione “Delete”), aprire la console web (opzione “Open console”), copiare e incollare il comando di accesso come amministratore (opzione “Copy…”) e così via.
CLI
Non è finita qui: OpenShift Local è dotato di uno strumento CLI chiamato crc: è possibile utilizzarlo per configurare il cluster, avviarlo, arrestarlo e così via.
Il suggerimento è, per la prima volta che si installa il cluster, di aprire un terminale in base al proprio sistema operativo ed eseguire i seguenti comandi: crc setup configura e verifica che tutto il necessario al cluster sia presente e funzionante.
$ crc setup
>>> Expected output:
INFO Using bundle path C:\Users\xxx\.crc\cache\crc_hyperv_4.10.18_amd64.crcbundle
INFO Checking if current user is in Hyper-V Admins group
INFO Checking if CRC bundle is extracted in '$HOME/.crc'
INFO Checking if C:\Users\xxx\.crc\cache\crc_hyperv_4.10.18_amd64.crcbundle exists
INFO Checking if the daemon task is installed
INFO Checking if the daemon task is running
INFO Running the daemon task
INFO Checking admin helper service is running
Your system is correctly setup for using CRC. Use 'crc start' to start the instance
Nel caso in cui qualcosa vada storto, possiamo provare ad aumentare il livello di log per eseguire un po’ più di informazioni:
$ crc setup --log-level debug
>>> Expected output:
DEBU CRC version: 2.5.1+5b02b826
DEBU OpenShift version: 4.10.18
DEBU Podman version: 4.1.0
DEBU Running 'crc setup'
INFO Using bundle path C:\Users\xxx\.crc\cache\crc_hyperv_4.10.18_amd64.crcbundle
INFO Checking if current user is in Hyper-V Admins group
DEBU Running '$sid = New-Object System.Security.Principal.SecurityIdentifier("S-1-5-32-578")
@([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole($sid)'
INFO Checking if CRC bundle is extracted in '$HOME/.crc'
INFO Checking if C:\Users\xxx\.crc\cache\crc_hyperv_4.10.18_amd64.crcbundle exists
DEBU C:\Users\xxx\.crc\cache\crc_hyperv_4.10.18_amd64.crcbundle exists
DEBU Running 'Get-ScheduledTask -TaskName crcDaemon'
DEBU Running '(Get-ScheduledTask -TaskName "crcDaemon").Version'
INFO Checking if the daemon task is running
DEBU Running '(Get-ScheduledTask -TaskName "crcDaemon").State'
INFO Checking admin helper service is running
DEBU Running '(Get-Service crcAdminHelper).Status'
Your system is correctly setup for using CRC. Use 'crc start' to start the instance
DEBU Running '(Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name ReleaseId).ReleaseId'
DEBU Running '(Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").EditionID'
INFO Checking if running in a shell with administrator rights
INFO Checking Windows 10 release
INFO Checking Windows edition
INFO Checking if Hyper-V is installed and operational
INFO Checking if crc-users group exists
INFO Checking if current user is in Hyper-V Admins group
INFO Checking if vsock is correctly configured
INFO Checking if the daemon task is installed
INFO Checking if the daemon task is running
INFO Checking admin helper service is running
INFO Loading bundle: crc_hyperv_4.10.18_amd64...
INFO Creating CRC VM for OpenShift 4.10.18...
...
Una volta che il cluster sarà stato avviato (usando il comando crc start nella riga di comando o usando l’interfaccia utente), la console sarà disponibile all’indirizzo https://oauth-openshift.apps-crc.testing.
crc start
>>>
Starting...
Ci siamo quasi! Per ottenere le credenziali per accedere alla console, basta eseguire il seguente comando:
$ crc console --credentials
>>>
To login as a regular user, run 'oc login -u developer -p developer https://api.crc.testing:6443'.
To login as an admin, run 'oc login -u kubeadmin -p PASSWORD https://api.crc.testing:6443'
A questo punto, collegandosi all’indirizzo mostrato in precedenza, sarà possibile visualizzare la pagina principale della console OpenShift.
Ora che abbiamo un cluster OpenShift pronto all’uso… Come sfruttarlo al meglio?
Nei prossimi articoli, vedremo diversi esempi di utilizzo!