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
:
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
- Crea una directory sul sistema da utilizzare come directory di base per l'installazione di Apigee hybrid.
-
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
cd
alla directory di base.-
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 inapigeectl
:mv apigeectl_1.0.0-f7b96a8_linux_64 apigeectl
cd
nella directory. Ad esempio:- Crea una variabile di ambiente per contenere il percorso della home directory:
export APIGEECTL_HOME=$PWD
- Verifica che la variabile contenga il percorso corretto:
echo $APIGEECTL_HOME
cd ./apigeectl
Questa directory sarà la home directory di apigeectl
. È la posizione del comando eseguibile apigeectl
.
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.
- Assicurati di trovarti nella directory di base (la directory in cui si trova la directory
apigeectl
). - Crea una nuova cartella denominata
hybrid-files
. Puoi assegnare alla directory qualsiasi nome, ma nei documenti verrà utilizzato in modo coerente il nomehybrid-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 softwareapigeectl
:mkdir hybrid-files
- La struttura di directory corrente ora ha il seguente aspetto:
pwd && ls
/hybrid-base-directory apigeectl hybrid-files cd
nella cartellahybrid-files
:cd hybrid-files
- 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
- All'interno della directory
hybrid-files
, crea link simbolici a$APIGEECTL_HOME
. Questi link simbolici ti consentono di eseguire il comandoapigeectl
dall'interno della directoryhybrid-files
:ln -s
$APIGEECTL_HOME
/tools toolsln -s
$APIGEECTL_HOME
/config configln -s
$APIGEECTL_HOME
/templates templatesln -s
$APIGEECTL_HOME
/plugins plugins - 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:
- Assicurati di essere nella directory
base_directory/hybrid-files
: - Esegui il seguente comando dalla directory
hybrid-files
. Questo comando crea un account di servizio per il componenteapigee-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.
- 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
- 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.
- Assicurati di essere nella directory
base_directory/hybrid-files
. - 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.
- Verifica che i file siano nella directory
./certs
:ls ./certs
keystore.pem keystore.keydove
keystore.pem
è il file del certificato TLS autofirmato ekeystore.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.
- 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.
- Copia le credenziali nella directory
base_directory/hybrid-files/certs
. - Al termine, dovresti avere due coppie di file delle credenziali nella directory
./certs
. Ad esempio:ls ./certs
fullchain.pem privkey.key keystore.pem keystore.keydove
fullchain.pem
è il file del certificato TLS autorizzato eprivkey.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