ज़्यादा उपलब्धता के लिए, Apigee एसएसओ (SSO) इंस्टॉल करें

दो स्थितियों में, ज़्यादा अपटाइम के लिए Apigee SSO के कई इंस्टेंस इंस्टॉल किए जाते हैं:

  • एक ही डेटा सेंटर एनवायरमेंट में, Apigee SSO के दो इंस्टेंस इंस्टॉल करें, ताकि ज़्यादा अपटाइम वाला एनवायरमेंट बनाया जा सके. इसका मतलब है कि अगर Apigee SSO के मॉड्यूल में से कोई एक काम करना बंद कर देता है, तो भी सिस्टम काम करता रहेगा.
  • दो डेटा सेंटर वाले एनवायरमेंट में, दोनों डेटा सेंटर में Apigee SSO इंस्टॉल करें, ताकि Apigee SSO के किसी एक मॉड्यूल के बंद होने पर भी सिस्टम काम करता रहे.

एक ही डेटा सेंटर में दो Apigee SSO मॉड्यूल इंस्टॉल करना

आपने ज़्यादा अपटाइम के लिए, एक ही डेटा सेंटर में अलग-अलग नोड पर, Apigee SSO के दो इंस्टेंस डिप्लॉय किए हैं. इस उदाहरण में:

  • Apigee SSO के दोनों इंस्टेंस, एक ही Postgres सर्वर से कनेक्ट होने चाहिए. Apigee का सुझाव है कि Apigee एसएसओ के लिए, एक खास Postgres सर्वर का इस्तेमाल करें. इसके लिए, Edge के साथ इंस्टॉल किए गए Postgres सर्वर का इस्तेमाल न करें.
  • Apigee SSO के दोनों इंस्टेंस को एक ही JWT कुंजी के जोड़े का इस्तेमाल करना चाहिए. यह जोड़ा, कॉन्फ़िगरेशन फ़ाइल में SSO_JWT_SIGNING_KEY_FILEPATH और SSO_JWT_VERIFICATION_KEY_FILEPATH प्रॉपर्टी के हिसाब से तय किया जाता है. इन प्रॉपर्टी को सेट करने के बारे में ज़्यादा जानने के लिए, Apigee एसएसओ को इंस्टॉल और कॉन्फ़िगर करना देखें.
  • आपको Apigee SSO के दो इंस्टेंस के सामने लोड बैलेंसर की ज़रूरत होगी:
    • लोड बैलेंसर को ऐप्लिकेशन से जनरेट की गई कुकी स्टिकनेस के साथ काम करना चाहिए. साथ ही, सेशन कुकी का नाम JSESSIONID होना चाहिए.
    • Apigee SSO पर टीसीपी या एचटीटीपी की परफ़ॉर्मेंस की जांच करने के लिए, लोड बैलेंसर को कॉन्फ़िगर करें. टीसीपी के लिए, Apigee SSO के यूआरएल का इस्तेमाल करें:
      http_or_https://edge_sso_IP_DNS:9099

      Apigee एसएसओ के सेट किए गए पोर्ट की जानकारी दें. पोर्ट 9099 डिफ़ॉल्ट पोर्ट है.

      एचटीटीपी के लिए, /healthz शामिल करें:

      http_or_https://edge_sso_IP_DNS:9099/healthz
    • लोड बैलेंसर की कुछ सेटिंग इस बात पर निर्भर करती हैं कि आपने Apigee SSO पर एचटीटीपीएस चालू किया है या नहीं. ज़्यादा जानकारी के लिए, यहां दिए गए सेक्शन देखें.

Apigee SSO के लिए एचटीटीपी ऐक्सेस

अगर Apigee SSO को ऐक्सेस करने के लिए एचटीटीपी का इस्तेमाल किया जा रहा है, तो लोड बैलेंसर को इस तरह कॉन्फ़िगर करें:

  • Apigee एसएसओ से कनेक्ट करने के लिए, एचटीटीपी मोड का इस्तेमाल करें.
  • Apigee SSO वाले पोर्ट पर ही सुनें.

    डिफ़ॉल्ट रूप से, Apigee एसएसओ को पोर्ट 9099 पर एचटीटीपी अनुरोधों के लिए सिग्नल पाने के लिए कॉन्फ़िगर किया गया है. इसके अलावा, Apigee एसएसओ पोर्ट सेट करने के लिए, SSO_TOMCAT_PORT का इस्तेमाल किया जा सकता है. अगर आपने Apigee एसएसओ पोर्ट को डिफ़ॉल्ट से बदलने के लिए SSO_TOMCAT_PORT का इस्तेमाल किया है, तो पक्का करें कि लोड बैलेंसर उस पोर्ट पर काम करता हो.

उदाहरण के लिए, हर Apigee एसएसओ इंस्टेंस पर, कॉन्फ़िगरेशन फ़ाइल में यह जानकारी जोड़कर पोर्ट को 9033 पर सेट किया जा सकता है:

SSO_TOMCAT_PORT=9033

इसके बाद, लोड बैलेंसर को पोर्ट 9033 पर सुनने और पोर्ट 9033 पर Edge एसएसओ इंस्टेंस को अनुरोध फ़ॉरवर्ड करने के लिए कॉन्फ़िगर करें. इस मामले में, Apigee SSO का सार्वजनिक यूआरएल यह है:

http://LB_DNS_NAME:9033

Apigee एसएसओ के लिए एचटीटीपीएस ऐक्सेस

सुरक्षित तरीके से कम्यूनिकेशन करने के लिए, Apigee एसएसओ इंस्टेंस को एचटीटीपीएस का इस्तेमाल करने के लिए कॉन्फ़िगर किया जा सकता है. इस स्थिति में, एचटीटीपीएस ऐक्सेस के लिए Apigee SSO को कॉन्फ़िगर करना में दिया गया तरीका अपनाएं. एचटीटीपीएस को चालू करने की प्रोसेस के तहत, Apigee SSO की कॉन्फ़िगरेशन फ़ाइल में SSO_TOMCAT_PROFILE को सेट करें, जैसा कि यहां दिखाया गया है:

SSO_TOMCAT_PROFILE=SSL_TERMINATION

इसके अलावा, एचटीटीपीएस ऐक्सेस के लिए, Apigee एसएसओ के इस्तेमाल किए जाने वाले पोर्ट को सेट करें:

SSO_TOMCAT_PORT=9443

लोड बैलेंसर और Apigee एसएसओ के बीच सही तरीके से कम्यूनिकेशन हो, इसके लिए लोड बैलेंसर को इस तरह कॉन्फ़िगर करें:

  • Apigee एसएसओ से कनेक्ट करने के लिए, एचटीटीपी मोड के बजाय टीसीपी मोड का इस्तेमाल करें. इससे एसएसएल कनेक्शन, लोड बैलेंसर पर खत्म हुए बिना पास हो जाते हैं.
  • SSO_TOMCAT_PORT के मुताबिक, Apigee SSO वाले पोर्ट पर ही सुनें (उदाहरण के लिए, 9443).
  • अनुरोधों को उसी पोर्ट (9443) पर Apigee एसएसओ इंस्टेंस पर फ़ॉरवर्ड करें.

पक्का करें कि सार्वजनिक यूआरएल, लोड बैलेंसर के डीएनएस और पोर्ट की सेटिंग को दिखाता हो. इस मामले में, Apigee SSO का सार्वजनिक यूआरएल यह है:

https://LB_DNS_NAME:9443

एक से ज़्यादा डेटा सेंटर में Apigee SSO इंस्टॉल करना

एक से ज़्यादा डेटा सेंटर वाले एनवायरमेंट में, हर डेटा सेंटर में Apigee एसएसओ इंस्टेंस इंस्टॉल किया जाता है. इसके बाद, Apigee एसएसओ का एक इंस्टेंस सभी ट्रैफ़िक को मैनेज करता है. अगर Apigee SSO का वह इंस्टेंस बंद हो जाता है, तो Apigee SSO के दूसरे इंस्टेंस पर स्विच किया जा सकता है.

दो डेटा सेंटर में Apigee SSO इंस्टॉल करने से पहले, आपको इनकी ज़रूरत होगी:

  • मास्टर Postgres सर्वर का आईपी पता या डोमेन नेम.

    एक से ज़्यादा डेटा सेंटर वाले एनवायरमेंट में, आम तौर पर हर डेटा सेंटर में एक Postgres सर्वर इंस्टॉल किया जाता है. साथ ही, उन्हें मास्टर-स्टैंडबाय रेप्लिकेशन मोड में कॉन्फ़िगर किया जाता है. इस उदाहरण में, डेटा सेंटर 1 में मास्टर Postgres सर्वर और डेटा सेंटर 2 में स्टैंडबाय सर्वर शामिल है. ज़्यादा जानकारी के लिए, Postgres के लिए मास्टर-स्टैंडबाय रेप्लिकेशन सेट अप करना लेख पढ़ें.

  • एक डीएनएस एंट्री, जो एक Apigee एसएसओ इंस्टेंस पर ले जाती है. उदाहरण के लिए, नीचे दिए गए फ़ॉर्म में डीएनएस एंट्री बनाई जाती है, जो डेटा सेंटर 1 में Apigee SSO इंस्टेंस पर ले जाती है:
    my-sso.domain.com => apigee-sso-dc1-ip-or-lb
  • Apigee SSO के दोनों इंस्टेंस को एक ही JWT कुंजी के जोड़े का इस्तेमाल करना चाहिए. यह जोड़ा, कॉन्फ़िगरेशन फ़ाइल में SSO_JWT_SIGNING_KEY_FILEPATH और SSO_JWT_VERIFICATION_KEY_FILEPATH प्रॉपर्टी के हिसाब से तय किया जाता है. इन प्रॉपर्टी को सेट करने के बारे में ज़्यादा जानने के लिए, Apigee एसएसओ को इंस्टॉल और कॉन्फ़िगर करना देखें.

हर डेटा सेंटर में Apigee SSO इंस्टॉल करते समय, दोनों को डेटा सेंटर 1 में Postgres मास्टर का इस्तेमाल करने के लिए कॉन्फ़िगर करें:

## Postgres configuration
PG_HOST=IP_or_DNS_of_PG_Master_in_DC1
PG_PORT=5432

आपको दोनों डेटा सेंटर को इस तरह कॉन्फ़िगर करना होगा कि वे डीएनएस एंट्री को सार्वजनिक तौर पर ऐक्सेस किए जा सकने वाले यूआरएल के तौर पर इस्तेमाल करें:

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

अगर डेटा सेंटर 1 में Apigee SSO काम करना बंद कर देता है, तो डेटा सेंटर 2 में Apigee SSO के इंस्टेंस पर स्विच किया जा सकता है:

  1. PostgreSQL डेटाबेस फ़ेलओवर को मैनेज करना में बताए गए तरीके से, डेटा सेंटर 2 में मौजूद Postgres स्टैंडबाय सर्वर को मास्टर सर्वर में बदलें.
  2. डेटा सेंटर 2 में Apigee एसएसओ इंस्टेंस पर my-sso.domain.com को पॉइंट करने के लिए, डीएनएस रिकॉर्ड अपडेट करें:
    my-sso.domain.com => apigee-sso-dc2-ip-or-lb
  3. डेटा सेंटर 2 में Apigee SSO की कॉन्फ़िगरेशन फ़ाइल को अपडेट करें, ताकि वह डेटा सेंटर 2 में नए Postgres मास्टर सर्वर पर ले जाए:
    ## Postgres configuration
    PG_HOST=IP_or_DNS_of_PG_Master_in_DC2
  4. डेटा सेंटर 2 में Apigee SSO को रीस्टार्ट करें, ताकि इसके कॉन्फ़िगरेशन को अपडेट किया जा सके:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso restart