Configurazione del tuo primo cluster classico nella CLI

Infrastruttura classica

In questo tutorial, si distribuisce un Red Hat OpenShift on IBM Cloud cluster su infrastruttura Classic utilizzando la CLI.

Destinatari

Questo tutorial è pensato per gli amministratori di cluster che desiderano imparare a creare per la prima volta un cluster Red Hat OpenShift on IBM Cloud utilizzando l'interfaccia a riga di comando (CLI).

Obiettivi

In questo tutorial dovrai svolgere le seguenti attività.

  • Crea un cluster a Washington, DC con 2 nodi di lavoro che hanno 4 core e 16 GB di memoria.
  • Apri la console web di Red Hat OpenShift.
  • Distribuisci un'applicazione di esempio.
  • Esponi l'applicazione in un instradamento in modo che gli utenti esterni possano accedervi.

Cosa otterrai

In questa esercitazione, crei le seguenti risorse utilizzando la CLI. Ci sono passi facoltativi per eliminare queste risorse se non vuoi conservarle dopo aver completato l'esercitazione.

  • Un cluster classico con 2 nodi di lavoro
  • Una semplice applicazione Hello World distribuita al tuo cluster
  • Una rotta per esporre la tua applicazione

del cluster*Architettura del

Prerequisiti

  1. Controllare le autorizzazioni. Se sei il proprietario dell'account, hai già le autorizzazioni richieste per creare un cluster e puoi continuare con il passo successivo. Se non sei il proprietario dell'account, chiedi al proprietario dell'account di configurare una chiave API e assegnare le autorizzazioni richieste in IBM Cloud IAM.

  2. Installa gli strumenti della CLI IBM Cloud.

Creare un cluster Red Hat OpenShift on IBM Cloud

  1. Accedi al tuo account e gruppo di risorse. Se hai un account federato, includi l'opzione --sso.

    ibmcloud login [-g RESOURCE GROUP] [--sso]
    
  2. Esegui il seguente comando per creare un cluster di versione 4.21 a Washington, DC con 2 nodi di lavoro dotati di 4 core e 16 GB di memoria.

    ibmcloud oc cluster create classic --name my-tutorial-cluster --location wdc04 --version 4.21_openshift --flavor b3c.4x16  --workers 2 --public-service-endpoint
    
  3. La creazione del tuo cluster potrebbe richiedere del tempo per essere completata. Una volta che lo stato del cluster risulta “Normale”, la rete del cluster e i componenti Ingress impiegano circa altri 10 minuti per completare la distribuzione e l’aggiornamento del dominio del cluster utilizzato per la console web Red Hat OpenShift e per altri percorsi.

  4. Elenca i dettagli del tuo cluster. Esamina lo Stato del cluster, controlla il Dominio secondario Ingress e prendi nota dell'URL master.

    ibmcloud oc cluster get --cluster CLUSTER_NAME_OR_ID
    
  5. Scarica e aggiungi il file di configurazione kubeconfig per il tuo cluster.

    ibmcloud oc cluster config --cluster CLUSTER_NAME_OR_ID
    
  6. Nel tuo browser, passa all'indirizzo del tuo URL master URL e aggiungi /console. Ad esempio, https://c0.containers.cloud.ibm.com:23652/console.

  7. Verifica che i comandi oc vengano eseguiti correttamente con il tuo cluster controllando la versione.

    oc version
    

    Output di esempio

    Client Version: v4.21.0
    Kubernetes Version: v1.35.7.2
    

    Se non è possibile eseguire operazioni che richiedono autorizzazioni di amministratore, come l'elenco di tutti i nodi di lavoro o dei pod in un cluster, scaricare i certificati e i file di autorizzazione " TLS " per l'amministratore del cluster eseguendo il comando ibmcloud oc cluster config --cluster CLUSTER_NAME_OR_ID --admin .

Naviga nella console Red Hat OpenShift.

  1. Dalla console, seleziona il tuo cluster " Red Hat OpenShift ", quindi fai clic su " OpenShift " nella console web.
  2. Per utilizzare il cluster tramite la CLI, clicca sul tuo profilo IAM#user.name@email.com > Copia comando di accesso. Visualizza e copia il comando " oc login " nella riga di comando per eseguire l'autenticazione tramite la CLI.

Distribuisci un'app sul tuo cluster

  1. Crea un progetto per la tua applicazione Hello World.

    oc new-project hello-world
    
  2. Crea l'applicazione di esempio dal codice sorgente utilizzando il comando oc new-app.

    oc new-app --name hello-world https://github.com/IBM/container-service-getting-started-wt --context-dir="Lab 1"
    

    Un messaggio di avvertenza potrebbe essere visualizzato nell'output, ma non influisce su questo esempio.

  3. Elenca i servizi hello-world e prendi nota del nome servizio. L'app monitora il traffico su questi indirizzi IP interni del cluster, a meno che non si crei una rotta per il servizio in modo che il controller Ingress possa inoltrare le richieste di traffico esterne all'app.

    oc get svc -n hello-world
    

    Output di esempio

    NAME          TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)    AGE
    hello-world   ClusterIP   172.21.xxx.xxx   <none>       8080/TCP   31m
    
  4. Elenca i pod e assicurati che lo stato dei pod hello - world sia Running e che i pod build e deploy siano Completed

    oc get pods -n hello-world
    

    Output di esempio

    NAME                  READY     STATUS             RESTARTS   AGE
    hello-world-1-9cv7d   1/1       Running            0          30m
    hello-world-1-build   0/1       Completed          0          31m
    hello-world-1-deploy  0/1       Completed          0          31m
    
  5. Configura un instradamento in modo che tu possa accedere pubblicamente al servizio hello world.

    oc create route edge --service=hello-world -n hello-world
    
  6. Ottieni l'indirizzo del nome host di instradamento dall'output Host/Port.

    oc get route -n hello-world
    

    Output di esempio

    NAME          HOST/PORT                         PATH                                        SERVICES      PORT       TERMINATION   WILDCARD
    hello-world   hello-world-hello.world.CLUSTER-NAME-RANDOM-ID.REGION.containers.appdomain.cloud    hello-world   8080-tcp   edge/Allow    None
    
  7. Accedi alla tua applicazione. Assicurati di aggiungere https:// al nome host di instradamento. Potrebbe essere necessario un minuto prima che il servizio esposto sia visibile.

    curl https://hello-world-hello-world.CLUSTER-NAME-RANDOM-ID.REGION.containers.appdomain.cloud
    

    Output di esempio

    Hello world from hello-world-9cv7d! Your app is up and running in a cluster!
    

Ripulisci le risorse dell'esercitazione

  1. Elencare le risorse nel progetto hello-world.
    oc get all -l app=hello-world -o name -n hello-world
    
    Output di esempio
    pod/hello-world-1-dh2ff
    replicationcontroller/hello-world-1
    service/hello-world
    deploymentconfig.apps.openshift.io/hello-world
    buildconfig.build.openshift.io/hello-world
    build.build.openshift.io/hello-world-1
    imagestream.image.openshift.io/hello-world
    imagestream.image.openshift.io/node
    route.route.openshift.io/hello-world
    
  2. Eliminare le risorse.
    oc delete all -l app=hello-world -n hello-world
    

Operazioni successive

Installa due popolari componenti aggiuntivi per cluster di Red Hat OpenShift on IBM Cloud: IBM Cloud Logs e IBM Cloud Monitoring.