Edge for Private Cloud v. 4.16.05
Una tipica installazione di Edge è costituita da componenti Edge distribuiti su più nodi. Dopo aver installato Edge su un nodo, installa e configura uno o più componenti Edge sul nodo.
Procedura di installazione
L'installazione di Edge su un nodo è un processo in più passaggi:
- Disattiva SELinux sul nodo o impostalo sulla modalità permissiva. Per saperne di più, consulta Installa l'utilità apigee-setup di Edge.
- Seleziona la configurazione Edge dall'elenco delle topologie consigliate. Ad esempio, puoi installare Edge su un singolo nodo per i test o su 13 nodi per la produzione. Per saperne di più, consulta Topologie di installazione.
- Su ogni nodo della topologia selezionata, installa l'utilità Edge apigee-setup:
- Scarica il file Edge bootstrap_4.16.05.sh in /tmp/bootstrap_4.16.05.sh.
- Installa l'utilità Edge apigee-service e le dipendenze.
- Installa l'utilità Edge apigee-setup e le dipendenze.
Per saperne di più, consulta Installa l'utilità apigee-setup di Edge.
- Utilizza l'utilità apigee-setup per installare uno o più componenti Edge su ciascun nodo in base alla topologia selezionata.
Consulta Installa i componenti Edge su un nodo su un nodo. - Sul nodo del server di gestione, utilizza l'utilità apigee-setup per installare apigee-provision, le utilità che utilizzi per creare e gestire le organizzazioni Edge.
Per saperne di più, consulta Esegui l'onboarding di un'organizzazione.
Gestione di un errore di installazione
In caso di errore durante l'installazione di un componente Edge, puoi provare a correggere il problema e poi eseguire nuovamente il programma di installazione. Il programma di installazione è progettato per essere eseguito ripetutamente nei casi in cui rileva un errore o se in un secondo momento vuoi modificare o aggiornare un componente dopo l'installazione.
Configura la replica master-standby di Postgres
Per impostazione predefinita, Edge installa tutti i nodi Postgres in modalità master. Tuttavia, nei sistemi di produzione con più nodi Postgres, li configuri in modo che utilizzino la replica master-standby in modo che, se il nodo master non funziona, il nodo standby possa continuare a gestire il traffico. Per saperne di più, consulta Configura la replica master-standby per Postgres.
Chi può eseguire l'installazione
I file di distribuzione di Apigee Edge vengono installati come un insieme di RPM e dipendenze. Per installare, disinstallare e aggiornare Edge, i comandi Edge devono essere eseguiti dall'utente root o da un utente con accesso sudo completo. L'accesso sudo completo consente all'utente di eseguire le stesse operazioni di root.
Qualsiasi utente che voglia eseguire i seguenti comandi o script deve essere root o un utente con accesso sudo completo:
-
apigee-service:
- Comandi apigee-service: install, uninstall, update.
- Comandi apigee-all: install, uninstall, update.
- Lo script setup.sh per installare i componenti Edge (a meno che tu non abbia già utilizzato "apigee-service install" per installare gli RPM richiesti. Poi l'accesso root o sudo completo, se non richiesto.)
- Script update.sh per aggiornare i componenti Edge
Inoltre, il programma di installazione di Edge crea un nuovo utente sul tuo sistema, denominato "apigee". Molti comandi Edge richiamano sudo per l'esecuzione come utente "apigee".
Qualsiasi utente che voglia eseguire tutti gli altri comandi diversi da quelli mostrati sopra deve essere un utente con accesso sudo completo all'utente "apigee". Questi comandi includono:
-
Comandi dell'utilità apigee-service, tra cui:
- Comandi apigee-service come start, stop, restart, configure.
- Comandi apigee-all come start, stop, restart, configure.
Per configurare un utente in modo che abbia accesso sudo completo all'utente "apigee", modifica il file sudoers per aggiungere:
installUser ALL=(apigee) NOPASSWD: ALL
dove installUser è il nome utente della persona che lavora con Edge.
Tutti i file o le risorse utilizzati dai comandi Edge devono essere accessibili all'utente "apigee". Sono inclusi il file di licenza Edge e tutti i file di configurazione.
Quando crei un file di configurazione, puoi cambiarne il proprietario in "apigee:apigee" per assicurarti che sia accessibile ai comandi Edge:
- Crea il file in un editor come qualsiasi utente.
- Cambia il proprietario del file in "apigee:apigee" o, se hai cambiato l'utente che esegue il servizio Edge dall'utente "apigee", cambia il proprietario del file impostandolo sull'utente che esegue il servizio Edge.
Installazione invisibile dei componenti Edge
Devi passare all'utilità apigee-setup un file di configurazione contenente le informazioni sull'installazione di Edge. L'unico requisito per le installazioni invisibili è che il file di configurazione deve essere accessibile o leggibile dall'utente "apigee". Ad esempio, inserisci il file nella directory /tmp del nodo e impostane la proprietà su "apigee:apigee".
Tutte le informazioni nel file di configurazione sono obbligatorie, ad eccezione della password dell'amministratore di sistema Edge. Se ometti la password, l'utilità apigee-setup ti chiede di inserirla nella riga di comando.
Per saperne di più, consulta Installa i componenti Edge su un nodo.
Installazione con o senza connessione a internet
Per installare Edge su un nodo, quest'ultimo deve essere in grado di accedere al repository Apigee:
- Nodi con una connessione a internet esterna
I nodi con una connessione a internet esterna accedono al repository Apigee per installare gli RPM e le dipendenze di Edge. - Nodi senza una connessione a internet esterna
I nodi senza una connessione a internet esterna possono accedere a una versione sottoposta a mirroring del repository Apigee configurato internamente. Questo repository contiene tutti gli RPM Edge, ma devi assicurarti di avere tutte le altre dipendenze disponibili dai repository sulla rete interna.
Risoluzione delle dipendenze di installazione RPM
I file di distribuzione di Apigee Edge vengono installati come un insieme di file RPM, ognuno dei quali può avere la propria catena di dipendenze di installazione. Molte di queste dipendenze sono definite da componenti di terze parti che non sono sotto il controllo di Apigee e possono cambiare in qualsiasi momento. Pertanto, la documentazione non elenca il numero di versione esplicito di ogni dipendenza.
Se esegui un'installazione su una macchina con accesso a internet, il nodo può scaricare gli RPM e le dipendenze necessari. Tuttavia, se l'installazione viene eseguita da un nodo senza accesso a internet, in genere configuri un repository interno contenente tutte le dipendenze necessarie. L'unico modo per garantire che tutte le dipendenze siano incluse nel repository locale è tentare un'installazione, identificare eventuali dipendenze mancanti e copiarle nel repository locale fino a quando l'installazione non va a buon fine.
Configurazione di un host virtuale
Un host virtuale su Edge definisce i domini e le porte del router Edge su cui è esposto un proxy API e, per estensione, l'URL utilizzato dalle app per accedere a un proxy API. Un host virtuale definisce anche se l'accesso al proxy API avviene tramite il protocollo HTTP o tramite il protocollo HTTPS criptato.
Nell'ambito del processo di onboarding di Edge, devi creare un'organizzazione, un ambiente e un host virtuale. Edge fornisce il comando setup-org per semplificare questo processo per i nuovi utenti.
Quando crei l'host virtuale, devi specificare le seguenti informazioni:
- Il nome dell'host virtuale che utilizzi per fare riferimento all'host nei proxy API.
- La porta sul router per l'host virtuale. In genere, queste porte iniziano da 9001 e aumentano di uno per ogni nuovo host virtuale.
- L'alias host dell'host virtuale. In genere il nome DNS dell'host virtuale.
Il router perimetrale confronta l'intestazione Host della richiesta in arrivo con l'elenco degli alias host disponibili per determinare il proxy API che gestisce la richiesta. Quando effettui una richiesta tramite un host virtuale, specifica un nome di dominio che corrisponda all'alias host di un host virtuale oppure specifica l'indirizzo IP del router e l'intestazione Host contenente l'alias host.
Ad esempio, se hai creato un host virtuale con un alias host myapis.apigee.net sulla porta 9001, una richiesta cURL a un'API tramite quell'host virtuale potrebbe utilizzare una delle seguenti forme:
- Se hai una voce DNS per myapis.apigee.net:
curl http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path} - Se non hai una voce DNS per myapis.apigee.net:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} -H 'Host: myapis.apigee.net'
In questo modulo, specifichi l'indirizzo IP del router e passi l'alias host nell'intestazione Host.
Nota: il comando curl, la maggior parte dei browser e molte altre utilità aggiungono automaticamente l'intestazione Host con il dominio come parte della richiesta, quindi puoi effettivamente utilizzare un comando curl nel formato:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}
Opzioni quando non hai una voce DNS per l'host virtuale
Un'opzione quando non hai una voce DNS è impostare l'alias host sull'indirizzo IP del router e sulla porta dell'host virtuale, come <routerIP>:port. Ad esempio:
192.168.1.31:9001
Poi, esegui un comando curl nel formato seguente:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} Questa opzione è preferibile perché funziona bene con la UI di Edge.
Se hai più router, aggiungi un alias host per ogni router, specificando l'indirizzo IP di ogni router e la porta dell'host virtuale.
In alternativa, puoi impostare l'alias host su un valore, ad esempio temp.hostalias.com. Poi, devi passare l'intestazione Host in ogni richiesta:
curl -v http://<routerIP>:9001/{proxy-base-path}/{resource-path} -H 'host: temp.hostalias.com'In alternativa, aggiungi l'alias host al file hosts /etc/hosts. Ad esempio, aggiungi questa riga a /etc/hosts:
192.168.1.31 temp.hostalias.com
Puoi quindi effettuare una richiesta come se avessi una voce DNS:
curl -v http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}Configurazione dei componenti Edge dopo l'installazione
Per configurare Edge dopo l'installazione, utilizza una combinazione di file .properties e utilità Edge. Ad esempio, per configurare TLS/SSL sulla UI Edge, modifica i file .properties per impostare le proprietà necessarie. Le modifiche ai file .properties richiedono il riavvio del componente Edge interessato.
I file .properties si trovano nella directory /opt/apigee/customer/application. Ogni componente ha il proprio file .properties in quella directory. Ad esempio, router.properties e management-server.properties.
Per impostare una proprietà per un componente, modifica il file .properties corrispondente, quindi riavvia il componente:
> /opt/apigee/apigee-service/bin/apigee-service component restart
Ad esempio:
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
Quando aggiorni Edge, vengono letti i file .properties nella directory /opt/apigee/customer/application. Ciò significa che l'aggiornamento conserva tutte le proprietà impostate sul componente.
Per saperne di più sulla configurazione di Edge, consulta Come configurare Edge.
Assicurati che il router perimetrale possa accedere a /etc/rc.d/init.d/functions
Il router Edge e un portale BaaS utilizzano entrambi il router Nginx e richiedono l'accesso in lettura a /etc/rc.d/init.d/functions.
Se la tua procedura di sicurezza richiede l'impostazione delle autorizzazioni su /etc/rc.d/init.d/functions, non impostarle su 700, altrimenti l'avvio del router non andrà a buon fine. Le autorizzazioni possono essere impostate su 744 per consentire l'accesso in lettura a /etc/rc.d/init.d/functions.
Richiamo di comandi sui componenti Edge
Edge installa le utilità di gestione in /opt/apigee/apigee-service/bin che puoi utilizzare per gestire un'installazione di Edge. Ad esempio, puoi utilizzare l'utilità apigee-all per avviare, arrestare, riavviare o determinare lo stato di tutti i componenti Edge sul nodo:
/opt/apigee/apigee-service/bin/apigee-all stop|start|restart|status|version
Utilizza l'utilità apigee-service per controllare e configurare i singoli componenti. L'utilità apigee-service ha il seguente formato:
/opt/apigee/apigee-service/bin/apigee-service component action
Ad esempio, per riavviare il router perimetrale:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
Puoi determinare l'elenco dei componenti installati sul nodo esaminando la directory /opt/apigee. Questa directory contiene una sottodirectory per ogni componente Edge installato sul nodo. Ogni sottodirectory è preceduta da:
- apigee: un componente di terze parti utilizzato da Edge. Ad esempio, apigee-cassandra.
- edge: un componente Edge di Apigee. Ad esempio, edge-management-server.
- edge-mint: un componente di Monetization. Ad esempio edge-mint-management-server.
- baas: un componente API BaaS. Ad esempio baas-usergrid.
L'elenco completo delle azioni per un componente dipende dal componente stesso, ma tutti i componenti supportano le seguenti azioni:
- start, stop, restart
- status, version
- backup, restore
- install, uninstall
Accesso ai file di log
Il file di log per apigee-setup e lo script setup.sh viene scritto in /tmp/setup-root.log.
I file di log per ogni componente sono contenuti nella directory /opt/apigee/var/log. Ogni componente ha la propria sottodirectory. Ad esempio, i log per il server di gestione si trovano nella directory:
/opt/apigee/var/log/edge-management-server
Comandi Yum comuni
Gli strumenti di installazione di Edge per Linux si basano su Yum per installare e aggiornare i componenti. Potresti dover utilizzare diversi comandi Yum per gestire un'installazione su un nodo.
- Svuota tutte le cache Yum:
sudo yum clean all - Per aggiornare un componente Edge:
sudo yum update componentName
Ad esempio:
sudo yum update apigee-setup
sudo yum update edge-management-server
Struttura del file system
Edge installa tutti i file nella directory /opt/apigee.
In questa guida e nella Guida alle operazioni di Edge, la directory di installazione principale è indicata come:
<inst_root>/apigee
L'installazione utilizza la seguente struttura del file system per eseguire il deployment di Apigee Edge for Private Cloud.
File di log
|
Componenti |
Località |
|---|---|
|
Server di gestione |
<inst_root>/apigee/var/log/edge-management-server |
|
Router |
<inst_root>/apigee/var/log/edge-router |
|
processore di messaggi |
<inst_root>/apigee/var/log/edge-message-processor |
|
Server Apigee Qpid |
<inst_root>/apigee/var/log/edge-qpid-server |
|
Server Apigee Postgres |
<inst_root>/apigee/var/log/edge-postgres-server |
|
UI Edge |
<inst_root>/apigee/var/log/edge-ui |
|
ZooKeeper |
<inst_root>/apigee/var/log/apigee-zookeeper |
|
OpenLDAP |
<inst_root>/apigee/var/log/apigee-openldap |
|
Cassandra |
<inst_root>/apigee/var/log/apigee-cassandra |
|
Qpidd |
<inst_root>/apigee/var/log/apigee-qpidd |
|
Database PostgreSQL |
<inst_root>/apigee/var/log/apigee-postgresql |
Dati
|
Componenti |
Località |
|---|---|
|
Server di gestione |
<data_root>/apigee/data/edge-management-server |
|
Router |
<data_root>/apigee/data/edge-router |
|
processore di messaggi |
<data_root>/apigee/data/edge-message-processor |
|
Agente Apigee Qpid |
<data_root>/apigee/data/edge-qpid-server |
|
Agente Apigee Postgres |
<data_root>/apigee/data/edge-postgres-server |
|
ZooKeeper |
<data_root>/apigee/data/apigee-zookeeper |
|
OpenLDAP |
<data_root>/apigee/data/apigee-openldap |
|
Cassandra |
<data_root>/apigee/data/apigee-cassandra/data |
|
Qpidd |
<data_root>/apigee/data/apigee-qpid/data |
|
Database PostgreSQL |
<data_root>/apigee/data/apigee-postgres/pgdata |