Puoi installare più istanze del servizio SSO di Apigee per garantire l'alta disponibilità in due scenari:
- In un singolo ambiente di data center, installa due istanze SSO di Apigee per creare una l'ambiente di disponibilità, il che significa che il sistema continua a funzionare anche dei moduli non è disponibile.
- In un ambiente con due data center, installa il servizio SSO di Apigee in entrambi i data center, continua a funzionare anche se uno dei moduli SSO di Apigee smette di funzionare.
Installa due moduli SSO Apigee nello stesso data center
Esegui il deployment di due istanze di Apigee SSO, su nodi diversi, in un unico data center per supportare l'alta disponibilità. In questo caso:
- Entrambe le istanze dell'accesso SSO di Apigee devono essere connesse allo stesso server Postgres. Apigee consiglia utilizzando un server Postgres dedicato per Apigee SSO e non lo stesso server Postgres che utilizzi installato con Edge.
- Entrambe le istanze dell'accesso SSO di Apigee devono utilizzare la stessa coppia di chiavi JWT specificata nel
SSO_JWT_SIGNING_KEY_FILEPATH
eSSO_JWT_VERIFICATION_KEY_FILEPATH
nel file di configurazione. Vedi Installare e configurare Apigee SSO per ulteriori informazioni sull'impostazione di queste proprietà. - È necessario un bilanciatore del carico per le due istanze di Apigee SSO:
- Il bilanciatore del carico deve supportare gli stickiness generati dall'applicazione e la sessione
il cookie deve essere denominato
JSESSIONID
. - Configura il bilanciatore del carico per eseguire un controllo di integrità TCP o HTTP su Apigee SSO. Per TCP,
utilizza l'URL dell'accesso SSO di Apigee:
http_or_https://edge_sso_IP_DNS:9099
Specifica la porta impostata dal servizio SSO di Apigee. La porta 9099 è quella predefinita.
Per HTTP, includi
/healthz
:http_or_https://edge_sso_IP_DNS:9099/healthz
- Alcune impostazioni del bilanciatore del carico dipendono dall'attivazione o meno di HTTPS su Apigee SSO. Consulta le le sezioni seguenti per ulteriori informazioni.
- Il bilanciatore del carico deve supportare gli stickiness generati dall'applicazione e la sessione
il cookie deve essere denominato
Accesso HTTP al servizio SSO di Apigee
Se utilizzi l'accesso HTTP all'accesso SSO di Apigee, configura il bilanciatore del carico per:
- Utilizza la modalità HTTP per connetterti all'accesso SSO di Apigee.
Ascolta sulla stessa porta del servizio SSO di Apigee.
Per impostazione predefinita, Apigee SSO rimane in ascolto delle richieste HTTP sulla porta 9099. Facoltativamente, puoi utilizzare
SSO_TOMCAT_PORT
per impostare la porta SSO di Apigee. Se hai usatoSSO_TOMCAT_PORT
per cambiare la porta SSO di Apigee rispetto a quella predefinita, assicurati che il bilanciatore del carico ascolti su quella una porta.
Ad esempio, per ogni istanza SSO di Apigee imposti la porta su 9033, aggiungendo quanto segue al di configurazione:
SSO_TOMCAT_PORT=9033
Quindi configurerai il bilanciatore del carico per rimanere in ascolto sulla porta 9033 e inoltrare le richieste a un perimetro Istanza SSO sulla porta 9033. L'URL pubblico dell'accesso SSO di Apigee in questo scenario è:
http://LB_DNS_NAME:9033
Accesso HTTPS al servizio SSO di Apigee
Puoi configurare le istanze SSO di Apigee in modo che utilizzino HTTPS. In questo caso, segui i passaggi
Configura il servizio SSO di Apigee per l'accesso HTTPS. Come
nell'ambito del processo di abilitazione di HTTPS, imposti SSO_TOMCAT_PROFILE
nel servizio SSO di Apigee
di configurazione del deployment come mostrato di seguito:
SSO_TOMCAT_PROFILE=SSL_TERMINATION
Facoltativamente, puoi impostare la porta utilizzata da Apigee SSO per l'accesso HTTPS:
SSO_TOMCAT_PORT=9443
Quindi configura il bilanciatore del carico per:
- Utilizza la modalità TCP, non la modalità HTTP, per connetterti ad Apigee SSO.
- Ascolta sulla stessa porta del servizio SSO di Apigee definito da
SSO_TOMCAT_PORT
.
Quindi configurerai il bilanciatore del carico in modo che inoltri le richieste a un'istanza SSO di Apigee sulla porta 9433. L'URL pubblico dell'accesso SSO di Apigee in questo scenario è:
https://LB_DNS_NAME:9443
Installare il servizio SSO di Apigee in più data center
In un ambiente con più data center, installi un'istanza SSO di Apigee in ciascun data center. Quindi, un'istanza SSO di Apigee gestisce tutto il traffico. Se l'istanza SSO di Apigee non funziona, alla seconda istanza SSO di Apigee.
Per installare il servizio SSO di Apigee in due data center, è necessario quanto segue:
L'indirizzo IP o il nome di dominio del server Postgres principale.
In un ambiente con più data center, in genere si installa un server Postgres in ogni data center e configurarle in modalità di replica master-standby. Per questo esempio, i dati center 1 contiene il server Postgres principale e il data center 2 contiene lo standby. Per ulteriori informazioni, consulta Configurare la replica master-standby per Postgres.
- Una singola voce DNS che punta a un'istanza SSO di Apigee. Ad esempio, crei una configurazione DNS
nel modulo seguente che rimanda all'istanza SSO di Apigee nel data center 1:
my-sso.domain.com => apigee-sso-dc1-ip-or-lb
- Entrambe le istanze dell'accesso SSO di Apigee devono utilizzare la stessa coppia di chiavi JWT specificata nel
SSO_JWT_SIGNING_KEY_FILEPATH
eSSO_JWT_VERIFICATION_KEY_FILEPATH
nel file di configurazione. Vedi Installare e configurare Apigee SSO per ulteriori informazioni sull'impostazione di queste proprietà.
Quando installi il servizio SSO di Apigee in ogni data center, configuri entrambi per l'utilizzo del servizio nel data center 1:
## Postgres configuration
PG_HOST=IP_or_DNS_of_PG_Master_in_DC1
PG_PORT=5432
Inoltre, configurerai entrambi i data center in modo che utilizzino la voce DNS come URL pubblicamente accessibile:
# Externally accessible URL of Apigee SSO SSO_PUBLIC_URL_HOSTNAME=my-sso.domain.com # Default port is 9099. SSO_PUBLIC_URL_PORT=9099
Se il servizio SSO di Apigee nel data center 1 non è disponibile, puoi passare all'istanza SSO di Apigee nei dati centro 2:
- Converti il server di standby Postgres nel data center 2 in master come descritto in Gestire un failover di un database PostgreSQL.
- Aggiorna il record DNS in modo che punti
my-sso.domain.com
all'istanza SSO di Apigee in data center 2:my-sso.domain.com => apigee-sso-dc2-ip-or-lb
- Aggiorna il file di configurazione per il servizio SSO di Apigee nel data center 2 in modo che punti al nuovo master Postgres
nel data center 2:
## Postgres configuration PG_HOST=IP_or_DNS_of_PG_Master_in_DC2
- Riavvia il servizio SSO di Apigee nel data center 2 per aggiornarne la configurazione:
/opt/apigee/apigee-service/bin/apigee-service apigee-sso restart