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

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

Edge 4.52.01 को इन मेजर रिलीज़ वर्शन पर रोल बैक किया जा सकता है:

  • वर्शन 4.52.00
  • वर्शन 4.51.00

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

  1. पिछली बड़ी या छोटी रिलीज़ पर रोल बैक करें. उदाहरण के लिए, 4.52.01 से 4.52.00 तक.
  2. उसी रिलीज़ में, पिछली पैच रिलीज़ पर रोल बैक करें. उदाहरण के लिए, 4.52.00.02 से 4.52.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.51.00 पर रोल बैक करने के लिए, bootstrap_4.51.00.sh को डाउनलोड करें:
      curl https://software.apigee.com/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.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 राऊटर को रोल बैक करने के लिए, आपको edge-gateway कॉम्पोनेंट ग्रुप को अनइंस्टॉल करने के साथ-साथ, /opt/nginx/conf.d फ़ाइल का कॉन्टेंट मिटाना होगा:
      cd /opt/nginx/conf.d
      rm -rf *
  5. apigee-setup के 4.52.01 वर्शन को अनइंस्टॉल करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. apigee-service यूटिलिटी और उसकी डिपेंडेंसी का 4.51.00 वर्शन इंस्टॉल करें. यह उदाहरण, apigee-service के 4.51.00 वर्शन को इंस्टॉल करता है:
    sudo bash /tmp/bootstrap_4.51.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 को रोल बैक किया जा रहा है, तो iptable को फ़्लश करें:
    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.51.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.50.00 या 4.51.00 के वर्शन से 4.52.01 पर अपग्रेड किया है, तो आपको Edge के कॉम्पोनेंट के साथ-साथ, अपने Postgres अपडेट को भी रोल बैक करना होगा.

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

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

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

  1. पक्का करें कि नया स्टैंडबाय पोस्टग्रेस नोड चालू हो:
    /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 सॉफ़्टवेयर को डाउनग्रेड करना होगा. अगर आपके पास अब भी पुराने स्टैंडबाय नोड में पुराना वर्शन है, तो आप इस चरण को छोड़ सकते हैं और चरण 6 के साथ जारी रख सकते हैं.
    1. पुराने स्टैंडबाय नोड पर पोस्टग्रे बंद करें:
      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 बूटस्ट्रैप के पुराने वर्शन को चलाने से, पुराने वर्शन वाले Apigee डेटा के साथ yum डेटा स्टोर करने की जगहें सेट अप हो जाएंगी.
    5. पुराने स्टैंडबाय नोड पर Postgres कॉम्पोनेंट सेट अप करें:
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
    6. जांच करें और पुष्टि करें कि पुराने स्टैंडबाय नोड में पोस्टग्रेज़ कॉम्पोनेंट को पुराने वर्शन में रोल बैक कर दिया गया है:
      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 फ़ील्ड में Analytics ग्रुप का नाम और 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 कमांड को चलाकर, पुराने मास्टर का UUID पता पाएं:
    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. आंकड़े और उपभोक्ता ग्रुप के साथ नए PG मास्टर और स्टैंडबाय नोड को रजिस्टर करें:
    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. Analytics ग्रुप की पुष्टि करें:
    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. Postgres नोड को बंद करने की प्रोसेस का इस्तेमाल करके, 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