Passaggio 1: creazione di un cluster

Prima di iniziare:

Questi passaggi presuppongono che tu abbia creato le variabili di ambiente nei passaggi precedenti. Controllali con i seguenti comandi:

echo $PROJECT_ID
echo $ANALYTICS_REGION
echo $ORG_NAME
echo $ENV_NAME

Questo passaggio spiega come configurare l'ambiente shell e creare un cluster GKE nel tuo progetto Google Cloud.

Configura la shell del terminale

Lo strumento gcloud fornisce l'interfaccia a riga di comando principale per Google Cloud, mentre kubectl fornisce l'interfaccia a riga di comando principale per l'esecuzione di comandi sui cluster Kubernetes.

  1. Assicurati di aver installato gcloud e kubectl nella shell locale. Lo strumento gcloud fornisce l'interfaccia a riga di comando principale per Google Cloud, mentre kubectl fornisce l'interfaccia a riga di comando principale per l'esecuzione di comandi sui cluster Kubernetes.

    gcloud -h
    kubectl -h
  2. Se non hai installato queste utilità, installale ora nel seguente modo:
    1. Installa Cloud SDK, che include lo strumento a riga di comando gcloud.
    2. Dopo aver installato Cloud SDK, installa lo strumento a riga di comando kubectl eseguendo questo comando:
    3. gcloud components install kubectl
  3. Utilizza lo strumento gcloud per configurare due impostazioni predefinite: il progetto e la regione di computing predefiniti. La configurazione di queste impostazioni semplifica l'esecuzione dei comandi gcloud, perché gcloud richiede di specificare il progetto e la regione di calcolo in cui vuoi lavorare.

    Per elencare le impostazioni correnti, esegui questo comando:

    gcloud config list

    Se un progetto e/o una regione di calcolo non sono elencati, devi aggiungerli con i comandi mostrati di seguito. Se dall'output dell'elenco determini che devi modificare le impostazioni attuali per riflettere il tuo progetto e la tua regione di calcolo, puoi utilizzare anche questi comandi:

    gcloud config set project $PROJECT_ID
    gcloud config set compute/region $ANALYTICS_REGION
    

    Dove:

    • PROJECT_ID è il nome del tuo progetto Google Cloud.
    • ANALYTICS_REGION è il nome di una regione di Google Cloud Compute

Crea un cluster GKE

In questo passaggio, creerai un cluster Kubernetes nel tuo progetto Google Cloud (il progetto che hai impostato con il comando gcloud config rappresentato da PROJECT_ID).

Crea il cluster

  1. (Facoltativo) Crea la variabile di ambiente CLUSTER_NAME con il seguente comando:
    export CLUSTER_NAME=cluster-name

    Dove cluster-name è il nome che scegli per il cluster.

  2. Esegui questo comando per creare il cluster. Il tipo di macchina, il numero di nodi e altre impostazioni specificate nel comando creano un cluster configurato in modo minimale adatto a un'installazione di prova di Apigee hybrid.
    gcloud container clusters create $CLUSTER_NAME \
    --machine-type "e2-standard-4" --num-nodes "4" --enable-autoscaling --min-nodes "3" --max-nodes "6"

    La creazione del cluster può richiedere alcuni minuti. In caso di esito positivo, viene visualizzato un output simile al seguente, con lo stato RUNNING:

    NAME           LOCATION       MASTER_VERSION  MASTER_IP     MACHINE_TYPE   NODE_VERSION   NUM_NODES  STATUS
    apigee-hybrid  us-central1    1.15.12-gke.2   35.222.54.89  e2-standard-4  1.15.12-gke.2             RUNNING

Imposta il contesto attuale

Un contesto è un gruppo di parametri di accesso. Ogni contesto contiene un cluster Kubernetes, un utente e uno spazio dei nomi. Il contesto attuale è il cluster attualmente predefinito per kubectl: tutti i comandi kubectl vengono eseguiti su quel cluster.

Assicurati che il contesto gcloud corrente sia impostato sul cluster che hai appena creato.

  1. Innanzitutto, elenca i contesti per determinare qual è quello attuale. Nell'esempio seguente, il contesto attuale è gke_hybrid-project_us-central1_apigee-hybrid. Il nome include il nome di un progetto Google Cloud (hybrid-project), una regione (us-central1) e un nome cluster (apigee-hybrid).
    kubectl config get-contexts

    I risultati dovrebbero essere simili a quelli dell'esempio seguente:

    CURRENT   NAME                                             CLUSTER                                          AUTHINFO                                           NAMESPACE
    *         gke_hybrid-project_us-central1_apigee-hybrid     gke_hybrid-project_us-central1_apigee-hybrid     gke_hybrid-project_us-central1_apigee-hybrid
              gke_apigee-project_us-west1_apigee-cluster       gke_apigee-project_us-west1_apigee-cluster       gke_apigee-project_us-west1_apigee-cluster
    
  2. Se necessario, imposta il contesto corrente sul cluster che hai appena creato (il cluster in cui intendi installare Apigee hybrid). Utilizzando l'output get-contexts precedente, puoi passare al contesto corretto nel seguente modo:
    kubectl config use-context context

    Dove context è il nome completo del contesto del cluster come output del comando get-contexts precedente. Ad esempio: gke_apigee-project_us-west1_apigee-cluster.

  3. Controlla il contesto attuale per assicurarti che sia impostato sul cluster previsto utilizzando il seguente comando:
    kubectl config current-context

    Ad esempio:

    gke_apigee-project_us-west1_apigee-cluster

Concedi le credenziali del cluster

Le credenziali del cluster ti consentono di accedere ai container in esecuzione nel cluster. Recupera le tue credenziali e concediti il ruolo cluster-admin:

  1. Recupera le credenziali inserendo il seguente comando:
    gcloud container clusters get-credentials $CLUSTER_NAME

    Dove CLUSTER_NAME è il nome del cluster che hai creato (il cluster in cui intendi installare Apigee hybrid).

    Dovresti vedere un risultato simile al seguente:

    Fetching cluster endpoint and auth data.
    kubeconfig entry generated for example-cluster.
  2. Imposta l'associazione di ruoli cluster. Esegui il seguente comando esattamente come mostrato:
    kubectl create clusterrolebinding cluster-admin-binding \
    --clusterrole cluster-admin --user $(gcloud config get-value account)

    Dovresti vedere un risultato simile al seguente:

    clusterrolebinding.rbac.authorization.k8s.io/cluster-admin-binding created

Riepilogo

Ora hai un cluster Kubernetes in esecuzione nel tuo progetto Google Cloud. L'ambiente shell è configurato e puoi installare i servizi cert-manager e istio richiesti da Apigee hybrid sulla tua macchina locale.

1 (NEXT) Step 2: Install cert-manager and ASM 3 4 5