Utilizzando RedHat CodeReady Containers (CRC), possiamo installare facilmente l'ultima versione del cluster OpenShift su laptop, desktop o in una macchina virtuale. In questo tutorial, dimostreremo come configurare un cluster openshift a nodo singolo sul sistema RHEL 8 con crc. Questo tipo di cluster openshift viene utilizzato solo per scopi di test e sviluppo, non è consigliato per l'uso in produzione.
Requisito minimo di sistema per OpenShift basato su CRC
- RHEL 8 appena installato
- Hypervisor KVM
- 4 CPU (o vCPU)
- 8 GB di RAM
- 40 GB di spazio libero su /home
Presumo che i requisiti di cui sopra siano già soddisfatti sul tuo sistema RHEL 8. Nel mio caso ho installato RHEL 8 con GUI e hypervisor KVM durante l'installazione. Nel caso in cui tu abbia un'installazione minima di RHEL 8, prima configura kvm sul tuo sistema. Passiamo ai passaggi di installazione,
Fase 1) Scarica l'ultima versione di CRC
Apri il terminale ed esegui il seguente comando wget,
$ wget https://mirror.openshift.com/pub/openshift-v4/clients/crc/latest/crc-linux-amd64.tar.xz
L'output di esempio del comando precedente sarebbe
Passaggio 2) Estrai l'archivio CRC scaricato e copia il suo binario
Una volta scaricato il file di archivio compresso crc, estrarlo utilizzando il comando tar sotto,
$ sudo tar -xpvf crc-linux-amd64.tar.xz
Copia il binario crc nella directory /usr/local/bin
$ cd crc-linux-1.22.0-amd64/ $ sudo cp crc /usr/local/bin/
Ora verifica la versione crc eseguendo il seguente comando:
$ crc version CodeReady Containers version: 1.22.0+6faff76f OpenShift version: 4.6.15 (embedded in executable) $
Passaggio 3) Avvia la distribuzione di OpenShift 4.x utilizzando CRC
Esegui il comando "crc setup" per scaricare la macchina virtuale crc (crc.qcow2) che è di circa 10,83 GB.
$ crc setup
Una volta completata correttamente la "configurazione di crc", scarica il segreto di pull che verrà utilizzato durante l'avvio del cluster openshift.
Per scaricare il login segreto pull al di sotto del portale Redhat,
https://cloud.redhat.com/openshift/install/crc/installer-provisioned
Ora finalmente esegui il comando sotto per avviare il cluster Openshift,
Sintassi:
$ crc start -p
$ crc start -p pull-secret
Una volta eseguito correttamente il comando precedente, otterremo il seguente output. Nell'output abbiamo le credenziali "kubeadmin" e l'URL del cluster. Prendi nota che li useremo in seguito.
Per connetterti a OpenShift Cluster, imposta il seguente ambiente eseguendo:
$ crc oc-env export PATH="/home/sysadmin/.crc/bin/oc:$PATH" # Run this command to configure your shell: # eval $(crc oc-env) $
Copia sopra l'output e incollalo nel file ".bashrc" alla fine come mostrato di seguito:
[[email protected] ~]$ vi .bashrc ………………… export PATH="/home/sysadmin/.crc/bin/oc:$PATH" # Run this command to configure your shell: eval $(crc oc-env) ……………………
Salva e chiudi il file
Sorgente il file '.bashrc' per apportare le modifiche precedenti all'effetto.
$ source .bashrc
Passaggio 4) Connetti e verifica OpenShift Cluster
Prima di connetterti al cluster, abilitare prima la funzione di completamento automatico di bash. Esegui i seguenti comandi,
$ oc completion bash > oc_bash_completion $ sudo cp oc_bash_completion /etc/bash_completion.d/
Esci e accedi di nuovo.
Ora è il momento di connettersi al cluster Openshift, eseguire sotto il comando (questo era presente nell'output del comando crc start)
$ oc login -u kubeadmin -p APBEh-jjrVy-hLQZX-VI9Kg https://api.crc.testing:6443
L'output del comando precedente sarebbe,
L'output sopra conferma che "kubeadmin" è in grado di accedere correttamente al cluster.
Esegui il seguente comando oc per verificare i dettagli del cluster
$ oc get nodes $ oc cluster-info $ oc get clusteroperators
Per testare questo cluster, distribuiamo un'applicazione basata su nginx, eseguiamo sotto i comandi,
$ oc new-app --name nginx-app --docker-image=nginx $ oc get deployment NAME READY UP-TO-DATE AVAILABLE AGE nginx-app 1/1 1 1 2m2s $ oc get pods NAME READY STATUS RESTARTS AGE nginx-app-6d7c86dfd7-b6mvz 1/1 Running 0 2m4s $ $ oc expose service nginx-app route.route.openshift.io/nginx-app exposed $ oc get route NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD nginx-app nginx-app-default.apps-crc.testing nginx-app 80-tcp None [[email protected] ~]$
Ora prova ad accedere all'applicazione usando il comando curl,
$ curl nginx-app-default.apps-crc.testing
Perfetto, sopra conferma che l'applicazione basata su nginx è stata distribuita con successo sul cluster OpenShift.
Per accedere alla console Web di OpenShift, esegui
$ crc console
Sopra si aprirà il browser web e otterremo la schermata di accesso della GUI di OpenShift, Usa kubeadmin e le sue credenziali
Dopo aver inserito le credenziali, verrà presentata la seguente dashboard
Ottimo, lo schermo sopra conferma che anche la GUI Web di OpenShift funziona correttamente.
Risoluzione dei problemi
Per arrestare il cluster, esegui
$ crc stop
Per avviare nuovamente il cluster, esegui
$ crc start
Per terminare il cluster, esegui
$ crc stop $ crc delete -f $ crc cleanup
Questo è tutto da questo tutorial, spero che ti aiuti a configurare il cluster openshift a nodo singolo sul sistema RHEL 8. Non esitare a condividere feedback e commenti.
Leggi anche : Come configurare il controller di ingresso NGINX in Kubernetes