Passaggio 2: installa e configura per GKE on-prem

Questo passaggio spiega come scaricare e installare apigeectl sulla macchina amministratore Anthos GKE on-prem. I passaggi includono la configurazione delle directory di installazione, la creazione di service account Google Cloud richiesti per la comunicazione dei componenti ibridi e la creazione di credenziali TLS necessarie per il funzionamento di Apigee hybrid.

Scarica e installa apigeectl

apigeectl è l'interfaccia a riga di comando (CLI) per installare e gestire Apigee hybrid in un cluster Kubernetes.

Per ottenere apigeectl:

  1. Scarica il pacchetto della release sulla macchina amministratore GKE on-prem:

    Mac a 64 bit:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.2.0/apigeectl_mac_64.tar.gz

    Linux a 64 bit

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.2.0/apigeectl_linux_64.tar.gz

    Mac 32 bit:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.2.0/apigeectl_mac_32.tar.gz

    Linux a 32 bit

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.2.0/apigeectl_linux_32.tar.gz
  2. Crea una directory sul tuo sistema che funga da directory di base per l'installazione di Apigee hybrid.
  3. Estrai i contenuti del file gzip scaricato nella directory di base appena creata. Ad esempio:

    tar xvzf filename.tar.gz -C path-to-base-directory
  4. cd alla directory di base.
  5. Per impostazione predefinita, i contenuti del file tar vengono espansi in una directory con la versione e la piattaforma nel nome. Ad esempio: ./apigeectl_1.0.0-f7b96a8_linux_64. Rinomina la directory in apigeectl:

    mv apigeectl_1.0.0-f7b96a8_linux_64 apigeectl
  6. cd nella directory. Ad esempio:
  7. cd ./apigeectl

    Questa directory sarà la home directory di apigeectl. È la posizione del comando eseguibile apigeectl.

  8. Crea una variabile di ambiente per contenere questo percorso della home directory:

    export APIGEECTL_HOME=$PWD

  9. Verifica che la variabile contenga il percorso corretto:
    echo $APIGEECTL_HOME

Configurare la struttura delle directory del progetto

La struttura delle directory descritta di seguito è un approccio suggerito. Separa il software di rilascio di Apigee hybrid dai file di configurazione che devi creare. Grazie all'utilizzo della variabile $APIGEECTL_HOME e dei link simbolici che creerai, puoi passare facilmente a una nuova versione del software, se lo desideri. Vedi anche Upgrade di Apigee hybrid.

  1. Assicurati di trovarti nella directory di base (la directory in cui si trova la directory apigeectl).
  2. Crea una nuova cartella denominata hybrid-files. Puoi assegnare alla directory il nome che preferisci, ma nella documentazione verrà utilizzato sempre il nome hybrid-files. In un secondo momento, memorizzerai in questa cartella i file di configurazione, le chiaviaccount di serviziot e i certificati TLS. Questa cartella ti consente di tenere separati i file di configurazione dall'installazione del software apigeectl:
    mkdir hybrid-files
  3. La struttura di directory corrente ora ha questo aspetto:
    pwd && ls
    /hybrid-base-directory
      apigeectl
      hybrid-files
  4. cd nella cartella hybrid-files:
    cd hybrid-files
  5. All'interno della directory hybrid-files, crea le seguenti tre sottodirectory per organizzare i file che creerai in un secondo momento:
    mkdir overrides
    mkdir service-accounts
    mkdir certs
  6. All'interno della directory hybrid-files, crea link simbolici a $APIGEECTL_HOME. Questi link simbolici ti consentono di eseguire il comando apigeectl dall'interno della directory hybrid-files:
    ln -s $APIGEECTL_HOME/tools tools
    ln -s $APIGEECTL_HOME/config config
    ln -s $APIGEECTL_HOME/templates templates
    ln -s $APIGEECTL_HOME/plugins plugins
  7. Per verificare che i link simbolici siano stati creati correttamente, esegui questo comando e assicurati che i percorsi dei link puntino alle posizioni corrette:
    ls -l | grep ^l
    

Creazione di account di servizio

Apigee Hybrid utilizza service account GCP per consentire ai componenti ibridi di comunicare effettuando chiamate API autorizzate. In questo passaggio, utilizzi uno strumento a riga di comando Apigee ibrido per creare un insieme di service account. Lo strumento scarica anche le chiavi private del account di servizio. Devi quindi aggiungere queste chiavi al file di configurazione del cluster Apigee Hybrid.

Crea le chiavi:

  1. Assicurati di trovarti nella directory base_directory/hybrid-files:
  2. Esegui questo comando dalla directory hybrid-files. Questo comando crea un account di servizio per il componente apigee-metrics e inserisce la chiave scaricata nella directory ./service-accounts:
    ./tools/create-service-account apigee-metrics ./service-accounts

    Quando viene visualizzato questo prompt, inserisci y:

    [INFO]: gcloud configured project ID is project_id.
     Press: y to proceed with creating service account in project: project_id
     Press: n to abort.

    Se è la prima volta che viene creato un SA con il nome esatto assegnato dallo strumento, allora lo strumento lo crea e non devi fare altro.

    Se, invece, visualizzi il seguente messaggio e prompt, seleziona y per generare nuove chiavi:

    [INFO]: Service account apigee-metrics@project_id.iam.gserviceaccount.com already exists.
    ...
     [INFO]: The service account might have keys associated with it. It is recommended to use existing keys.
     Press: y to generate new keys.(this does not de-activate existing keys)
     Press: n to skip generating new keys.
     
  3. Ora crea gli altri service account:
    ./tools/create-service-account apigee-synchronizer ./service-accounts
    ./tools/create-service-account apigee-udca ./service-accounts
    ./tools/create-service-account apigee-mart ./service-accounts
    ./tools/create-service-account apigee-cassandra ./service-accounts
    ./tools/create-service-account apigee-logger ./service-accounts
  4. Verifica che le chiavi del account di servizio siano state create. Sei responsabile di conservare queste chiavi private in modo sicuro. I nomi dei file delle chiavi sono preceduti dal nome del tuo progetto Google Cloud. Ad esempio:
    ls ./service-accounts
    gcp-project-id-apigee-cassandra.json
    gcp-project-id-apigee-logger.json
    gcp-project-id-apigee-mart.json
    gcp-project-id-apigee-metrics.json
    gcp-project-id-apigee-synchronizer.json
    gcp-project-id-apigee-udca.json

Crea certificati TLS

Devi fornire i certificati TLS per i gateway di ingresso MART e runtime nella configurazione di Apigee hybrid. Le credenziali utilizzate per il gateway MART devono� essere autorizzate da un'autorità di certificazione (CA). Ai fini di questa guida rapida (un'installazione di prova non di produzione), il gateway di runtime può accettare credenziali autofirmate.

In questo passaggio creerai i file delle credenziali TLS e li aggiungerai alla directory base_directory/hybrid-files/certs. Nel passaggio 3: configura il cluster, aggiungerai i percorsi dei file al file di configurazione del cluster.

Crea le credenziali TLS per il gateway runtime

Il gateway in entrata di runtime (il gateway che gestisce il traffico del proxy API) richiede una coppia chiave/certificato TLS. Per questa installazione della guida rapida, puoi utilizzare credenziali autofirmate. Nei passaggi successivi, openssl viene utilizzato per generare le credenziali.

  1. Assicurati di trovarti nella directory base_directory/hybrid-files.
  2. Esegui questo comando dalla directory hybrid-files:
    openssl req  -nodes -new -x509 -keyout ./certs/keystore.key -out \
        ./certs/keystore.pem -subj '/CN=mydomain.net' -days 3650

    Questo comando crea una coppia di certificato/chiave autofirmata che puoi utilizzare per l'installazione della guida rapida. Il nome comune mydomain.net può essere qualsiasi valore tu voglia per le credenziali autofirmate.

  3. Verifica che i file si trovino nella directory ./certs:
    ls ./certs
      keystore.pem
      keystore.key

    dove keystore.pem è il file del certificato TLS autofirmato e keystore.key è il file della chiave.

Crea le credenziali TLS per il gateway MART

Come indicato in Prima di iniziare, devi utilizzare una coppia di chiave/certificato TLS autorizzata per la configurazione del gateway MART. Se non l'hai ancora fatto, ottieni o crea queste credenziali ora.

  1. Ottieni o crea una coppia di chiave/certificato TLS autorizzata da un'autorità di certificazione. Viene fornito un esempio che mostra come ottenere queste credenziali utilizzando l'autorità di certificazione Let's Encrypt. Tieni presente che il nome comune (CN) del certificato deve essere un nome DNS valido. Per i passaggi dell'esempio, vedi Esempio: come ottenere le credenziali TLS.
  2. Copia le credenziali nella directory base_directory/hybrid-files/certs.
  3. Al termine, dovresti avere due coppie di file delle credenziali nella directory ./certs. Ad esempio:
    ls ./certs
      fullchain.pem
      privkey.key
      keystore.pem
      keystore.key

    dove fullchain.pem è il file del certificato TLS autorizzato e privkey.key è il file della chiave autorizzata.

Riepilogo

Ora hai una base di partenza da cui puoi configurare, eseguire il deployment e gestire Apigee Hybrid nel tuo cluster Kubernetes. Successivamente, creerai un file che verrà utilizzato da Kubernetes per eseguire il deployment dei componenti del runtime ibrido nel cluster.

1 2 (NEXT) Step 3: Configure the cluster 4