Passaggio 2: installa e configura per GKE on-prem

Questo passaggio spiega come scaricare e installare apigeectl sulla macchina di amministrazione Anthos GKE di cui è stato eseguito il deployment on-prem. I passaggi includono la configurazione delle directory di installazione, la creazione di account di servizio Google Cloud necessari per la comunicazione dei componenti ibrida 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 di rilascio sulla macchina di amministrazione 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 a 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 sistema da utilizzare come 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 il percorso della home directory:

    export APIGEECTL_HOME=$PWD

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

Configura la struttura della directory del progetto

La struttura di directory descritta di seguito è un approccio suggerito. Separa il software di rilascio di Apigee hybrid dai file di configurazione che devi creare. Tramite l'uso della variabile $APIGEECTL_HOME e dei link simbolici che creerai, puoi passare facilmente a una nuova versione del software, se vuoi. Consulta anche Eseguire l'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 qualsiasi nome, ma nei documenti verrà utilizzato in modo coerente il nome hybrid-files. In un secondo momento, memorizzerai i file di configurazione, le chiavi dell'account di servizio e i certificati TLS in questa cartella. Questa cartella ti consente di mantenere i file di configurazione separati dall'installazione del software apigeectl:
    mkdir hybrid-files
  3. La struttura di directory corrente ora ha il seguente 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 indirizzino alle posizioni corrette:
    ls -l | grep ^l
    

Creazione di account di servizio

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

Crea le chiavi:

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

    Quando viene visualizzato questo messaggio, 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, 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 il resto degli account di servizio:
    ./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 dell'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 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 di 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 di runtime

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

  1. Assicurati di essere nella directory base_directory/hybrid-files.
  2. Esegui il seguente 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 chiavi/certificato autofirmato che puoi utilizzare per l'installazione guidata. Il CN mydomain.net può essere qualsiasi valore per le credenziali autofirmate.

  3. Verifica che i file siano 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 chiavi/un certificato TLS autorizzato per la configurazione del gateway MART. Se non lo hai ancora fatto, ottieni o crea queste credenziali ora.

  1. Ottieni o crea una coppia di chiavi/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 la procedura di esempio, consulta 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 di runtime ibrida nel cluster.

1 2 (AVANTI) Passaggio 3: configura il cluster 4