คุณจะติดตั้ง Apigee SSO หลายอินสแตนซ์สำหรับความพร้อมใช้งานสูงใน 2 สถานการณ์ต่อไปนี้
- ในสภาพแวดล้อมศูนย์ข้อมูลเดียว ให้ติดตั้งอินสแตนซ์ SSO ของ Apigee 2 อินสแตนซ์เพื่อสร้าง ความพร้อมใช้งาน หมายความว่าระบบจะทำงานต่อหากมี SSO ของ Apigee โมดูลต่างๆ ลดลง
- ในสภาพแวดล้อมที่มีศูนย์ข้อมูล 2 แห่ง ให้ติดตั้ง Apigee SSO ในศูนย์ข้อมูลทั้งสอง เพื่อให้ ระบบจะยังคงทำงานต่อไปหากโมดูล SSO ของ Apigee ไม่ทำงาน
ติดตั้งโมดูล SSO ของ Apigee 2 โมดูลในตัวเดียวกัน ศูนย์ข้อมูล
คุณทำให้ Apigee SSO ใช้งานได้ 2 อินสแตนซ์บนโหนดที่ต่างกันและรองรับในศูนย์ข้อมูลเดียว ความพร้อมใช้งานสูง ในสถานการณ์นี้จะมีผลดังต่อไปนี้
- SSO ของ Apigee ทั้ง 2 อินสแตนซ์ต้องเชื่อมต่อกับเซิร์ฟเวอร์ Postgres เดียวกัน Apigee ขอแนะนำ ใช้เซิร์ฟเวอร์ Postgres เฉพาะสำหรับ SSO ของ Apigee ไม่ใช่เซิร์ฟเวอร์ Postgres เดียวกันกับที่คุณใช้ ติดตั้งด้วย Edge แล้ว
- Apigee SSO ทั้ง 2 อินสแตนซ์ต้องใช้คู่คีย์ JWT เดียวกันตามที่ระบุโดย
SSO_JWT_SIGNING_KEY_FILEPATH
และSSO_JWT_VERIFICATION_KEY_FILEPATH
ในไฟล์การกำหนดค่า โปรดดูหัวข้อติดตั้งและกำหนดค่า SSO ของ Apigee เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าคุณสมบัติเหล่านี้ - คุณต้องมีตัวจัดสรรภาระงานที่อยู่หน้า SSO ของ Apigee 2 อินสแตนซ์ดังนี้
- ตัวจัดสรรภาระงานต้องรองรับความสามารถในการดึงดูดของคุกกี้ที่แอปพลิเคชันสร้างขึ้นและเซสชัน
คุกกี้ต้องมีชื่อว่า
JSESSIONID
- กำหนดค่าตัวจัดสรรภาระงานเพื่อดำเนินการตรวจสอบประสิทธิภาพการทำงานของ TCP หรือ HTTP ใน SSO ของ Apigee สำหรับ TCP
ใช้ URL ของ SSO ของ Apigee ดังนี้
http_or_https://edge_sso_IP_DNS:9099
ระบุพอร์ตที่ SSO ของ Apigee ตั้งค่าไว้ โดยพอร์ต 9099 จะเป็นค่าเริ่มต้น
สำหรับ HTTP ให้รวม
/healthz
ดังนี้http_or_https://edge_sso_IP_DNS:9099/healthz
- การตั้งค่าตัวจัดสรรภาระงานบางรายการขึ้นอยู่กับว่าคุณได้เปิดใช้ HTTPS ใน SSO ของ Apigee หรือไม่ โปรดดู ส่วนต่างๆ ต่อไปนี้สำหรับข้อมูลเพิ่มเติม
- ตัวจัดสรรภาระงานต้องรองรับความสามารถในการดึงดูดของคุกกี้ที่แอปพลิเคชันสร้างขึ้นและเซสชัน
คุกกี้ต้องมีชื่อว่า
การเข้าถึง HTTP ไปยัง SSO ของ Apigee
หากคุณใช้การเข้าถึง HTTP สำหรับ SSO ของ Apigee ให้กำหนดค่าตัวจัดสรรภาระงานเป็นดังนี้
- ใช้โหมด HTTP เพื่อเชื่อมต่อกับ SSO ของ Apigee
ฟังบนพอร์ตเดียวกับ SSO ของ Apigee
โดยค่าเริ่มต้น Apigee SSO จะฟังคำขอ HTTP บนพอร์ต 9099 หรือคุณอาจใช้
SSO_TOMCAT_PORT
เพื่อตั้งค่าพอร์ต SSO ของ Apigee หากคุณใช้SSO_TOMCAT_PORT
เพื่อเปลี่ยนพอร์ต SSO ของ Apigee จากค่าเริ่มต้น ตรวจสอบว่าตัวจัดสรรภาระงานจะคอยฟังการแจ้งเตือนดังกล่าว พอร์ต
ตัวอย่างเช่น ในอินสแตนซ์ SSO ของ Apigee แต่ละรายการ คุณกำหนดพอร์ตเป็น 9033 ได้โดยการเพิ่มค่าต่อไปนี้ลงในส่วน ไฟล์การกำหนดค่า:
SSO_TOMCAT_PORT=9033
จากนั้นคุณกำหนดค่าตัวจัดสรรภาระงานให้รอฟังบนพอร์ต 9033 และส่งต่อคำขอไปยัง Edge อินสแตนซ์ SSO บนพอร์ต 9033 URL สาธารณะของ Apigee SSO ในสถานการณ์นี้คือ
http://LB_DNS_NAME:9033
การเข้าถึง HTTPS ใน SSO ของ Apigee
คุณสามารถกำหนดค่าอินสแตนซ์ SSO ของ Apigee เพื่อใช้ HTTPS เพื่อการสื่อสารที่ปลอดภัยได้ ในสถานการณ์นี้ ให้ทำตามขั้นตอนใน
กำหนดค่า SSO ของ Apigee สำหรับการเข้าถึง HTTPS ในขั้นตอนการเปิดใช้ HTTPS ให้ตั้งค่า SSO_TOMCAT_PROFILE
ในไฟล์การกำหนดค่า SSO ของ Apigee ตามที่แสดงด้านล่าง
SSO_TOMCAT_PROFILE=SSL_TERMINATION
(ไม่บังคับ) ตั้งค่าพอร์ตที่ Apigee SSO ใช้สำหรับการเข้าถึง HTTPS ได้ ดังนี้
SSO_TOMCAT_PORT=9443
หากต้องการให้มีการสื่อสารที่เหมาะสมระหว่าง Load Balancer และ SSO ของ Apigee ให้กำหนดค่าตัวจัดสรรภาระงานดังนี้
- ใช้โหมด TPU ไม่ใช่โหมด HTTP เพื่อเชื่อมต่อกับ SSO ของ Apigee ซึ่งจะทำให้การเชื่อมต่อ SSL ผ่านเข้ามาได้โดยไม่ถูกสิ้นสุดการใช้งานที่ตัวจัดสรรภาระงาน
- ฟังบนพอร์ตเดียวกับ Apigee SSO ตามที่กำหนดโดย
SSO_TOMCAT_PORT
(เช่น 9443) - ส่งต่อคำขอไปยังอินสแตนซ์ SSO ของ Apigee บนพอร์ตเดียวกัน (9443)
ตรวจสอบว่า URL สาธารณะตรงกับการตั้งค่า DNS และการตั้งค่าพอร์ตของตัวจัดสรรภาระงาน URL สาธารณะของ Apigee SSO ในสถานการณ์นี้คือ
https://LB_DNS_NAME:9443
ติดตั้ง SSO ของ Apigee ในศูนย์ข้อมูลหลายแห่ง
ในสภาพแวดล้อมของศูนย์ข้อมูลหลายแห่ง คุณจะต้องติดตั้งอินสแตนซ์ Apigee SSO ในศูนย์ข้อมูลแต่ละแห่ง อินสแตนซ์ SSO ของ Apigee 1 รายการจะจัดการการรับส่งข้อมูลทั้งหมด ถ้าอินสแตนซ์ SSO ของ Apigee ไม่ทำงาน ให้ทำดังนี้ เปลี่ยนเป็นอินสแตนซ์ SSO ของ Apigee ที่ 2
ก่อนติดตั้ง SSO ของ Apigee ในศูนย์ข้อมูล 2 แห่ง คุณต้องมีสิ่งต่อไปนี้
ที่อยู่ IP หรือชื่อโดเมนของเซิร์ฟเวอร์ Master Postgres
ในสภาพแวดล้อมของศูนย์ข้อมูลหลายแห่ง โดยทั่วไปคุณจะติดตั้งเซิร์ฟเวอร์ Postgres 1 รายการในแต่ละข้อมูล Center และกำหนดค่าในโหมดการจำลอง Master-Standby สำหรับตัวอย่างนี้ data ศูนย์ 1 มีเซิร์ฟเวอร์หลัก Postgres และศูนย์ข้อมูล 2 จะมีไอคอนสแตนด์บาย โปรดดูข้อมูลเพิ่มเติมที่ตั้งค่าการจำลองต้นแบบสแตนด์บายสำหรับ Postgres
- รายการ DNS รายการเดียวที่ชี้ไปยังอินสแตนซ์ SSO ของ Apigee 1 รายการ เช่น คุณสร้าง DNS
รายการในแบบฟอร์มด้านล่างที่ชี้ไปยังอินสแตนซ์ SSO ของ Apigee ในศูนย์ข้อมูล 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 ไม่ทำงาน คุณสามารถเปลี่ยนเป็นอินสแตนซ์ SSO ของ Apigee ในข้อมูล ศูนย์ 2:
- แปลงเซิร์ฟเวอร์ Postgres Standby ในศูนย์ข้อมูล 2 เป็น Master ตามที่อธิบายไว้ในการจัดการเฟลโอเวอร์ของฐานข้อมูล PostgreSQL
- อัปเดตระเบียน DNS ให้ชี้
my-sso.domain.com
ไปยังอินสแตนซ์ SSO ของ Apigee ใน ศูนย์ข้อมูล 2:my-sso.domain.com => apigee-sso-dc2-ip-or-lb
- อัปเดตไฟล์การกำหนดค่าสำหรับ SSO ของ Apigee ในศูนย์ข้อมูล 2 ให้ชี้ไปที่ Postgres Master ใหม่
เซิร์ฟเวอร์ในศูนย์ข้อมูล 2:
## Postgres configuration PG_HOST=IP_or_DNS_of_PG_Master_in_DC2
- รีสตาร์ท Apigee SSO ในศูนย์ข้อมูล 2 เพื่ออัปเดตการกำหนดค่า ดังนี้
/opt/apigee/apigee-service/bin/apigee-service apigee-sso restart