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 degli account di servizio Google Cloud necessari per la comunicazione dei componenti ibridi e la creazione delle 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.
I seguenti passaggi descrivono come ottenere apigeectl:
-
Archivia il numero dell'ultima versione in una variabile utilizzando il seguente comando:
export VERSION=$(curl -s \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/current-version.txt?ignoreCache=1) -
Verifica che la variabile sia stata compilata con un numero di versione utilizzando il seguente comando. Se
vuoi utilizzare una versione diversa, puoi salvarla in una variabile di ambiente.
echo $VERSION
-
Scarica il pacchetto di rilascio per il tuo sistema operativo utilizzando il seguente comando:
Mac a 64 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_64.tar.gzLinux a 64 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_64.tar.gzMac 32 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_32.tar.gzLinux a 32 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_32.tar.gz - Crea una directory sul tuo sistema che funga da directory di base per l'installazione di Apigee hybrid.
-
Estrai i contenuti del file gzip scaricato nella directory di base appena creata utilizzando il seguente comando:
tar xvzf filename.tar.gz -C path-to-base-directory
-
Cambia directory impostandola su quella di base utilizzando il comando
cd. -
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 inapigeectlutilizzando il seguente comando:mv apigeectl_1.0.0-f7b96a8_linux_64 apigeectl
-
Passa alla directory utilizzando il seguente comando:
cd ./apigeectl
Questa directory è la home directory di
apigeectl. È la posizione del comando eseguibileapigeectl. -
Crea una variabile di ambiente per contenere questo percorso della home directory utilizzando il seguente comando:
export APIGEECTL_HOME=$PWD
-
Verifica che la variabile contenga il percorso corretto utilizzando il seguente comando:
echo $APIGEECTL_HOME
Configurare la struttura delle directory del progetto
La seguente struttura di directory è 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 crei, puoi passare facilmente a una nuova versione del software, se lo desideri. Vedi anche Upgrade di Apigee hybrid.
-
Assicurati di trovarti nella directory di base (la directory in cui si trova la directory
apigeectl) utilizzando il seguente comando:cd $APIGEECTL_HOME/..
-
Crea una nuova cartella denominata
hybrid-filesutilizzando il seguente comando. Puoi assegnare alla directory il nome che preferisci, ma nei documenti il nomehybrid-filesviene utilizzato in modo coerente. In un secondo momento, in questa cartella verranno archiviati i file di configurazione, le chiavi account di servizio e i certificati TLS. Questa cartella ti consente di tenere separati i file di configurazione dall'installazione del softwareapigeectl.mkdir hybrid-files
-
La struttura di directory corrente ora è simile alla seguente:
pwd && ls/hybrid-base-directory apigeectl hybrid-files -
Passa alla directory della cartella
hybrid-filesutilizzando il seguente comando:cd hybrid-files
-
All'interno della directory
hybrid-files, crea le seguenti sottodirectory per organizzare i file che creerai in un secondo momento:mkdir overridesmkdir service-accountsmkdir certs -
All'interno della directory
hybrid-files, crea i seguenti link simbolici a$APIGEECTL_HOME. Questi link ti consentono di eseguire il comandoapigeectldalla directoryhybrid-filescome mostrato nell'esempio seguente: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 puntino 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 ibridi di comunicare effettuando chiamate API autorizzate. In questo passaggio, utilizzi uno strumento a riga di comando Apigee Hybrid 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.
Apigee fornisce uno strumento, create-service-account, che crea il account di servizio,
assegna i ruoli al account di servizio e crea e scarica i file delle chiavi per il service
account in un unico comando. Per scoprire di più sui concetti correlati di Google Cloud, consulta
Creazione
e gestione dei service account e
Creazione
e gestione account di servizio account.
-
Assicurati di trovarti nella directory
base_directory/hybrid-filesche hai configurato in Configurare la struttura delle directory del progetto. -
Esegui questo comando dalla directory
hybrid-files. Questo comando crea un account di servizio per il componenteapigee-metricse inserisce la chiave scaricata nella directory./service-accounts../tools/create-service-account apigee-metrics ./service-accounts
Quando viene visualizzato il seguente 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, inserisci 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 gli altri service account utilizzando i seguenti comandi. Il comando
create-service-accountè interattivo e richiede una risposta per ogni 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
./tools/create-service-account apigee-watcher ./service-accounts
-
Verifica che le chiavi dell'account di servizio siano state create utilizzando il seguente comando. Sei responsabile di conservare queste
chiavi private in modo sicuro. I nomi dei file delle chiavi hanno come prefisso il nome del tuo progetto Google Cloud.
ls ./service-accounts
Il risultato dovrebbe essere simile al seguente:
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 gcp-project-id-apigee-watcher.json
-
Assegna il ruolo Amministratore organizzazione Apigee agli account di servizio
apigee-org-admin: -
Verifica che l'indirizzo email del account di servizio
apigee-org-adminsegua il patternservice_account@PROJECT_ID.iam.gserviceaccount.comcome mostrato nell'esempio seguente:gcloud iam service-accounts list --filter "apigee-org-admin"
-
Assegna il ruolo con il seguente comando:
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member serviceAccount:apigee-org-admin@$PROJECT_ID.iam.gserviceaccount.com --role roles/apigee.admin
dove PROJECT_ID è il tuo progetto Google Cloud. Se gli indirizzi email del tuo account di servizio sono diversi da questo pattern, sostituiscili di conseguenza.
L'output deve includere un elenco di tutti i service account e dei relativi ruoli, tra cui i seguenti:
- members: - serviceAccount:apigee-org-admin@hybrid-example-2.iam.gserviceaccount.com role: roles/apigee.admin
Crea certificati TLS
Devi fornire i certificati TLS per il gateway in entrata di runtime nella tua configurazione ibrida di Apigee. Ai fini di questa guida rapida (un'installazione di prova non di produzione), il gateway di runtime può accettare credenziali autofirmate. Nei passaggi successivi, openssl viene utilizzato per generare le credenziali autofirmate.
In questo passaggio creerai i file delle credenziali TLS e li aggiungerai alla
directory base_directory/hybrid-files/certs.
In
Passaggio 4: configura il cluster,
aggiungerai i percorsi dei file al file di configurazione del cluster.
- Assicurati di trovarti nella directory
base_directory/hybrid-filesche hai configurato in Configurare la struttura delle directory del progetto. - Assicurati che il nome di dominio sia salvato nella variabile di ambiente
DOMAINutilizzando il comando seguente:echo $DOMAIN
-
Esegui questo comando dalla directory
hybrid-files:openssl req -nodes -new -x509 -keyout ./certs/keystore.key -out \ ./certs/keystore.pem -subj '/CN='$DOMAIN'' -days 3650Dove
DOMAINè il dominio che hai prenotato per l'installazione ibrida in Guida rapida (ibrida) Passaggio 5: configura il DNS.Questo comando crea una coppia di certificato/chiave autofirmata che puoi utilizzare per l'installazione della guida rapida.
-
Verifica che i file si trovino nella directory
./certsutilizzando questo comando:ls ./certskeystore.pem keystore.keydove
keystore.pemè il file del certificato TLS autofirmato ekeystore.keyè il file della chiave.
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 utilizzato da Kubernetes per eseguire il deployment dei componenti del runtime ibrido nel cluster.
1 2 3 (NEXT) Step 4: Configure the cluster 5