Requisiti di installazione

Requisiti hardware

Devi soddisfare i seguenti requisiti hardware minimi per un'alta disponibilità dell'infrastruttura in un ambiente di produzione.

Il seguente video fornisce indicazioni generali sulle dimensioni della tua installazione:

Per tutti gli scenari di installazione descritti in Topologie di installazione, le seguenti tabelle elencano le Requisiti hardware minimi per i componenti dell'installazione.

In queste tabelle i requisiti del disco rigido si aggiungono allo spazio su disco rigido richiesto tipo e quantità di spazio di archiviazione necessari e sistema operativo. A seconda delle applicazioni e del traffico di rete, l'installazione potrebbe richiedono più o meno risorse rispetto a quelle elencate di seguito.

Componente di installazione RAM CPU Numero minimo di dischi rigidi
Cassandra 16 GB 8 core 250 GB di spazio di archiviazione locale con SSD che supporta 2000 IOPS
Processore/router di messaggi sulla stessa macchina 16 GB 8 core 100GB
Processore di messaggi (autonomo) 16 GB 8 core 100GB
Router (autonomo) 16 GB 8 core 100GB
Analisi - Postgres/Qpid sullo stesso server 16GB* 8 core* 500 GB-1 TB** di spazio di archiviazione di rete***, preferibilmente con backend SSD, supporto di 1000 IOPS o superiore*
Analytics - Master Postgres o standby (autonomo) 16GB* 8 core* 500 GB-1 TB** di spazio di archiviazione di rete***, preferibilmente con backend SSD, supporto di 1000 IOPS o superiore*
Analytics - Qpid autonomo 8 GB 4 core 30-50 GB di spazio di archiviazione locale con SSD

La dimensione predefinita della coda Qpid è 1 GB, che può essere aumentata a 2 GB. Se hai bisogno una maggiore capacità, aggiungi altri nodi Qpid.

OpenLDAP/UI/Server di gestione 8 GB 4 core 60 GB
UI/server di gestione 4 GB 2 core 60 GB
OpenLDAP (autonomo) 4 GB 2 core 60 GB

* Regola i requisiti di sistema di Postgres in base alla velocità effettiva:

  • Meno di 250 TPS: 8 GB, 4 core possono essere considerati con la rete gestita spazio di archiviazione*** che supporta 1000 IOPS o più
  • Più di 250 TPS: spazio di archiviazione di rete gestito, 8 core da 16 GB*** supportando 1000 IOPS o superiori
  • Più di 1000 TPS: spazio di archiviazione di rete gestito, 8 core, 16 GB*** supportando 2000 IOPS o superiori
  • Più di 2000 TPS: spazio di archiviazione di rete gestito, 16 core, 32 GB*** supportando 2000 IOPS o superiori
  • Più di 4000 TPS: spazio di archiviazione di rete gestito, 64 GB, 32 core*** supportando 4000 IOPS o superiori

** Il valore del disco rigido Postgres si basa sull'analisi pronta all'uso acquisita da Edge. Se aggiungi valori personalizzati ai dati di analisi, questi valori devono essere aumentati. di conseguenza. Utilizza la seguente formula per stimare lo spazio di archiviazione richiesto:

bytes of storage needed =

  (# bytes of analytics data/request) *

  (requests/second) *

  (seconds/hour) *

  (hours of peak usage/day) *

  (days/month) *

  (months of data retention)

Ad esempio:

(2K bytes) * (100 req/sec) * (3600 secs/hr) * (18 peak hours/day) * (30 days/month) * (3 months retention)

= 1,194,393,600,000 bytes or 1194.4 GB of storage needed

*** L'archiviazione di rete è consigliata per il database Postgresql perché:

  • Consente di fare dinamicamente lo scale up delle dimensioni dello spazio di archiviazione se e quando obbligatorio.
  • Il numero di IOPS di rete può essere modificato in tempo reale nella maggior parte delle di ambiente/archiviazione/rete.
  • Gli snapshot a livello di archiviazione possono essere abilitati come parte del backup e ripristino soluzioni.

Inoltre, di seguito sono elencati i requisiti hardware per installare Servizi di monetizzazione (non supportati nell'installazione All-in-One):

Componente con Monetizzazione RAM CPU Disco rigido
Server di gestione (con servizi di monetizzazione) 8 GB 4 core 60 GB
Analisi - Postgres/Qpid sullo stesso server 16 GB 8 core 500 GB - 1 TB di spazio di archiviazione di rete, preferibilmente con backend SSD, con supporto di 1000 IOPS o utilizza la regola della tabella precedente.
Analytics - Master Postgres o standby autonomo 16 GB 8 core 500 GB - 1 TB di spazio di archiviazione di rete, preferibilmente con backend SSD, con supporto di 1000 IOPS o utilizza la regola della tabella precedente.
Analytics - Qpid autonomo 8 GB 4 core 40-500 GB di spazio di archiviazione locale con SSD o HDD veloce

Per installazioni con una potenza superiore a 250 TPS, è necessario utilizzare un disco rigido con spazio di archiviazione locale che supporta 1000 IOPS consigliato.

Sistema operativo e terze parti requisiti software

Queste istruzioni di installazione e i file di installazione forniti sono stati testati sulla sistemi operativi e software di terze parti elencati nella Software supportati e versioni supportate.

Java

È necessaria una versione supportata di Java 1.8 installata su ogni macchina prima dell'installazione. I JDK supportati sono elencati in Software supportati e versioni supportate.

Assicurati che la variabile di ambiente JAVA_HOME punti alla radice del JDK per l'utente che esegue l'installazione.

SELinux

A seconda delle impostazioni di SELinux, Edge può riscontrare problemi con l'installazione e l'avvio Componenti periferici. Se necessario, puoi disabilitare SELinux o impostarlo in modalità permissiva installazione e poi riattivarla dopo l'installazione. Per saperne di più, vedi Installare l'utilità apigee-setup Edge.

Creazione dell''apigee' utente

La procedura di installazione crea un utente di sistema Unix denominato 'apigee'. le directory periferiche i file sono di proprietà di 'apigee', così come i processi Edge. Ciò significa che i componenti Edge vengono eseguiti 'apigee' utente. Se necessario, puoi eseguire i componenti con un altro utente.

Directory di installazione

Per impostazione predefinita, il programma di installazione scrive tutti i file nella directory /opt/apigee. Tu impossibile modificare questo percorso della directory. Anche se non puoi modificare questa directory, puoi creare un per mappare /opt/apigee a un'altra posizione, come descritto in Creazione di un link simbolico da /opt/apigee.

Nelle istruzioni di questa guida, la directory di installazione è indicata come /opt/apigee.

Prima di creare il link simbolico, devi prima creare un utente e un gruppo denominati "apigee". Questo è lo stesso gruppo e lo stesso utente creati dal programma di installazione di Edge.

Per creare il collegamento simbolico, eseguire questi passaggi prima di scaricare il file bootstrap_4.52.00.sh. Devi eseguire tutti questi passaggi come root:

  1. Crea "apigee" utente e gruppo:
    groupadd -r apigee > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
  2. Crea un collegamento simbolico da /opt/apigee alla radice di installazione desiderata:
    ln -Ts /srv/myInstallDir /opt/apigee

    Dove /srv/myInstallDir è la posizione desiderata dei file Edge.

  3. Cambia la proprietà della radice di installazione e del link simbolico con "apigee" utente:
    chown -h apigee:apigee /srv/myInstallDir /opt/apigee

Impostazioni di rete

Apigee consiglia di controllare l'impostazione di rete prima dell'installazione. L'utente che ha eseguito l'installazione prevede che tutte le macchine abbiano indirizzi IP fissi. Utilizza i seguenti comandi per convalidare dell'impostazione:

  • hostname restituisce il nome della macchina
  • hostname -i restituisce l'indirizzo IP per il nome host a cui può essere indirizzato. ad altre macchine.

A seconda del tipo e della versione del sistema operativo, potrebbe essere necessario modificare /etc/hosts e /etc/sysconfig/network se il nome host non è siano impostati correttamente. Per ulteriori informazioni, consulta la documentazione del sistema operativo in uso.

Se un server ha più schede di interfaccia, il valore "hostname -i" il comando restituisce uno spazio di indirizzi IP. Per impostazione predefinita, il programma di installazione Edge utilizza il primo indirizzo IP restituito, che potrebbero non essere corrette in tutte le situazioni. In alternativa, puoi impostare la seguente proprietà in il file di configurazione dell'installazione:

ENABLE_DYNAMIC_HOSTIP=y

Con questa proprietà impostata su "y", il programma di installazione ti chiede di selezionare l'indirizzo IP da utilizzare come parte dell'installazione. Il valore predefinito è "n". Per ulteriori informazioni, consulta la sezione Riferimento file di configurazione Edge.

Wrapper TCP

I wrapper TCP possono bloccare la comunicazione tra alcune porte e influenzare OpenLDAP, Postgres e Installazione di Cassandra. Su questi nodi, controlla /etc/hosts.allow /etc/hosts.deny per garantire che non ci siano limitazioni per le porte sull'istanza richiesta Porte OpenLDAP, Postgres e Cassandra.

iptables

Verifica che non esistano criteri iptables che impediscano la connettività tra i nodi sul porte perimetrali richieste. Se necessario, puoi interrompere iptables durante l'installazione utilizzando :

sudo/etc/init.d/iptables stop

Su CentOS 7.x:

systemctl stop firewalld

Accesso alla directory

La tabella seguente elenca le directory sui nodi Edge che hanno requisiti speciali Processi periferici:

Servizio Directory Descrizione
Router /etc/rc.d/init.d/functions

Il router perimetrale utilizza il router Nginx e richiede l'accesso in lettura /etc/rc.d/init.d/functions.

Se il processo di sicurezza richiede l'impostazione delle autorizzazioni su /etc/rc.d/init.d/functions, non impostarle su 700, altrimenti il router l'avvio non riesce.

Puoi impostare le autorizzazioni su 744 per consentire l'accesso in lettura a /etc/rc.d/init.d/functions.

Zookeeper /dev/random La libreria client di Zookeeper richiede l'accesso in lettura al generatore di numeri casuali /dev/random. Se /dev/random è bloccato durante la lettura, Il servizio Zookeeper potrebbe non essere avviato.

Cassandra

Tutti i nodi Cassandra devono essere connessi a un anello. Cassandra archivia le repliche dei dati nodi multipli per garantire affidabilità e tolleranza di errore. La strategia di replica per ogni Lo spazio delle chiavi perimetrale determina i nodi Cassandra in cui vengono inserite le repliche. Per ulteriori informazioni, vedi Informazioni su Cassandra fattore di replica e livello di coerenza.

Cassandra regola automaticamente la dimensione dell'heap Java in base alla memoria disponibile. Per ulteriori informazioni, vedi Ottimizzazione Risorse Java in caso di peggioramento delle prestazioni o consumo elevato della memoria.

Dopo aver installato Edge per il cloud privato, puoi verificare che Cassandra sia configurato correttamente esaminando /opt/apigee/apigee-cassandra/conf/cassandra.yaml . Ad esempio, assicurati che lo script di installazione di Edge per il cloud privato imposti quanto segue proprietà:

  • cluster_name
  • initial_token
  • partitioner
  • seeds
  • listen_address
  • rpc_address
  • snitch
di Gemini Advanced.

Database PostgreSQL

Dopo aver installato Edge, puoi modificare le seguenti impostazioni del database PostgreSQL in base al di RAM disponibile nel sistema:

conf_postgresql_shared_buffers = 35% of RAM      # min 128kB
conf_postgresql_effective_cache_size = 45% of RAM
conf_postgresql_work_mem = 512MB       # min 64kB

Per impostare questi valori:

  1. Modifica il file postgresql.properties:
    vi /opt/apigee/customer/application/postgresql.properties

    Se il file non esiste, crealo.

  2. Imposta le proprietà elencate sopra.
  3. Salva le modifiche.
  4. Riavvia il database PostgreSQL:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart

Limiti del sistema

Assicurati di aver impostato i seguenti limiti di sistema su Cassandra e sul processore di messaggi nodi:

  • Nei nodi Cassandra, imposta limiti per memlock soft e hard, nofile e spazio di indirizzi (as) per utente dell'installazione (il valore predefinito è "apigee") in /etc/security/limits.d/90-apigee-edge-limits.conf come mostrato di seguito:
    apigee soft memlock unlimited
    apigee hard memlock unlimited
    apigee soft nofile 32768
    apigee hard nofile 65536
    apigee soft as unlimited
    apigee hard as unlimited
    apigee soft nproc 32768
    apigee hard nproc 65536
  • Nei nodi del processore di messaggi, imposta il numero massimo di descrittori di file aperti su 64.000 in /etc/security/limits.d/90-apigee-edge-limits.conf, come mostrato di seguito:
    apigee soft nofile 32768
    apigee hard nofile 65536

    Se necessario, puoi aumentare questo limite. Ad esempio, se disponi di un gran numero i file temporanei aperti in qualsiasi momento.

  • Se visualizzi il seguente errore in un router o un processore di messaggi system.log, è possibile che i limiti per il descrittore del file siano troppo bassi:

    "java.io.IOException: Too many open files"
    

    Per verificare i limiti di utenti, esegui:

    # su - apigee
    $ ulimit -n
    100000
    

    Se stai ancora raggiungendo i limiti relativi ai file aperti dopo aver impostato i limiti del descrittore dei file su 100000, apri un ticket con l'assistenza Apigee Edge per ulteriore risoluzione dei problemi.

Network Security Services (NSS)

Network Security Services (NSS) è un insieme di librerie che supporta lo sviluppo di con applicazioni client e server abilitate alla sicurezza. Devi assicurarti di aver installato NSS v3.19 o successive.

Per controllare la versione in uso:

yum info nss

Per aggiornare NSS:

yum update nss

Consulta questo articolo. di RedHat per ulteriori informazioni.

Disattiva la ricerca DNS su IPv6 con NSCD (Name Service Cache Daemon)

Se hai installato e abilitato NSCD (Name Service Cache Daemon), i processori di messaggi esegui due ricerche DNS: una per IPv4 e una per IPv6. Devi disattivare la ricerca DNS su IPv6 quando utilizzando NSCD.

Per disattivare la ricerca DNS su IPv6:

  1. Su ogni nodo del processore di messaggi, modifica /etc/nscd.conf
  2. Imposta la seguente proprietà:
    enable-cache hosts no

Disabilita IPv6 su Google Cloud Piattaforma per RedHat/CentOS 7

Se installi Edge su RedHat 7 o CentOS 7 su Google Cloud Platform, deve disabilitare IPv6 su tutti i nodi Qpid.

Consulta la documentazione RedHat o CentOS della versione specifica del tuo sistema operativo per istruzioni su disabilitazione dell'IPv6. Ad esempio, puoi:

  1. Apri /etc/hosts in un editor.
  2. Inserisci un "#" nella colonna una delle seguenti righe per commentarlo:
    #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
  3. Salva il file.

AMI AWS

Se stai installando Edge su un'immagine AWS Amazon Machine Image (AMI) per Red Hat Enterprise Linux 7.x, devi prima eseguire questo comando:

yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional

Strumenti

Il programma di installazione utilizza i seguenti strumenti UNIX nella versione standard fornita da EL5 o EL6

awk

expr

libxslt

rpm

decomprimere

nome base

Grep

lua-socket

rpm2cpio

aggiunta utente

bash

nome host

ls

sed

wc

bc

id

net-tools

sudo

wget

curl

Libio

perl (da procps)

catrame

xerces-c

Cyrus-Sasl libdb4 pgrep (da procps) tr Slurp

data

libdb-cxx

ps

Uuid

chkconfig

dirname libibverbi pwd Uname  
echo librdmacm python    

ntpdate

Apigee consiglia che i tuoi server gli orari sono sincronizzati. Se non è già configurato, l'utilità ntpdate potrebbe essere utile a questo scopo, che verifica se i server sono sincronizzati in base all'ora. Puoi utilizzare yum install ntp per installare utilità. Ciò è particolarmente utile per replicare le configurazioni OpenLDAP. Tieni presente che hai configurato il server fuso orario in UTC.

openldap 2.4

L'installazione on-premise richiede OpenLDAP 2.4. Se il server dispone di una connessione Internet, lo script di installazione Edge scarica e installa OpenLDAP. Se il server non dispone di una connessione Internet, devi assicurarti che OpenLDAP sia è già installata prima di eseguire lo script di installazione perimetrale. Su RHEL/CentOS, puoi eseguire yum install openldap-clients openldap-servers per installare OpenLDAP.

Per installazioni da 13 host e installazioni da 12 host con due data center, OpenLDAP è necessaria la replica perché esistono più nodi che ospitano OpenLDAP.

Firewall e host virtuali

Il termine virtual di solito viene sovraccaricato in ambito IT, quindi si riferisce a un Apigee Edge per il deployment di host virtuali e il cloud privato. Per chiarire, ci sono due principali usi del termine virtual:

  • Macchine virtuali (VM): non richieste, ma alcuni deployment utilizzano la tecnologia VM per creare server isolati per i componenti Apigee. Gli host delle VM, come gli host fisici, possono avere le interfacce di rete e i firewall.
  • Host virtuali: endpoint web, analoghi a un host virtuale Apache.

Un router in una VM può esporre più host virtuali (purché siano diversi l'uno dall'altro nelle l'alias host o la porta dell'interfaccia).

Come esempio di denominazione, un singolo server fisico A potrebbe eseguire due VM, denominato "VM1" e "VM2". Supponiamo che "VM1" espone un'interfaccia Ethernet virtuale, che prende il nome "eth0" all'interno della VM e a cui è assegnato l'indirizzo IP 111.111.111.111 il macchinario di virtualizzazione o un server DHCP di rete; e quindi supponiamo che VM2 espone un'istanza Interfaccia Ethernet chiamata anche "eth0" e gli viene assegnato un indirizzo IP 111.111.111.222.

Potremmo avere un router Apigee in esecuzione in ciascuna delle due VM. I router espongono l'host virtuale come in questo esempio ipotetico:

Il router Apigee nella VM1 espone tre host virtuali sulla sua interfaccia eth0 (che ha indirizzo IP specifico), api.mycompany.com:80, api.mycompany.com:443 e test.mycompany.com:80.

Il router nella VM2 espone api.mycompany.com:80 (stesso nome e porta uguali a quelli esposti dal VM1).

Il sistema operativo dell'host fisico potrebbe avere un firewall di rete. se sì, il firewall deve essere configurato in modo da passare il traffico TCP per le porte esposte (111.111.111.111:{80, 443} e 111.111.111.222:80). Nella Inoltre, il sistema operativo di ogni VM può fornire un proprio firewall sull'interfaccia eth0, deve consentire al traffico sulle porte 80 e 443 di connettersi.

Il percorso di base è il terzo componente coinvolto nell'instradamento delle chiamate API a proxy API diversi di cui potresti aver eseguito il deployment. I bundle di proxy API possono condividere un endpoint se hanno diversi percorsi di base. Ad esempio, un percorso di base può essere definito come http://api.mycompany.com:80/. e un altro definito come http://api.mycompany.com:80/salesdemo.

In questo caso, hai bisogno di un bilanciatore del carico o di un Traffic Director di qualche tipo che divida http://api.mycompany.com:80/ traffico tra i due indirizzi IP (111.111.111.111 su VM1 e 111.111.111.222 su VM2). Questa funzione è specifico per la tua particolare installazione ed è configurato dal tuo gruppo di rete locale.

Il percorso di base viene impostato quando esegui il deployment di un'API. Dall'esempio precedente, puoi eseguire il deployment di due API, mycompany e testmycompany, per l'organizzazione mycompany-org con l'host virtuale che possiede l'alias host di api.mycompany.com e la porta impostata su 80. Se non dichiari un basepath nel deployment, il router non sa quale API inviare le richieste in entrata a.

Tuttavia, se esegui il deployment dell'API testmycompany con l'URL di base di /salesdemo, gli utenti accedano all'API utilizzando http://api.mycompany.com:80/salesdemo. Se distribuisci l'API mycompany con URL di base /, quindi i tuoi utenti accedono all'API tramite l'URL http://api.mycompany.com:80/.

Licenze

Ogni installazione di Edge richiede un file di licenza univoco ottenuto da Apigee. Potrai devi fornire il percorso del file di licenza durante l'installazione del server di gestione, ad esempio /tmp/license.txt.

Il programma di installazione copia il file della licenza /opt/apigee/customer/conf/license.txt.

Se il file di licenza è valido, il server di gestione convalida la scadenza e il messaggio consentito Numero di processori (MP). Se una delle impostazioni della licenza è scaduta, puoi trovare i log nella seguente località: /opt/apigee/var/log/edge-management-server/logs. In questo caso, puoi contattare l'assistenza Apigee Edge per i dettagli sulla migrazione.

Se non hai ancora una licenza, contatta il team di vendita Apigee.