Nota:
- Questa esercitazione richiede l'accesso a Oracle Cloud. Per iscriversi a un account gratuito, consulta Inizia a utilizzare Oracle Cloud Infrastructure Free Tier.
- Utilizza valori di esempio per le credenziali, la tenancy e i compartimenti di Oracle Cloud Infrastructure. Al termine del laboratorio, sostituisci questi valori con quelli specifici del tuo ambiente cloud.
Integra Oracle Cloud Infrastructure Container Engine for Kubernetes con Google Anthos
Introduzione
Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE) è una soluzione efficace per le organizzazioni che desiderano modernizzare la propria infrastruttura e adottare un approccio cloud nativo allo sviluppo e alla distribuzione delle applicazioni. Grazie alla scalabilità automatica, agli upgrade e all'applicazione di patch di sicurezza, OKE garantisce operazioni affidabili sia per il piano di controllo che per i nodi di lavoro, riducendo ulteriormente il carico di gestione. D'altra parte, Google Anthos è una piattaforma ibrida e multicloud che consente alle organizzazioni di gestire e distribuire applicazioni in ambienti diversi senza problemi.
L'integrazione di OKE e Google Anthos riunisce il meglio di entrambi i mondi, consentendo agli utenti di sfruttare i vantaggi di entrambi i servizi per ottenere una soluzione di orchestrazione container altamente scalabile, sicura e flessibile e ridurre i costi. Grazie a questa integrazione, gli utenti possono distribuire e gestire facilmente le applicazioni gestite in container su più cloud e ambienti on premise.
Obiettivi
Integra OKE con Google Anthos.
Prerequisiti
- Registrati o accedi al tuo account Oracle Cloud Infrastructure (OCI).
- Registrati o accedi a un account Google Cloud Platform (GCP).
- Google Anthos abilitato nell'account GCP.
Task 1: creare un cluster Kubernetes in OCI
-
Fare clic sul menu di navigazione
accanto all'angolo superiore sinistro della console Web. -
Andare a Servizi per sviluppatori, quindi fare clic su Cluster Kubernetes (OKE).
-
Selezionare l'opzione Crea cluster.
-
Selezionare l'opzione Creazione rapida e fare clic su Sottometti.
Nota: questa operazione creerà tutte le risorse necessarie per distribuire un cluster OKE.
-
Immettere il nome, selezionare il compartimento per questo cluster e selezionare il tipo di nodo Gestito.
-
(Facoltativo) È inoltre possibile scegliere la forma, l'immagine e il numero di nodi.
-
Fare clic due volte su Avanti e quindi su Crea.
Task 2: registrare il cluster in OCI Cloud Shell
-
Dopo aver creato il cluster, è necessario registrare questo cluster nel file
~/.kube/configall'interno di OCI Cloud Shell. -
Andare al cluster e selezionare l'opzione Cluster di accesso.
-
Questa operazione aprirà una nuova finestra con i passi su come accedere al cluster da OCI Cloud Shell. Seguire i passi indicati.
Task 3: Creare un account di servizio
-
Una volta registrato il cluster nella Cloud Shell OCI, è possibile accedere e interagire con questo cluster.
-
Per creare l'account di servizio, attenersi alla procedura descritta di seguito. 2-4 della presente documentazione: Aggiunta di un token di autenticazione dell'account di servizio a un file Kubeconfig.
Task 4: registrare di nuovo il cluster in OCI Cloud Shell
Dopo aver creato l'account del servizio, è necessario registrare di nuovo il cluster in OCI Cloud Shell. Per rendere le operazioni più semplici e pulite, creare un backup della configurazione corrente prima di procedere ai passi successivi.
-
Per creare un backup di
~/.kube/config, aprire OCI Cloud Shell. -
Eseguire il seguente comando:
mv ~/.kube/config ~/.kube/config.bkp -
Eseguire i passi del task 2: registrare il cluster in OCI Cloud Shell.
Task 5: copiare ~/.kube/config da OCI in GCP
Copiare il file ~/.kube/config ricreato nel task 4: registrare di nuovo il cluster in OCI Cloud Shell in GCP Cloud Shell.
-
Copiare il contenuto del file
cat ~/.kube/config, selezionare tutto il contenuto in OCI Cloud Shell e premere ctrl+c (copia). -
Andare a GCP Cloud Shell ed eseguire il comando
vim ~/.kube/config, andare alla fine del file di configurazione e premere ctrl+v (incolla).
Task 6: verificare la connessione in GCP
-
Una volta inserita la voce del file di configurazione, verificare se la connessione funziona. Eseguire il comando riportato di seguito sia in GCP che in OCI Cloud Shell.
kubectl get nodes -
Se gli IP corrispondono, tutto è nell'ordine, in caso contrario, provare a ripetere il task 5: copiare di nuovo ~/.kube/config da OCI a GCP.
Task 7: Ottenere il TOKEN da OCI
Ottenere il TOKEN generato nel task 3: Creare un account di servizio.
-
Eseguire il comando seguente in OCI Cloud Shell:
TOKEN=`kubectl -n kube-system get secret oke-kubeconfig-sa-token -o jsonpath='{.data.token}' | base64 --decode -
Dopo aver ottenuto il codice, eseguire il comando seguente.
echo $TOKENe copiare il token. -
Andare a GCP Cloud Shell e creare una variabile denominata
token.TOKEN="|the token you copied|" -
Eseguire i passi 6-7 dalla presente documentazione: Aggiunta di un token di autenticazione dell'account di servizio a un file Kubeconfig in GCP Cloud Shell.
Nota: per le attività rimanenti verrà utilizzato solo GCP.
Task 8: creare un account di servizio in GCP e ottenere la chiave JSON
-
Aprire GCP Cloud Shell.
-
Eseguire il comando seguente per creare un account di servizio denominato
connect-register-sa.gcloud iam service-accounts create connect-register-sa --project PROJECT_IDNota: sostituire PROJECT_ID con l'ID del progetto Cloud in GCP che si desidera essere l'elemento padre dell'account di servizio
connect-register-sa. -
Eseguire il comando seguente per creare la chiave JSON.
gcloud iam service-accounts keys create connect-register-key.json --iam-account SERVICE_ACCOUNT_EMAILNota: sostituire SERVICE_ACCOUNT_EMAIL con l'indirizzo e-mail dell'account di servizio
connect-register-sa.
Task 9: concedere le autorizzazioni necessarie all'account di servizio
Per gpc-cloud-agent, che verrà installato nel cluster OKE, per comunicare con GCP Anthos, dobbiamo concedere alcune autorizzazioni aggiuntive all'account di servizio appena creato.
-
Eseguire il comando seguente per concedere l'autorizzazione
gkehub.editor.gcloud projects add-iam-policy-binding FLEET_HOST_PROJECT_ID --member "serviceAccount:SERVICE_ACCOUNT_EMAIL" --role "roles/gkehub.editor"Nota: sostituire
FLEET_HOST_PROJECT_IDconGCP PROJECT_IDeSERVICE_ACCOUNT_EMAILcon l'e-mail dell'account di servizioconnect-register-sa. -
Eseguire il comando seguente per concedere l'autorizzazione
gkehub.connect.gcloud projects add-iam-policy-binding PROJECT_ID --member serviceAccount:SERVICE_ACCOUNT_EMAIL --role "roles/gkehub.connect"Nota: sostituire
PROJECT_IDconGCP PROJECT_IDeSERVICE_ACCOUNT_EMAILcon l'e-mail dell'account di servizioconnect-register-sa.
Task 10: registrare il cluster OKE in GCP Anthos
Una volta che abbiamo tutte le autorizzazioni in atto, possiamo procedere con la registrazione del cluster OKE in Google Anthos.
-
Vai a Google Anthos.
-
Selezionare Cluster, quindi selezionare l'opzione REGISTER EXISTING CLUSTER.
-
Fare clic su ADD EXTERNAL CLUSTER.
-
Selezionare un nome cluster, una posizione, un provider e fare clic su GENERATE REGISTRATION COMMAND.
-
Copiare il comando e sostituire il contesto del cluster con il contesto del cluster OKE (è possibile trovare nel file
~/.kube/config), sostituire il percorso del file account-key-service con il percorso del file JSON creato al task 8: creare un account di servizio in GCP e ottenere la chiave JSON(connect-register-key.json) e infine sostituire il percorso del filekubeconfig(in genere è~/.kube/config). -
Eseguire il comando in GCP Cloud Shell.
Task 11: eseguire il login al cluster OKE
-
Una volta completata la registrazione del cluster OKE in Anthos, è necessario accedere al cluster da Anthos.
-
È possibile eseguire il login al cluster utilizzando il TOKEN generato in Task 3: creazione di un account di servizio.
Collegamenti correlati
Conferme
-
Autore - Dragos Nicu (senior Cloud Engineer)
-
Collaboratore - Andrei Ilas (Principal Cloud Architect)
Altre risorse di apprendimento
Esplora altri laboratori su docs.oracle.com/learn o accedi a contenuti di formazione gratuiti sul canale YouTube di Oracle Learning. Inoltre, visitare education.oracle.com/learning-explorer per diventare Explorer di Oracle Learning.
Per la documentazione sul prodotto, visitare il sito Oracle Help Center.
Integrate Oracle Cloud Infrastructure Container Engine for Kubernetes with Google Anthos
F80662-01
April 2023
Copyright © 2023, Oracle and/or its affiliates.