ติดตั้ง SSO ของ Apigee เพื่อให้มีความพร้อมใช้งานสูง

คุณจะติดตั้ง 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 ของ Apigee จะใช้สำหรับการเข้าถึง HTTPS ได้อีกด้วย

SSO_TOMCAT_PORT=9443

จากนั้นกำหนดค่าตัวจัดสรรภาระงานเป็น

  • ใช้โหมด TCP ไม่ใช่โหมด HTTP เพื่อเชื่อมต่อกับ SSO ของ Apigee
  • ฟังบนพอร์ตเดียวกับ SSO ของ Apigee ตามที่กำหนดโดย SSO_TOMCAT_PORT

จากนั้นจึงกำหนดค่าตัวจัดสรรภาระงานให้ส่งต่อคำขอไปยังอินสแตนซ์ SSO ของ Apigee บนพอร์ต 9433 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:

  1. แปลงเซิร์ฟเวอร์ Postgres Standby ในศูนย์ข้อมูล 2 เป็น Master ตามที่อธิบายไว้ในการจัดการเฟลโอเวอร์ของฐานข้อมูล PostgreSQL
  2. อัปเดตระเบียน DNS ให้ชี้ my-sso.domain.com ไปยังอินสแตนซ์ SSO ของ Apigee ใน ศูนย์ข้อมูล 2:
    my-sso.domain.com => apigee-sso-dc2-ip-or-lb
  3. อัปเดตไฟล์การกำหนดค่าสำหรับ SSO ของ Apigee ในศูนย์ข้อมูล 2 ให้ชี้ไปที่ Postgres Master ใหม่ เซิร์ฟเวอร์ในศูนย์ข้อมูล 2:
    ## Postgres configuration
    PG_HOST=IP_or_DNS_of_PG_Master_in_DC2
  4. รีสตาร์ท Apigee SSO ในศูนย์ข้อมูล 2 เพื่ออัปเดตการกำหนดค่า ดังนี้
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso restart