Considerazioni sull'installazione

Edge per Private Cloud v. 4.16.05

Una tipica installazione Edge è composta da componenti Edge distribuiti su più nodi. Dopo aver installato Edge su un nodo, installerai e configurerai uno o più componenti Edge sul nodo.

Procedura di installazione

L'installazione di Edge su un nodo è un processo in più passaggi:

  • Disabilita SELinux sul nodo o impostalo in modalità permissiva. Per saperne di più, consulta Installare l'utilità Edge apigee-setup.
  • Seleziona la configurazione perimetrale dall'elenco di 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 la sezione Topologie di installazione.
  • Su ciascun nodo nella topologia selezionata, installa l'utilità Edge apigee-setup:
    • Scarica il file di Edge bootstrap_4.16.05.sh in /tmp/bootstrap_4.16.05.sh.
    • Installa l'utilità e le dipendenze apigee-service di Edge.
    • Installa l'utilità e le dipendenze apigee-setup di Edge.

      Per saperne di più, consulta Installare l'utilità Edge apigee-setup.
  • Utilizza l'utilità apigee-setup per installare uno o più componenti Edge su ciascun nodo in base alla topologia selezionata.
    Vedi Installare 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 puoi utilizzare per creare e gestire le organizzazioni Edge.
    Per ulteriori informazioni, vedi Eseguire 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 risolvere il problema, quindi eseguire nuovamente il programma di installazione. Il programma di installazione è progettato per essere eseguito ripetutamente nei casi in cui rilevi un errore o se in un secondo momento vuoi modificare o aggiornare un componente dopo l'installazione.

Configura la replica master in standby Postgres

Per impostazione predefinita, Edge installa tutti i nodi Postgres in modalità master. Tuttavia, nei sistemi di produzione con più nodi Postgres, puoi configurarli in modo da utilizzare la replica in standby master in modo che, in caso di errore del nodo master, il nodo standby possa continuare a indirizzare il traffico del server. Per saperne di più, consulta Configurare la replica master in standby per Postgres.

Chi può eseguire l'installazione

I file di distribuzione di Apigee Edge vengono installati come insieme di RPM e dipendenze. Per installare, disinstallare e aggiornare Edge, i comandi di Edge devono essere eseguiti dall'utente root o da un utente con accesso sudo completo. Per l'accesso completo sudo, significa che l'utente dispone dell'accesso sudo per eseguire le stesse operazioni dell'utente root.

Qualsiasi utente che voglia eseguire i comandi o gli script seguenti deve essere root o essere un utente con accesso sudo completo:

  • Utilità apigee-service:
    • Comandi apigee-service: install, disabled, update.
    • Comandi apigee-all: install, disinstallare, update.
  • Script setup.sh per installare i componenti Edge (a meno che tu non abbia già utilizzato "apigee-service install" per installare gli RPM richiesti. quindi l'accesso root o sudo completo, se non richiesto.
  • Script update.sh per aggiornare i componenti Edge

Inoltre, il programma di installazione Edge crea un nuovo utente sul tuo sistema, denominato "apigee". Molti comandi Edge richiamano sudo per essere eseguiti 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 completo sudo 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 gli eventuali file di configurazione.

Quando crei un file di configurazione, puoi modificare il proprietario in "apigee:apigee" per garantire che sia accessibile ai comandi Edge:

  1. Crea il file in un editor come qualsiasi utente.
  2. Assegna il proprietario del file ad "apigee:apigee" o, se hai modificato l'utente che esegue il servizio Edge da "apigee", a favore di chi esegue il servizio Edge.

Installazione invisibile dei componenti di Edge

Devi passare un file di configurazione all'utilità apigee-setup che contiene 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 sul nodo e assegna il chown ad "apigee:apigee".

Sono obbligatorie tutte le informazioni nel file di configurazione, 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 Installare i componenti Edge su un nodo.

Installazione tramite Internet o non

Per installare Edge su un nodo, il nodo 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 perimetrali.
  • Nodi senza una connessione a internet esterna

    I nodi senza una connessione a internet esterna possono accedere a una versione con mirroring del repository Apigee che hai configurato internamente. Questo repository contiene tutti i RPM Edge, ma devi assicurarti di avere a disposizione tutte le altre dipendenze dai repository sulla rete interna.

Risoluzione delle dipendenze di installazione RPM

I file di distribuzione di Apigee Edge vengono installati come set 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 esulano dal 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 necessarie. Tuttavia, se esegui l'installazione 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 perimetrale su cui è esposto un proxy API e, per estensione, l'URL che le app utilizzano per accedere a un proxy API. Un host virtuale definisce inoltre se è possibile accedere al proxy API utilizzando il protocollo HTTP o 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 farvi riferimento nei proxy API.
  • La porta sul router per l'host virtuale. In genere queste porte iniziano da 9001 e si incrementano di una 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 entrata con l'elenco degli alias host disponibili nell'ambito della determinazione del 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 di myapis.apigee.net sulla porta 9001, una richiesta cURL a un'API tramite questo host virtuale potrebbe utilizzare uno dei seguenti moduli:

  • Se hai una voce DNS per myapis.apigee.net:

    curl http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}
  • Se non disponi di 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 dell'host nell'intestazione dell'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, in modo da poter utilizzare un comando curl nel formato:


    curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}

Opzioni disponibili quando non è disponibile una voce DNS per l'host virtuale

Se non disponi di una voce DNS, puoi impostare l'alias host sull'indirizzo IP del router e della porta dell'host virtuale, ad esempio <routerIP>:port. Ad esempio:

192.168.1.31:9001

Quindi esegui un comando curl nel seguente formato:

curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} 

Questa opzione è preferibile perché funziona bene con l'UI Edge.

Se disponi di più router, aggiungi un alias host per ciascun router, specificando l'indirizzo IP di ogni router e la porta dell'host virtuale.

In alternativa, puoi impostare un valore per l'alias host, ad esempio temp.hostalias.com. Successivamente, devi passare l'intestazione Host a 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 /etc/hosts. Ad esempio, aggiungi questa riga a /etc/hosts:

192.168.1.31   temp.hostalias.com

Quindi puoi 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à di Edge. Ad esempio, per configurare TLS/SSL sulla UI perimetrale, devi modificare i file .properties in modo da 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à che hai impostato sul componente.

Consulta Come configurare Edge per ulteriori informazioni sulla configurazione di Edge.

Assicurati che il router perimetrale possa accedere a /etc/rc.d/init.d/functions

Il router perimetrale e il portale BaaS utilizzano entrambi il router Nginx e richiedono l'accesso in lettura a /etc/rc.d/init.d/functions.

Se il tuo processo di sicurezza richiede l'impostazione di autorizzazioni su /etc/rc.d/init.d/functions, non impostarle su 700, altrimenti il router non si avvia. 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

Utilità di gestione delle installazioni da Edge 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 Edge:

/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 per la monetizzazione. 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:

  • avviare, arrestare, riavviare
  • stato, versione
  • backup, ripristino
  • installare, disinstallare

Accesso ai file di log

Il file di log per apigee-setup e lo script setup.sh è scritto in /tmp/setup-root.log.

I file di log per ciascun componente sono contenuti nella directory /opt/apigee/var/log. Ogni componente ha una 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.

  • Pulisci tutte le cache di 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 operativa a livello perimetrale, la directory di installazione root è indicata come:

<inst_root>/apigee

L'installazione utilizza la seguente struttura di file system per eseguire il deployment di Apigee Edge per il cloud privato.

File di log

Componenti

Posizione

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 Qpid Apigee

<inst_root>/apigee/var/log/edge-qpid-server

Server Apigee Postgres

<inst_root>/apigee/var/log/edge-postgres-server

UI perimetrale

<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

Posizione

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 Qpid Apigee

<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