Apigee Edge 4.51.00 को रोल बैक करें

अगर आपको Edge 4.51.00 पर अपडेट करने के दौरान कोई गड़बड़ी मिलती है, तो उस कॉम्पोनेंट को रोल बैक किया जा सकता है जिसकी वजह से गड़बड़ी हुई है. इसके बाद, अपडेट करने की कोशिश फिर से करें.

Edge 4.51.00 को, सुविधाओं के रिलीज़ वाले इन वर्शन पर वापस लाया जा सकता है:

  • वर्शन 4.50.00
  • वर्शन 4.19.06

इन दो स्थितियों में आपको रोलबैक करना पड़ सकता है:

  1. किसी सुविधा की पिछली रिलीज़ पर रोल बैक करें. उदाहरण के लिए, 4.51.00 से 4.50.00.
  2. एक ही रिलीज़ में, किसी पिछले अपडेट वर्शन पर वापस जाएं. उदाहरण के लिए, 4.50.00.02 से 4.50.00.01 पर.

ज़्यादा जानकारी के लिए, Apigee Edge रिलीज़ की प्रोसेस देखें.

रोलबैक करने की अनुमति किसे है

रोलबैक करने वाला उपयोगकर्ता वही होना चाहिए जिसने मूल रूप से Edge को अपडेट किया था या ऐसा उपयोगकर्ता होना चाहिए जो रूट के तौर पर काम कर रहा हो.

डिफ़ॉल्ट रूप से, Edge कॉम्पोनेंट, उपयोगकर्ता "apigee" के तौर पर चलते हैं. कुछ मामलों में, हो सकता है कि आप Edge के कॉम्पोनेंट को अलग-अलग उपयोगकर्ताओं के तौर पर चला रहे हों. उदाहरण के लिए, अगर राउटर को खास पोर्ट ऐक्सेस करने हैं, जैसे कि 1,000 से कम वाले पोर्ट, तो आपको राउटर को रूट के तौर पर या उन पोर्ट का ऐक्सेस रखने वाले उपयोगकर्ता के तौर पर चलाना होगा. इसके अलावा, एक कॉम्पोनेंट को एक उपयोगकर्ता के तौर पर और दूसरे कॉम्पोनेंट को किसी दूसरे उपयोगकर्ता के तौर पर चलाया जा सकता है.

एक जैसे कोड वाले कॉम्पोनेंट

नीचे दिए गए Edge कॉम्पोनेंट, एक ही कोड शेयर करते हैं. इसलिए, किसी नोड पर मौजूद इनमें से किसी एक कॉम्पोनेंट को रोल बैक करने के लिए, आपको उस नोड पर मौजूद सभी कॉम्पोनेंट को रोल बैक करना होगा.

  • edge-management-server (मैनेजमेंट सर्वर)
  • edge-message-processor (मैसेज प्रोसेसर)
  • edge-router (राऊटर)
  • edge-postgres-server (Postgres सर्वर)
  • edge-qpid-server (Qpid सर्वर)

उदाहरण के लिए, अगर आपने नोड पर मैनेजमेंट सर्वर, राउटर, और मैसेज प्रोसेसर इंस्टॉल किया है, तो इनमें से किसी एक को रोल बैक करने के लिए, आपको तीनों को रोल बैक करना होगा.

सुविधा की पिछली रिलीज़ पर वापस जाना

किसी सुविधा की पिछली रिलीज़ पर वापस जाने के लिए, कॉम्पोनेंट को होस्ट करने वाले हर नोड पर ये काम करें:

  1. जिस वर्शन पर आपको वापस जाना है उसके लिए bootstrap.sh फ़ाइल डाउनलोड करें:

    • 4.50.00 पर वापस जाने के लिए, bootstrap_4.50.00.sh डाउनलोड करें:
      curl https://software.apigee.com/bootstrap_4.50.00.sh -o /tmp/bootstrap_4.50.00.sh 
    • 4.19.06 पर वापस जाने के लिए, bootstrap_4.19.06.sh डाउनलोड करें:
      curl https://software.apigee.com/bootstrap_4.19.01.sh -o /tmp/bootstrap_4.19.01.sh 
  2. रोल बैक करने के लिए कॉम्पोनेंट को रोकें:
    1. नोड पर मौजूद एक जैसे कोड वाले किसी भी कॉम्पोनेंट को रोल बैक करने के लिए, आपको सभी कॉम्पोनेंट को रोकना होगा, जैसा कि यहां दिए गए उदाहरण में दिखाया गया है:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
      /opt/apigee/apigee-service/bin/apigee-service edge-router stop
      /opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
      /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
    2. किसी अन्य कॉम्पोनेंट को नोड पर वापस लाने के लिए, सिर्फ़ उस कॉम्पोनेंट को रोकें:
      • /opt/apigee/apigee-service/bin/apigee-service component stop
  3. अगर आपको कमाई करने की सुविधा को वापस लेना है, तो इसे सभी मैनेजमेंट सर्वर और मैसेज प्रोसेसर नोड से अनइंस्टॉल करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
  4. नोड पर रोल बैक करने के लिए, कॉम्पोनेंट को अनइंस्टॉल करें:
    1. नोड पर मौजूद कॉमन कोड वाले किसी भी कॉम्पोनेंट को रोल बैक करने के लिए, आपको edge-gateway कॉम्पोनेंट ग्रुप को अनइंस्टॉल करके, सभी कॉम्पोनेंट को अनइंस्टॉल करना होगा. इसका उदाहरण यहां दिया गया है:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    2. नोड पर मौजूद किसी दूसरे कॉम्पोनेंट को रोल बैक करने के लिए, सिर्फ़ उस कॉम्पोनेंट को अनइंस्टॉल करें, जैसा कि यहां दिए गए उदाहरण में दिखाया गया है:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      यहां component, कॉम्पोनेंट का नाम है.

    3. Edge Router को रोल बैक करने के लिए, आपको edge-gateway कॉम्पोनेंट ग्रुप को अनइंस्टॉल करने के साथ-साथ, /opt/nginx/conf.d फ़ाइल का कॉन्टेंट भी मिटाना होगा:
      cd /opt/nginx/conf.d
      rm -rf *
  5. apigee-setup के 4.51.00 वर्शन को अनइंस्टॉल करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. apigee-service की सुविधा और इसकी डिपेंडेंसी का 4.19.06 या 4.50.00 वर्शन इंस्टॉल करें. यहां दिए गए उदाहरण में, apigee-service का 4.50.00 वर्शन इंस्टॉल किया गया है:
    sudo bash /tmp/bootstrap_4.50.00.sh apigeeuser=uName apigeepassword=pWord

    यहां uName और pWord, Apigee से मिले उपयोगकर्ता नाम और पासवर्ड हैं. अगर आपने pWord को शामिल नहीं किया है, तो आपसे उसे डालने के लिए कहा जाएगा.

    अगर आपको गड़बड़ी का कोई मैसेज मिलता है, तो पक्का करें कि आपने पहले चरण में bootstrap.sh फ़ाइल डाउनलोड की हो.

  7. apigee-setup इंस्टॉल करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  8. कॉम्पोनेंट का पुराना वर्शन इंस्टॉल करें:
    /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

    यहां component वह कॉम्पोनेंट है जिसे इंस्टॉल करना है और configFile, पुराने वर्शन के लिए आपकी कॉन्फ़िगरेशन फ़ाइल है.

  9. अगर Qpid को रोल बैक किया जा रहा है, तो iptables को फ़्लश करें:
    sudo iptables -F
  10. यह तरीका हर उस नोड के लिए दोहराएं जो उस कॉम्पोनेंट को होस्ट करता है जिसे आपको रोल बैक करना है.

पिछले अपडेट वर्शन पर वापस जाना

किसी कॉम्पोनेंट को रिलीज़ के किसी खास वर्शन पर वापस लाने के लिए, कॉम्पोनेंट को होस्ट करने वाले हर नोड पर यह तरीका अपनाएं:

  1. कॉम्पोनेंट का कोई खास वर्शन डाउनलोड करें:
    /opt/apigee/apigee-service/bin/apigee-service component_version install

    यहां component_version, इंस्टॉल करने के लिए कॉम्पोनेंट और अपडेट वर्शन है. उदाहरण के लिए:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui-4.18.05-0.0.3749 install

    अगर Apigee के ऑनलाइन रिपॉज़िटरी का इस्तेमाल किया जा रहा है, तो कॉम्पोनेंट के उपलब्ध वर्शन का पता लगाने के लिए, यह कमांड इस्तेमाल करें:

    yum --showduplicates list comp

    उदाहरण के लिए:

    yum --showduplicates list edge-ui
  2. कॉम्पोनेंट इंस्टॉल करने के लिए, apigee-setup का इस्तेमाल करें:
    /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

    उदाहरण के लिए:

    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile

    ध्यान दें कि कॉम्पोनेंट को इंस्टॉल करते समय, आपको उसका वर्शन नहीं, बल्कि सिर्फ़ नाम बताना होता है.

  3. यह तरीका हर उस नोड के लिए दोहराएं जो उस कॉम्पोनेंट को होस्ट करता है जिसे आपको रोल बैक करना है.

Postgres 10.17 अपडेट को रोल बैक करना

अगर आपने 4.19.06 या 4.50.00 वर्शन से 4.51.00 वर्शन पर अपग्रेड किया है, तो आपको Edge कॉम्पोनेंट के साथ-साथ, Postgres अपडेट को भी रोल बैक करना होगा.

Postgres को मास्टर-स्टैंडबाय कॉन्फ़िगरेशन में अपडेट करते समय, Postgres अपडेट को रोलबैक करने के लिए:

  • नए स्टैंडबाय नोड को Postgres का मास्टर नोड बनाएं. नया Postgres मास्टर, आपके पिछले Edge इंस्टॉलेशन के वर्शन जैसा ही होगा.
  • पुराने स्टैंडबाय नोड को नए मास्टर के स्टैंडबाय नोड के तौर पर कॉन्फ़िगर करें. पुराने स्टैंडबाय नोड का वर्शन, आपके पिछले Edge इंस्टॉलेशन के वर्शन जैसा ही होगा.
  • नए मास्टर और स्टैंडबाय नोड को Analytics और कंज्यूमर ग्रुप के साथ रजिस्टर करें.

रोलबैक पूरा होने के बाद, पुराने मास्टर नोड की ज़रूरत नहीं होगी. इसके बाद, पुराने मास्टर नोड को बंद किया जा सकता है.

  1. पक्का करें कि नया स्टैंडबाय Postgres नोड चल रहा हो:
    /opt/apigee/apigee-service/bin/apigee-all status

    अगर Postgres नहीं चल रहा है, तो इसे शुरू करें:

    /opt/apigee/apigee-service/bin/apigee-all start
  2. पक्का करें कि पुराने मास्टर नोड और पुराने स्टैंडबाय नोड पर Postgres बंद हो:
    /opt/apigee/apigee-service/bin/apigee-all status

    अगर Postgres चल रहा है, तो उसे बंद करें:

    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop

  3. अगर इंस्टॉल किया गया है, तो पुराने स्टैंडबाय नोड पर Qpid शुरू करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
  4. नए स्टैंडबाय नोड को Postgres के मुख्य नोड के तौर पर प्रमोट करना:
    1. नए स्टैंडबाय नोड को नया मास्टर बनाने के लिए:
      apigee-service apigee-postgresql promote-standby-to-master new_standby_IP

      अगर आपसे कहा जाए, तो 'apigee' उपयोगकर्ता के लिए Postgres पासवर्ड डालें. यह डिफ़ॉल्ट रूप से "postgres" पर सेट होता है.

    2. Edge के मौजूदा वर्शन को इंस्टॉल करने के लिए इस्तेमाल की गई कॉन्फ़िगरेशन फ़ाइल में बदलाव करके, इनके बारे में जानकारी दें:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    3. नए मास्टर को कॉन्फ़िगर करें:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  5. अगर आपने पहले से ही पुराने स्टैंडबाय नोड को नए वर्शन में अपग्रेड कर लिया है, तो आपको पहले पुराने स्टैंडबाय नोड पर Apigee सॉफ़्टवेयर को डाउनग्रेड करना होगा. अगर आपके पास अब भी पुराने स्टैंडबाय नोड पर पुराना वर्शन है, तो इस चरण को छोड़ा जा सकता है और सीधे छठे चरण पर जाया जा सकता है.
    1. पुराने स्टैंडबाय नोड पर Postgres को बंद करें:
      apigee-service apigee-postgresql stop
      apigee-service edge-postgres-server stop
    2. पुराने स्टैंडबाय नोड से Postgres को अनइंस्टॉल करें:
      apigee-service apigee-postgresql uninstall
      apigee-service edge-postgres-server uninstall
    3. पुराने स्टैंडबाय नोड से Postgres डेटा डायरेक्ट्री मिटाएं:
      cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    4. पुराने स्टैंडबाय नोड पर, पुराने वर्शन का बूटस्ट्रैप डाउनलोड करें और चलाएं. यह बूटस्ट्रैप, उस Apigee वर्शन के लिए होना चाहिए जिस पर आपको वापस जाना है. इंटरनेट पर आधारित या ऑफ़लाइन इंस्टॉलेशन का इस्तेमाल करने पर, सटीक तरीके अलग-अलग हो सकते हैं. Apigee के पुराने वर्शन का बूटस्ट्रैप चलाने पर, Yum रिपॉज़िटरी को Apigee के पुराने वर्शन के डेटा के साथ सेट अप किया जाएगा.
    5. पुराने स्टैंडबाय नोड पर Postgres कॉम्पोनेंट सेट अप करें:
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
    6. देखें और पुष्टि करें कि पुराने स्टैंडबाय नोड पर Postgres के कॉम्पोनेंट को पुराने वर्शन पर वापस लाया गया है:
      apigee-service apigee-postgresql version
      apigee-service edge-postgres-server version
  6. पुराने स्टैंडबाय नोड को फिर से बनाएं:
    1. Edge के मौजूदा वर्शन को इंस्टॉल करने के लिए इस्तेमाल की गई कॉन्फ़िगरेशन फ़ाइल में बदलाव करके, इनके बारे में जानकारी दें:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    2. पुराने स्टैंडबाय नोड से डेटा डायरेक्ट्री हटाएं:
      cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    3. पुराने स्टैंडबाय नोड को नए मास्टर के स्टैंडबाय नोड के तौर पर फिर से कॉन्फ़िगर करें:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    4. पक्का करें कि Postgres, पुराने स्टैंडबाय नोड पर चल रहा हो:
      /opt/apigee/apigee-service/bin/apigee-all status

      अगर Postgres नहीं चल रहा है, तो इसे शुरू करें:

      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
  7. नए मास्टर पर /opt/apigee/apigee-postgresql/conf/pg_hba.conf फ़ाइल को देखकर पुष्टि करें कि नया स्टैंडबाय नोड जोड़ा गया है.
  8. मैनेजमेंट सर्वर पर यह कमांड चलाकर, मौजूदा आंकड़ों और उपभोक्ता ग्रुप की जानकारी देखें:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    यह निर्देश, name फ़ील्ड में आंकड़ों के ग्रुप का नाम और consumer-groups में name फ़ील्ड में, उपभोक्ता ग्रुप का नाम दिखाता है. यह postgres-server फ़ील्ड और datastores फ़ील्ड में, पुराने Postgres मास्ट और स्टैंडबाय नोड के यूयूआईडी भी दिखाता है. आपको इस फ़ॉर्मैट में आउटपुट दिखेगा:

    {
      "name" : "axgroup-001",
      "properties" : {
      },
      "scopes" : [ "VALIDATE~test", "sgilson~prod" ],
      "uuids" : {
        "qpid-server" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ],
        "postgres-server" : [
          "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256"
        ]
      },
      "consumer-groups" : [ {
        "name" : "consumer-group-001",
        "consumers" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ],
        "datastores" :
          [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ],
          "properties" : {     }
        }
      ],
      "data-processors" : {
      }
    }

  9. पुराने मास्टर नोड पर यह curl कमांड चलाकर, पुराने मास्टर का यूयूआईडी पता पाएं:
    curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self

    आपको आउटपुट के आखिर में, इस फ़ॉर्मैट में नोड का यूयूआईडी दिखेगा:

    "type" : [ "postgres-server" ],
    "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
  10. पुराने स्टैंडबाय नोड और नए मास्टर के आईपी पते पाने के लिए, पिछले चरण को दोहराएं.
  11. उपभोक्ता ग्रुप से पुराने मास्टर और स्टैंडबाय नोड हटाएं:
    curl -u sysAdminEmail:password -X DELETE \
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores/masterUUID,standbyUUID" -v

    यहां axgroup-001 और consumer-group-001, आंकड़ों और उपभोक्ता ग्रुप के डिफ़ॉल्ट नाम हैं. masterUUID,standbyUUID उसी क्रम में दिखते हैं जिस क्रम में आपने ऊपर मौजूदा आंकड़ों और उपभोक्ता ग्रुप की जानकारी देखी थी. आपको उन्हें standbyUUID,masterUUID के तौर पर बताना पड़ सकता है.

    consumer-groups के लिए datastores प्रॉपर्टी अब खाली होनी चाहिए.

  12. Analytics ग्रुप से पुराने मास्टर और स्टैंडबाय नोड हटाएं:
    curl -u sysAdminEmail:password -X DELETE \
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v

    uuids में मौजूद postgres-server प्रॉपर्टी अब खाली होनी चाहिए.

  13. नए पीजी मास्टर और स्टैंडबाय नोड को आंकड़ों और उपभोक्ता ग्रुप के साथ रजिस्टर करें:
    curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
    curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores?uuid=masterUUID,standbyUUID" -v
  14. आंकड़ों के ग्रुप की पुष्टि करना:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    आपको Analytics ग्रुप और ग्राहक ग्रुप में, नए मास्टर और स्टैंडबाय नोड के यूयूआईडी दिखेंगे.

  15. Edge मैनेजमेंट सर्वर को रीस्टार्ट करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  16. सभी Qpid सर्वर रीस्टार्ट करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
  17. सभी Postgres सर्वर रीस्टार्ट करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  18. दोनों सर्वर पर ये स्क्रिप्ट चलाकर, डुप्लीकेट कॉपी बनाने की स्थिति की पुष्टि करें. कॉपी करने की प्रोसेस पूरी हो गई है या नहीं, यह पक्का करने के लिए सिस्टम को दोनों सर्वर पर एक जैसे नतीजे दिखाने चाहिए:

    नए मास्टर पर, यह चलाएं:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    पुष्टि करें कि यह मास्टर्स है. पुराने स्टैंडबाय नोड पर:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    पुष्टि करें कि यह स्टैंडबाय मोड है.

  19. कई एपीआई अनुरोध करने के बाद, पिछले चरण को दोहराएं. इससे यह पक्का किया जा सकेगा कि नोड सिंक हैं.
  20. Apigee Edge 4.16.01/4.16.05 को 4.17.09 पर अपडेट करें में बताई गई प्रोसेस का इस्तेमाल करके, पुराने Postgres मास्टर्स को बंद करें.

    इसके अलावा, पुराने मास्टर से Qpid को अनइंस्टॉल करके, नए मास्टर नोड पर Qpid इंस्टॉल किया जा सकता है. Qpid को अनइंस्टॉल करने के बाद, आपके पास पुराने मास्टर नोड को बंद करने का विकल्प होता है.

mTLS को रोल बैक करना

mTLS अपडेट को रोल-बैक करने के लिए, सभी होस्ट पर यह तरीका अपनाएं:

  1. Apigee को बंद करना:
    apigee-all stop
  2. mTLS को रोकना:
    apigee-service apigee-mtls uninstall
  3. mTLS को फिर से इंस्टॉल करें:
    apigee-service apigee-mtls install
    apigee-service apigee-mtls setup -f /opt/silent.conf