คุณจะติดตั้ง Apigee SSO หลายอินสแตนซ์สำหรับความพร้อมใช้งานสูงได้ใน 2 สถานการณ์ ดังนี้
- ในสภาพแวดล้อมของศูนย์ข้อมูลเดียว ให้ติดตั้งอินสแตนซ์ Apigee SSO 2 อินสแตนซ์เพื่อสร้างสภาพแวดล้อมความพร้อมใช้งานสูง ซึ่งหมายความว่าระบบจะทำงานต่อไปหากโมดูลใดโมดูลหนึ่งของ Apigee SSO หยุดทำงาน
- ในสภาพแวดล้อมที่มีศูนย์ข้อมูล 2 แห่ง ให้ติดตั้ง Apigee SSO ในศูนย์ข้อมูลทั้ง 2 แห่ง เพื่อให้ระบบทำงานต่อไปหากโมดูลใดโมดูลหนึ่งของ Apigee SSO ไม่ทำงาน
ติดตั้งโมดูล Apigee SSO 2 โมดูลในศูนย์ข้อมูลเดียวกัน
คุณทำให้ Apigee SSO ของ Apigee 2 อินสแตนซ์ใช้งานได้บนโหนดต่างๆ ในศูนย์ข้อมูลเดียวเพื่อรองรับความพร้อมใช้งานสูง ในสถานการณ์นี้จะมีผลดังต่อไปนี้
- อินสแตนซ์ของ Apigee SSO ทั้ง 2 อินสแตนซ์ต้องเชื่อมต่อกับเซิร์ฟเวอร์ Postgres เดียวกัน Apigee แนะนำให้ใช้เซิร์ฟเวอร์ Postgres เฉพาะสำหรับ Apigee SSO ไม่ใช่เซิร์ฟเวอร์ Postgres เดียวกันกับที่คุณติดตั้งด้วย Edge
- Apigee SSO ทั้ง 2 อินสแตนซ์ต้องใช้คู่คีย์ JWT เดียวกันกับที่ระบุโดยพร็อพเพอร์ตี้
SSO_JWT_SIGNING_KEY_FILEPATH
และSSO_JWT_VERIFICATION_KEY_FILEPATH
ในไฟล์การกำหนดค่า โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าพร็อพเพอร์ตี้เหล่านี้ที่ติดตั้งและกำหนดค่า SSO ของ Apigee - คุณต้องมีตัวจัดสรรภาระงานด้านหน้า Apigee SSO ทั้ง 2 อินสแตนซ์ ได้แก่
- ตัวจัดสรรภาระงานต้องรองรับความสามารถในการดึงดูดคุกกี้ที่สร้างโดยแอปพลิเคชัน และคุกกี้ของเซสชันต้องมีชื่อว่า
JSESSIONID
- กำหนดค่าตัวจัดสรรภาระงานเพื่อตรวจสอบประสิทธิภาพการทำงานของ TCP หรือ HTTP กับ SSO ของ Apigee สำหรับ TCP ให้ใช้ URL ของ Apigee SSO:
http_or_https://edge_sso_IP_DNS:9099
ระบุพอร์ตตามที่กำหนดโดย Apigee SSO พอร์ต 9099 เป็นค่าเริ่มต้น
สำหรับ HTTP ให้ใส่
/healthz
:http_or_https://edge_sso_IP_DNS:9099/healthz
- การตั้งค่าตัวจัดสรรภาระงานบางส่วนจะขึ้นอยู่กับว่าคุณเปิดใช้ HTTPS ใน Apigee SSO หรือไม่ ดูข้อมูลเพิ่มเติมได้ในส่วนต่อไปนี้
- ตัวจัดสรรภาระงานต้องรองรับความสามารถในการดึงดูดคุกกี้ที่สร้างโดยแอปพลิเคชัน และคุกกี้ของเซสชันต้องมีชื่อว่า
การเข้าถึง Apigee SSO ของ HTTP
หากคุณใช้การเข้าถึง HTTP กับ SSO ของ Apigee ให้กําหนดค่าตัวจัดสรรภาระงานดังนี้
- ใช้โหมด HTTP เพื่อเชื่อมต่อกับ SSO ของ Apigee
ฟังผ่านพอร์ตเดียวกับ SSO ของ Apigee
โดยค่าเริ่มต้น Apigee SSO จะตรวจจับคำขอ HTTP บนพอร์ต 9099 หรือคุณจะใช้
SSO_TOMCAT_PORT
เพื่อตั้งค่าพอร์ต SSO ของ Apigee ก็ได้ หากคุณใช้SSO_TOMCAT_PORT
เพื่อเปลี่ยนพอร์ต SSO ของ Apigee จากค่าเริ่มต้น โปรดตรวจสอบว่าตัวจัดสรรภาระงานจะรับการฟังบนพอร์ตนั้น
ตัวอย่างเช่น ในอินสแตนซ์ Apigee SSO แต่ละรายการ คุณตั้งค่าพอร์ตเป็น 9033 ได้โดยเพิ่มข้อมูลต่อไปนี้ในไฟล์การกำหนดค่า
SSO_TOMCAT_PORT=9033
จากนั้นให้คุณกำหนดค่าตัวจัดสรรภาระงานให้รับคำสั่งบนพอร์ต 9033 และส่งต่อคำขอไปยังอินสแตนซ์ Edge SSO บนพอร์ต 9033 URL สาธารณะของ Apigee SSO ในสถานการณ์นี้คือ
http://LB_DNS_NAME:9033
การเข้าถึง HTTPS ไปยัง SSO ของ Apigee
คุณกำหนดค่าอินสแตนซ์ SSO ของ Apigee ได้เพื่อใช้ HTTPS ในสถานการณ์นี้ ให้ทำตามขั้นตอนในกำหนดค่า Apigee SSO สำหรับการเข้าถึง HTTPS ในขั้นตอนการเปิดใช้ HTTPS คุณสามารถตั้งค่า SSO_TOMCAT_PROFILE
ในไฟล์การกำหนดค่า Apigee SSO ตามที่แสดงด้านล่าง
SSO_TOMCAT_PROFILE=SSL_TERMINATION
นอกจากนี้คุณยังตั้งค่าพอร์ตที่ Apigee SSO จะใช้สำหรับการเข้าถึง HTTPS ได้อีกด้วย โดยทำดังนี้
SSO_TOMCAT_PORT=9443
จากนั้นกำหนดค่าตัวจัดสรรภาระงานเป็น
- ใช้โหมด TCP เพื่อเชื่อมต่อกับ SSO ของ Apigee ไม่ใช่โหมด HTTP
- ฟังบนพอร์ตเดียวกับ SSO ของ Apigee ตามที่กำหนดโดย
SSO_TOMCAT_PORT
จากนั้นให้คุณกำหนดค่าตัวจัดสรรภาระงานให้ส่งต่อคำขอไปยังอินสแตนซ์ SSO ของ Apigee ในพอร์ต 9433 URL สาธารณะของ Apigee SSO ในสถานการณ์นี้คือ
https://LB_DNS_NAME:9443
ติดตั้ง SSO ของ Apigee ในศูนย์ข้อมูลหลายแห่ง
ในสภาพแวดล้อมของศูนย์ข้อมูลหลายแห่ง คุณติดตั้งอินสแตนซ์ Apigee SSO ในศูนย์ข้อมูลแต่ละแห่งได้ จากนั้นอินสแตนซ์ Apigee SSO 1 รายการจะจัดการการรับส่งข้อมูลทั้งหมด หากอินสแตนซ์ SSO ของ Apigee ไม่ทำงาน คุณเปลี่ยนไปใช้อินสแตนซ์ SSO ของ Apigee ที่สองได้
ก่อนที่จะติดตั้ง SSO ของ Apigee ในศูนย์ข้อมูล 2 แห่ง คุณต้องมีสิ่งต่อไปนี้
ที่อยู่ IP หรือชื่อโดเมนของเซิร์ฟเวอร์ Master Postgres
ในสภาพแวดล้อมของศูนย์ข้อมูลหลายแห่ง คุณมักจะติดตั้งเซิร์ฟเวอร์ Postgres 1 เครื่องในศูนย์ข้อมูลแต่ละแห่ง และกำหนดค่าเซิร์ฟเวอร์ในโหมดการจำลองในโหมด Master-Standby สำหรับตัวอย่างนี้ ศูนย์ข้อมูล 1 มีเซิร์ฟเวอร์ Master Postgres และศูนย์ข้อมูล 2 ประกอบด้วย Standby ดูข้อมูลเพิ่มเติมได้ที่ตั้งค่าการจำลองในโหมด Master-Standby สำหรับ Postgres
- รายการ DNS รายการเดียวที่ชี้ไปยังอินสแตนซ์ Apigee SSO 1 อินสแตนซ์ ตัวอย่างเช่น คุณสร้างรายการ DNS ในแบบฟอร์มด้านล่างที่ชี้ไปยังอินสแตนซ์ Apigee SSO ในศูนย์ข้อมูล 1 ดังนี้
my-sso.domain.com => apigee-sso-dc1-ip-or-lb
- Apigee SSO ทั้ง 2 อินสแตนซ์ต้องใช้คู่คีย์ JWT เดียวกันกับที่ระบุโดยพร็อพเพอร์ตี้
SSO_JWT_SIGNING_KEY_FILEPATH
และSSO_JWT_VERIFICATION_KEY_FILEPATH
ในไฟล์การกำหนดค่า โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าพร็อพเพอร์ตี้เหล่านี้ที่ติดตั้งและกำหนดค่า SSO ของ Apigee
เมื่อติดตั้ง SSO ของ Apigee ในศูนย์ข้อมูลแต่ละแห่ง คุณกำหนดค่าทั้ง 2 แพลตฟอร์มให้ใช้ Postgres Master ในศูนย์ข้อมูล 1 ได้ดังนี้
## Postgres configuration PG_HOST=IP_or_DNS_of_PG_Master_in_DC1 PG_PORT=5432
นอกจากนี้คุณยังกำหนดค่าศูนย์ข้อมูลทั้งสองให้ใช้รายการ DNS เป็น URL ที่เข้าถึงได้แบบสาธารณะ ดังนี้
# Externally accessible URL of Apigee SSO SSO_PUBLIC_URL_HOSTNAME=my-sso.domain.com # Default port is 9099. SSO_PUBLIC_URL_PORT=9099
หาก Apigee SSO ในศูนย์ข้อมูล 1 หยุดทำงาน คุณจะเปลี่ยนไปใช้อินสแตนซ์ Apigee SSO ในศูนย์ข้อมูล 2 ได้โดยทำดังนี้
- แปลงเซิร์ฟเวอร์ Postgres Standby ในศูนย์ข้อมูล 2 เป็นเซิร์ฟเวอร์หลักตามที่อธิบายไว้ในการจัดการเฟลโอเวอร์ของฐานข้อมูล PostgreSQL
- อัปเดตระเบียน DNS ให้ชี้
my-sso.domain.com
ไปยังอินสแตนซ์ SSO ของ Apigee ในศูนย์ข้อมูล 2:my-sso.domain.com => apigee-sso-dc2-ip-or-lb
- อัปเดตไฟล์การกำหนดค่าสำหรับ Apigee SSO ในศูนย์ข้อมูล 2 ให้ชี้ไปที่เซิร์ฟเวอร์ Postgres Master ใหม่ในศูนย์ข้อมูล 2 ดังนี้
## Postgres configuration PG_HOST=IP_or_DNS_of_PG_Master_in_DC2
- รีสตาร์ท SSO ของ Apigee ในศูนย์ข้อมูล 2 เพื่ออัปเดตการกำหนดค่าดังนี้
/opt/apigee/apigee-service/bin/apigee-service apigee-sso restart