4.16.09 रोलबैक प्रोसेस

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

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

  1. पुरानी रिलीज़ पर रोल बैक करें. उदाहरण के लिए, 4.16.09 से 4.16.05 तक.
  2. एक ही रिलीज़ में किसी पुराने वर्शन पर रोल बैक करें.

दोनों स्थितियों में रोलबैक बनाने के लिए, नीचे दी गई प्रक्रिया का इस्तेमाल करें.

रोलबैक कौन कर सकता है

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

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

किन कॉम्पोनेंट को रोल बैक किया जा सकता है

रोल बैक करते समय, आपको इन शर्तों के बारे में पता होना चाहिए:

  • नीचे दिए गए पांच Edge कॉम्पोनेंट में एक जैसा कोड है. इसलिए, किसी नोड पर मौजूद पांच कॉम्पोनेंट में से किसी एक को रोलबैक करने के लिए, आपको नोड पर इंस्टॉल किए गए पांच कॉम्पोनेंट में से किसी भी एक को रोल बैक करना होगा. उदाहरण के लिए, अगर आपके पास नोड पर मैनेजमेंट सर्वर, राऊटर, और मैसेज प्रोसेसर इंस्टॉल है, तो इनमें से किसी भी एक को रोल बैक करने के लिए, आपको इन तीनों को रोल बैक करना होगा.
    कोड शेयर करने वाले पांच कॉम्पोनेंट ये हैं:
    • मैनेजमेंट सर्वर
    • राऊटर
    • मैसेज प्रोसेसर
    • Qpid सर्वर
    • Postgres सर्वर
  • अगर Edge 4.16.01 से अपडेट किया जा रहा है, तो कैसंड्रा को रोलबैक न करें. Edge के इस रिलीज़ में, Cassandra का अपडेट किया गया वर्शन शामिल है. किसी कॉम्पोनेंट को रोल बैक करने की स्थिति में, कैसेंद्रा को 4.16.09 वर्शन पर छोड़ दें.
  • इस रिलीज़ में qpidd का नया वर्शन शामिल नहीं है. इसलिए, आपको क्यूपिड को रोलबैक करने की ज़रूरत नहीं है.

4.16.09 पर वापस लाया जा रहा है

इस सेक्शन में, Edge 4.16.09 को पिछले वर्शन पर वापस जाने का तरीका बताया गया है. इस सेक्शन को दो हिस्सों में बांटा गया है:

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

Postgres 9.4 अपडेट को रोलबैक करने के लिए

मास्टर-स्टैंडबाय कॉन्फ़िगरेशन में, 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-serviceedge-postgres-server Stop
  3. अगर इंस्टॉल किया गया है, तो पुराने स्टैंडबाय नोड पर Qpid को शुरू करें:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-qpid-server start

    ध्यान दें: कई कॉन्फ़िगरेशन में, पुराना स्टैंडबाय नोड सिर्फ़ Postgres को होस्ट करेगा, लेकिन Qpid नहीं.
  4. नए स्टैंडबाय नोड को Postgres मास्टर के तौर पर प्रमोट करें:
    1. नए स्टैंडबाय नोड को नया मास्टर बनाने के लिए प्रमोट करें:
      > apigee-service apigee-postgresql show-Standby-to-Master new_Standby_IP

      अगर कहा जाए, तो 'apigee' उपयोगकर्ता के लिए Postgres पासवर्ड डालें, जो डिफ़ॉल्ट रूप से "postgres" है.
    2. यहां बताई गई जानकारी देने के लिए, Edge के मौजूदा वर्शन को इंस्टॉल करने के लिए इस्तेमाल की गई कॉन्फ़िगरेशन फ़ाइल में बदलाव करें:
      नए मास्टर का# आईपी पता:
      PG_M लेबल=new_ Standby_IP
      # पुराने स्टैंडबाय नोड का आईपी पता
      PG_STANDBY=old_ Standby_IP
    3. नया मास्टर कॉन्फ़िगर करें:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-Master -f configFile
  5. पुराना स्टैंडबाय नोड फिर से बनाएं:
    1. यहां बताई गई जानकारी देने के लिए, Edge के अपने मौजूदा वर्शन को इंस्टॉल करने के लिए इस्तेमाल की गई कॉन्फ़िगरेशन फ़ाइल में बदलाव करें:
      नए मास्टर का # आईपी पता:
      PG_M लेबल=new_Standby_IP
      पुराने स्टैंडबाय नोड का आईपी पता
      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

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

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

    {
    "name" : "axgroup-001",
    "properties" : {
    },
    "scopes" : [ "ValidATE~test", "sgilson~prod" ],
    "uuids" : {
    "qpid-3" ef08










  8. पुराने मास्टर का यूयूआईडी पता पाएं, पुराने मास्टर नोड पर नीचे दिए गए cURL कमांड को चलाकर, यह cURL-सर्वर






    अगर Postgres सर्वर नहीं चल रहा है, तो UUID का पता लगाने के लिए, मैनेजमेंट सर्वर पर यह कमांड चलाया जा सकता है:
    > curl -u sysAdminEmail:password http://<ms_IP>:8080/v1/servers?pod=analytics

    इस कमांड के आउटपुट में, हर आईपी पते के लिए UUID में पोस्ट नोड दिखाए जाते हैं.
  9. पुराने स्टैंडबाय नोड और नए मास्टर के आईपी पते पाने के लिए, पिछला चरण दोहराएं.
  10. उपभोक्ता ग्रुप से पुराने मास्टर और स्टैंडबाय नोड हटाएं:
    > curl -u sysAdminEmail:password -X DELETE "http://<ms_IP>:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumer-groups/consumer-group-001/consumer-groups.

    MasterUUID,StandbyUUID उसी क्रम में है जिस क्रम में वे ऊपर दिए गए आंकड़ों और उपभोक्ता ग्रुप की मौजूदा जानकारी देखते समय दिखे. ऐसा हो सकता है कि आपको इन्हें StandbyUUID,MasterUUID के तौर पर तय करना पड़े.

    उपभोक्ता-ग्रुप के लिए, datastores प्रॉपर्टी अब खाली होनी चाहिए.
  11. Analytics ग्रुप से पुराने मास्टर और स्टैंडबाय नोड हटाएं:
    > curl -u sysAdminEmail:password -X DELETE "http://<ms_IP>:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUID,post-servers/host-server-post.base.

  12. Analytics और उपभोक्ता ग्रुप के साथ नए PG मास्टर और स्टैंडबाय नोड रजिस्टर करें:
    > curl -u sysAdminEmail:password -X POST -H "Content-Type: app/json" -d '' "http://<ms_IP>consumer:8080/v1/analytics/groups/ax/axgroup-0axgroup-0

  13. Analytics ग्रुप की पुष्टि करें:
    > curl -u sysAdminEmail:password http://<ms_IP>:8080/v1/analytics/groups/ax

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

    नए मास्टर पर, इसे चलाएं:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

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

    पुराने स्टैंडबाय नोड पर:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check- Standby

    पुष्टि करें कि यह स्टैंडबाय नोड है.
  18. कई एपीआई अनुरोध करने के बाद पिछले चरण को दोहराएं, ताकि यह पक्का किया जा सके कि सभी नोड सिंक हो रहे हैं.
  19. Update Apigee Edge को 4.16.09 वर्शन में बदलने वाली प्रोसेस का इस्तेमाल करके, पुराने Postgres मास्टर को बंद करें.

    ध्यान दें: अगर पुराना मास्टर नोड Qpid चला रहा था, तो उस सर्वर को Qpid चलाने के लिए छोड़ा जा सकता है. पक्का करें कि यह चालू है. अगर नहीं, तो इसे शुरू करें:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-management-server start

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

पुराने मास्टर से Uninstal Qpid और नए मास्टर पर Qpid इंस्टॉल

Qpid को पुराने मास्टर से अनइंस्टॉल करने और उसे नए मास्टर पर इंस्टॉल करने के लिए, नीचे दी गई प्रक्रिया अपनाएं:

  1. सभी मैसेज प्रोसेसर पर यह निर्देश चलाकर, पुराने मास्टर पर Qpid पोर्ट 5672 को ऐक्सेस करने से रोकें:
    > iptables -A OUTPUT -p tcp -d 10.233.147.20 --dport 5672 -j DROP
  2. नीचे दिए गए निर्देश का इस्तेमाल करके यह पक्का करें कि Qpid मैसेज की सूची खाली हो. Qpid को तब तक अनइंस्टॉल नहीं किया जा सकता, जब तक कि इसमें बाकी के सभी मैसेज प्रोसेस न हो जाएं:
    > qpid-stat -q

    यह निर्देश एक टेबल दिखाता है, जिसमें msg, msgIn, और msgOut की संख्या शामिल होती है. सभी मैसेज msg=0 और msgIn=msgOut से प्रोसेस किए जाने के बाद प्रोसेस किए जाएंगे.
  3. पुराने मास्टर पर नीचे दिया गया निर्देश चलाकर, पुराने मास्टर पर Qpid सर्वर का UUID तय करें. आगे की प्रोसेस में इस जानकारी को सेव करें:
    > curl -u sysAdminEmail:password http://<node_IP>::8083/v1/servers/self
  4. पुराने मास्टर पर Qpid को बंद करें:
    > /opt/apigee/apigee-service/bin/apigee-serviceedge-qpid-server स्टॉप
    > /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd स्टॉप
  5. Qpid सर्वर को अनइंस्टॉल करें:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-qpid-server अनइंस्टॉल
    > /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd अनइंस्टॉल
  6. Analytics और उपभोक्ता ग्रुप से पुराना Qpid सर्वर हटाएं:
    > curl -u sysAdminEmail:password -X DELETE -H "Content-Type: app/json" -d '' "http://<ms_IP>:8080/v1/analytics/type/ax/axgroup-001

  7. ज़ूकीपर से पुराना Qpid सर्वर हटाएं:
    > curl -u sysAdminEmail:password -X DELETE http://<ms_IP>:8080/v1/servers/qpid_UUID
  8. नए मास्टर पर Qpid इंस्टॉल करें:
    > /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
  9. नए मास्टर पर नीचे दिया गया निर्देश चलाकर, नए मास्टर पर Qpid सर्वर का UUID तय करें. आगे की प्रोसेस में इस जानकारी को सेव करें:
    > curl -u sysAdminEmail:password http://<node_IP>::8083/v1/servers/self
  10. इस नए Qpid सर्वर को इस तरह रजिस्टर करें:
    > curl -u sysAdminEmail:password -X POST -H "Content-Type: app/json" -d '' "http://<ms_IP>consumer:8080/v1/analytics/groups/ax/axgroup-00>

  11. सभी मैसेज प्रोसेसर को रीस्टार्ट करें:
    > /opt/apigee/apigee-service/bin/apigee-serviceedge-message-processor भर्ती
  12. नए Qpid सर्वर पर यह कमांड चलाएं और देखें कि सूची बन गई है या नहीं:
    > qpid-stat -q

    पक्का करें कि आपको msg, msgIn, और msgOut को Qpid सर्वर के मैसेज प्रोसेस करने के तौर पर अपडेट होते देखा जा रहा है.

4.16.09 से अलग-अलग कॉम्पोनेंट को रोलबैक करने के लिए

रोल बैक करने के लिए, आपको अपने मौजूदा EDGE वर्शन के लिएboostrap.sh फ़ाइल डाउनलोड करनी होगी:

  • 4.16.05 पर रोल बैक करने के लिए, बूटस्ट्रैप_4.16.05.sh डाउनलोड करें
  • 4.16.01 पर वापस रोल करने के लिए, downlaod भागीदार.sh

रोल बैक करने वाले कॉम्पोनेंट को होस्ट करने वाले हर नोड के लिए:

  1. कॉम्पोनेंट को रोल बैक करने से रोकें:
    1. अगर आपको नोड पर इनमें से किसी भी कॉम्पोनेंट को रोल बैक करना है, तो आपको उन सभी को बंद करना होगा: मैनेजमेंट सर्वर, राऊटर, मैसेज प्रोसेसर, Qpid सर्वर या Postgres सर्वर:
      • > apigee-service Edge-management-सर्वर बंद हो गया है
      • > apigee-service एज-रूटर स्टॉप
      • > apigee-service Edge-message-प्रोसेसर को बंद कर दिया जाएगा
      • > apigee-service Edge-qpid-सर्वर स्टॉप
      • > apigee-service Edge-postgres-server स्टॉप
    2. अगर आपको नोड पर किसी दूसरे कॉम्पोनेंट को रोल बैक करना है, तो सिर्फ़ उसी कॉम्पोनेंट को बंद करें:
      • > apigee-service comp रोकें
  2. अगर कमाई करने की सुविधा को फिर से रोल आउट किया जा रहा है, तो इसे मैनेजमेंट सर्वर और मैसेज प्रोसेसर नोड के सभी नोड से अनइंस्टॉल करें:
    > apigee-service Edge-mint-gateway अनइंस्टॉल करें
  3. नोड पर रोल बैक करने के लिए, कॉम्पोनेंट को अनइंस्टॉल करें:
    1. अगर आपको नोड पर इनमें से किसी कॉम्पोनेंट को रोल बैक करना है, तो उन सभी को अनइंस्टॉल करें: मैनेजमेंट सर्वर, राऊटर, मैसेज प्रोसेसर, Qpid सर्वर या Postgres सर्वर:
      > apigee-service Edge-gateway अनइंस्टॉल करें
    2. अगर आपको नोड पर किसी अन्य कॉम्पोनेंट को रोल बैक करना है, तो सिर्फ़ उस कॉम्पोनेंट को अनइंस्टॉल करें:
      > apigee-service comp अनइंस्टॉल करें
  4. अगर राऊटर को रोल बैक किया जा रहा है, तो आपको इसका कॉन्टेंट मिटाना होगा /opt/nginx/conf.d:
    > cd /opt/nginx/conf.d
    > rm -rf *
  5. कॉम्पोनेंट को रोल बैक करने के लिए:
    1. apigee-setup के 4.16.09 वर्शन को अनइंस्टॉल करें:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-setup setup
    2. 4.16.01 या 4.16.05 रिलीज़ के लिए बूटstrap.sh डाउनलोड करें:
      4.16.01 के लिए:
      > curl https://software.apigee.com/bootstrap.sh -o /tmp/bootstrap.sh

      4.16.बूटस्ट्रै.1.एपीआई.3.05.
    3. 4.16.01 या 4.16.05 apigee-service यूटिलिटी और डिपेंडेंसी इंस्टॉल करें:
      > sudo bash /tmp/bootstrap.sh apigeeuser=uName apigeepassword=pWord

      जहां uName, आपको उपयोगकर्ता नाम और p Word मिला है. pWord को छोड़ने पर, आपको इसे डालने के लिए कहा जाएगा.
    4. apigee-setup का 4.16.01 या 4.16.05 वर्शन इंस्टॉल करें:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
    5. कॉम्पोनेंट का 4.16.01 या 4.16.05 वर्शन इंस्टॉल करें:
      > /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

      यहां comp इंस्टॉल करने का कॉम्पोनेंट है और configFile आपकी 4.15 फ़ाइल का 4.16 कॉन्फ़िगरेशन है.
  6. कॉम्पोनेंट को 4.16.05 की रिलीज़ के किसी खास वर्शन पर रोल बैक करने के लिए:
    1. कॉम्पोनेंट का खास वर्शन डाउनलोड करें:
      > /<instal_direct>/apigee/apigee-service/bin/apigee-service Com-version इंस्टॉल करें

      इसमें, Com-version वह कॉम्पोनेंट और वर्शन है जिसे इंस्टॉल करना है. उदाहरण के लिए:
      > /<instal_direct>/apigee/apigee-service/bin/apigee-serviceedge-ui-4.16.05-0.0.3649 इंस्टॉल करें

      अगर आप Apigee ऑनलाइन रेपो का इस्तेमाल कर रहे हैं, तो नीचे दिए गए निर्देश का इस्तेमाल करके, कॉम्पोनेंट के उपलब्ध वर्शन तय कर सकते हैं -डुप्लीकेट सूची दिखाएं:
      डुप्लीकेट सूची yum


    2. कॉम्पोनेंट इंस्टॉल करने के लिए, apigee-setup इस्तेमाल करें:
      > /<install_direct>/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

      उदाहरण के लिए:
      > /<install_direct>/apigee/apigee-setup/bin/p setup- रिपेयर only

अगर रोल बैक करते समय आपको समस्याएं आती हैं, तो Apigee की सहायता टीम से संपर्क करें.