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

Edge for Private Cloud เวอร์ชัน 4.17.09

คุณติดตั้ง Edge SSO หลายอินสแตนซ์เพื่อความพร้อมใช้งานสูงใน 2 สถานการณ์ต่อไปนี้

  • ในสภาพแวดล้อมศูนย์ข้อมูลเดียว ให้ติดตั้งอินสแตนซ์ Edge SSO 2 รายการเพื่อสร้างสภาพแวดล้อมที่มีความพร้อมใช้งานสูง ซึ่งหมายความว่าระบบจะยังคงทำงานต่อไปหากโมดูล Edge SSO รายการใดรายการหนึ่งหยุดทำงาน
  • ในสภาพแวดล้อมที่มีศูนย์ข้อมูล 2 แห่ง ให้ติดตั้ง Edge SSO ในศูนย์ข้อมูลทั้ง 2 แห่งเพื่อให้ระบบทำงานต่อไปได้หากโมดูล Edge SSO โมดูลใดโมดูลหนึ่งหยุดทำงาน

ติดตั้งโมดูล Edge SSO 2 โมดูลในศูนย์ข้อมูลเดียวกัน

คุณติดตั้งใช้งาน Edge SSO 2 อินสแตนซ์ในโหนดที่ต่างกันในศูนย์ข้อมูลเดียวเพื่อรองรับความพร้อมใช้งานสูง ในสถานการณ์นี้จะมีผลดังต่อไปนี้

  • Edge SSO ทั้ง 2 อินสแตนซ์ต้องเชื่อมต่อกับเซิร์ฟเวอร์ Postgres เดียวกัน Apigee ขอแนะนำให้ใช้เซิร์ฟเวอร์ Postgres เฉพาะสำหรับ Edge SSO และไม่ใช้เซิร์ฟเวอร์ Postgres เดียวกันกับที่คุณติดตั้งด้วย Edge
  • คุณต้องมีตัวจัดสรรภาระงานที่ด้านหน้าของ Edge SSO ทั้ง 2 อินสแตนซ์ ดังนี้
    • ตัวจัดสรรภาระงานต้องรองรับความต่อเนื่องของคุกกี้ที่แอปพลิเคชันสร้างขึ้น และคุกกี้เซสชันต้องมีชื่อว่า JSESSIONID
    • กำหนดค่าตัวจัดสรรภาระงานเพื่อทำการตรวจสอบประสิทธิภาพการทำงานของ TCP หรือ HTTP ใน Edge SSO สำหรับ TCP ให้ใช้ URL ของ Edge SSO:

      http_or_https://edge_sso_IP_DNS:9099

      ระบุพอร์ตตามที่ Edge SSO กำหนดไว้ โดยค่าเริ่มต้นคือพอร์ต 9099

      สำหรับ HTTP ให้ใส่ /healthz:

      http_or_https://edge_sso_IP_DNS:9099/healthz
    • การตั้งค่าตัวจัดสรรภาระงานบางอย่างจะขึ้นอยู่กับว่าคุณเปิดใช้ HTTPS ใน Edge SSO หรือไม่ ดูข้อมูลเพิ่มเติมได้ในส่วนต่อไปนี้

การใช้การเข้าถึง HTTP กับ Edge SSO

หากคุณใช้การเข้าถึง HTTP ไปยัง Edge SSO ให้กำหนดค่าตัวจัดสรรภาระงานเพื่อดำเนินการต่อไปนี้

  • ใช้โหมด HTTP เพื่อเชื่อมต่อกับ Edge SSO
  • ฟังบนพอร์ตเดียวกับ Edge SSO

    โดยค่าเริ่มต้น Edge SSO จะฟังคำขอ HTTP บนพอร์ต 9099 คุณสามารถใช้ SSO_TOMCAT_PORT เพื่อตั้งค่าพอร์ต SSO ของ Edge ได้ (ไม่บังคับ) หากคุณใช้ SSO_TOMCAT_PORT เพื่อเปลี่ยนพอร์ต Edge SSO จากค่าเริ่มต้น ให้ตรวจสอบว่าตัวจัดสรรภาระงานฟังพอร์ตนั้นอยู่

เช่น ในอินสแตนซ์ Edge SSO แต่ละรายการ คุณตั้งค่าพอร์ตเป็น 9033 โดยเพิ่มข้อมูลต่อไปนี้ลงในไฟล์การกำหนดค่า

SSO_TOMCAT_PORT=9033

จากนั้นคุณจะกำหนดค่าตัวจัดสรรภาระงานให้คอยฟังพอร์ต 9033 และส่งต่อคำขอไปยังอินสแตนซ์ Edge SSO ในพอร์ต 9033 URL สาธารณะของ Edge SSO ในสถานการณ์นี้คือ

http://LB_DNS_NAME:9033

การใช้การเข้าถึง HTTPS กับ Edge SSO

คุณสามารถกำหนดค่าอินสแตนซ์ Edge SSO ให้ใช้ HTTPS ได้ ในสถานการณ์นี้ ให้ทำตามขั้นตอนในหัวข้อกำหนดค่า apigee-sso สำหรับการเข้าถึง HTTPS ในขั้นตอนการเปิดใช้ HTTPS คุณต้องตั้งค่า SSO_TOMCAT_PROFILE ในไฟล์การกำหนดค่า Edge SSO ดังที่แสดงด้านล่าง

SSO_TOMCAT_PROFILE=SSL_TERMINATION 

นอกจากนี้ คุณยังเลือกตั้งค่าพอร์ตที่ Edge SSO ใช้สำหรับการเข้าถึง HTTPS ได้ด้วย โดยทำดังนี้

SSO_TOMCAT_PORT=9443

หากคุณใช้การเข้าถึง HTTPS ไปยัง Edge SSO ให้กำหนดค่าตัวจัดสรรภาระงานเพื่อดำเนินการต่อไปนี้

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

จากนั้นกำหนดค่าตัวจัดสรรภาระงานเพื่อส่งต่อคำขอไปยังอินสแตนซ์ Edge SSO ในพอร์ต 9433 URL สาธารณะของ Edge SSO ในสถานการณ์นี้คือ

https://LB_DNS_NAME:9443

ติดตั้ง Edge SSO ในศูนย์ข้อมูลหลายแห่ง

ในสภาพแวดล้อมที่มีศูนย์ข้อมูลหลายแห่ง คุณจะต้องติดตั้งอินสแตนซ์ Edge SSO ในศูนย์ข้อมูลแต่ละแห่ง จากนั้นอินสแตนซ์ Edge SSO รายการเดียวจะจัดการการเข้าชมทั้งหมด หากอินสแตนซ์ Edge SSO นั้นหยุดทำงาน คุณก็เปลี่ยนไปใช้อินสแตนซ์ Edge SSO รายการที่ 2 ได้

ก่อนติดตั้ง Edge SSO ในศูนย์ข้อมูล 2 แห่ง คุณต้องมีสิ่งต่อไปนี้

  • ที่อยู่ IP หรือชื่อโดเมนของเซิร์ฟเวอร์ Postgres หลัก

    ในสภาพแวดล้อมศูนย์ข้อมูลหลายแห่ง โดยปกติแล้วคุณจะติดตั้งเซิร์ฟเวอร์ Postgres 1 เซิร์ฟเวอร์ในศูนย์ข้อมูลแต่ละแห่งและกำหนดค่าในโหมดการจำลองแบบ Master-Standby ในตัวอย่างนี้ ศูนย์ข้อมูล 1 มีเซิร์ฟเวอร์ Postgres หลัก และศูนย์ข้อมูล 2 มีเซิร์ฟเวอร์สแตนด์บาย ดูข้อมูลเพิ่มเติมได้ที่ตั้งค่าการจำลองแบบ Master-Standby สำหรับ Postgres
  • รายการ DNS รายการเดียวที่ชี้ไปยังอินสแตนซ์ Edge SSO รายการเดียว ตัวอย่างเช่น คุณสร้างรายการ DNS ในแบบฟอร์มด้านล่างที่ชี้ไปยังอินสแตนซ์ Edge SSO ในศูนย์ข้อมูล 1:

    my-sso.domain.com => apigee-sso-dc1-ip-or-lb

เมื่อติดตั้ง Edge SSO ในศูนย์ข้อมูลแต่ละแห่ง คุณจะกำหนดค่าทั้ง 2 รายการให้ใช้ Postgres Master ในศูนย์ข้อมูล 1 ดังนี้

## Postgres configuration.
PG_HOST=IP_or_DNS_of_PG_Master_in_DC1
 PG_PORT=5432

นอกจากนี้ คุณยังกำหนดค่าทั้ง 2 รายการให้ใช้รายการ DNS เป็น URL ที่เข้าถึงได้แบบสาธารณะด้วย ดังนี้

# Externally accessible URL of Edge SSO.
SSO_PUBLIC_URL_HOSTNAME=my-sso.domain.com
# Default port is 9099.
SSO_PUBLIC_URL_PORT=9099

หาก Edge SSO ในศูนย์ข้อมูล 1 ไม่ทำงาน คุณสามารถเปลี่ยนไปใช้อินสแตนซ์ Edge SSO ในศูนย์ข้อมูล 2 ได้โดยทำดังนี้

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