Apigee Edge 4.54.00 को रोल बैक करना

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

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

  • वर्शन 4.53.00
  • वर्शन 4.53.01

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

रोलबैक का क्रम

कॉम्पोनेंट को अपग्रेड किए गए क्रम के उलट क्रम में वापस लाना चाहिए. Private Cloud 4.54.00 के लिए, रोलबैक का सामान्य क्रम कुछ इस तरह दिखेगा:

  • Cassandra, Zookeeper को रोल बैक करें.
  • Qpid, आंकड़ों से जुड़े अन्य कॉम्पोनेंट, और Postgres को रोल बैक करें.
  • यूज़र इंटरफ़ेस (यूआई) को रोल बैक करना
  • एलडीएपी को रोल बैक करें.
  • मैनेजमेंट सर्वर को रोल बैक करना.
  • राउटर और मैसेज प्रोसेसर को रोल बैक करना.

उदाहरण के लिए, मान लें कि आपने अपने सभी राऊटर और मैसेज प्रोसेसर, सभी मैनेजमेंट सर्वर, एलडीएपी, और कुछ यूज़र इंटरफ़ेस (यूआई) नोड को वर्शन 4.53.00 (या) 4.53.01 से वर्शन 4.54.00 पर अपग्रेड किया है और आपको वापस पिछले वर्शन पर जाना है. इस मामले में, आपको:

  • अपग्रेड किए गए यूज़र इंटरफ़ेस (यूआई) नोड को रोल बैक करना
  • LDAP नोड को रोल बैक करना
  • मैनेजमेंट सर्वर नोड को एक-एक करके रोल बैक करें
  • सभी आरएमपी को एक-एक करके रोल बैक करना

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

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

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

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

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

रोलबैक की स्थितियां

यहां दी गई टेबल में, रोलबैक की उन रणनीतियों के बारे में बताया गया है जिनका इस्तेमाल किया जा सकता है:

स्थिति रोलबैक की रणनीति
सिंगल डीसी, कुछ Cassandra नोड अपग्रेड किए गए बैकअप इस्तेमाल करना
एक से ज़्यादा डीसी, एक डीसी में कुछ नोड अपग्रेड किए गए मौजूदा डीसी से फिर से बनाना
कई डीसी, कुछ डीसी में सभी Cassandra नोड अपग्रेड किए गए मौजूदा डीसी से फिर से बनाना
कई डीसी, आखिरी डीसी के Cassandra नोड अपग्रेड किए जा रहे हैं अपग्रेड की प्रोसेस पूरी करें. अगर ऐसा करना मुमकिन न हो, तो बैकअप का इस्तेमाल करके, एक डीसी को रोल बैक करें. रोल बैक किए गए डीसी से, बचे हुए डीसी को फिर से बनाएं.

सामान्य मान्यताएं

रोलबैक करने से पहले, इन बातों का ध्यान रखें:

  • Cassandra को अपग्रेड करने के दौरान, Cassandra को रोलबैक करना: अगर आपको Cassandra को अपग्रेड करने के दौरान समस्याएं आती हैं, तो हो सकता है कि आप रोलबैक करना चाहें. अपग्रेड की प्रोसेस के दौरान अपनी स्थिति के आधार पर, इस लेख में दी गई रोलबैक की रणनीतियों का पालन करें.
  • बैकअप का इस्तेमाल करके रोलबैक करना: Cassandra 5.0.X से लिए गए बैकअप, Cassandra 4.0.X के बैकअप के साथ काम नहीं करते. बैकअप को वापस लाकर Cassandra को पहले जैसा करने के लिए, आपको अपग्रेड करने से पहले Cassandra 4.0.X के बैकअप लेने होंगे.

रीबिल्ड का इस्तेमाल करके, Cassandra को रोल बैक करना

ज़रूरी शर्तें

  • आपके पास कई डेटा सेंटर में, Edge for Private Cloud 4.53.00/4.53.01 क्लस्टर है.
  • Cassandra को 4.0.X से 5.0.X पर अपग्रेड किया जा रहा है और अपग्रेड के दौरान समस्याएं आ रही हैं.
  • क्लस्टर में कम से कम एक ऐसा डेटा सेंटर हो जो पूरी तरह से काम कर रहा हो और जिसमें अब भी Cassandra का पुराना वर्शन (Cassandra 4.0.X) चल रहा हो.

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

हाई-लेवल के चरण

  1. वह डेटा सेंटर चुनें जिसे आपको वापस पहले वाले वर्शन पर ले जाना है. यह डेटा सेंटर, आंशिक या पूरी तरह से अपग्रेड किया गया होना चाहिए. रनटाइम ट्रैफ़िक को किसी दूसरे डेटा सेंटर पर डाइवर्ट करना.
  2. डेटा सेंटर में सीड नोड की पहचान करें और किसी एक सीड नोड से शुरू करें.
  3. Cassandra नोड को बंद करें, अनइंस्टॉल करें, और साफ़ करें.
  4. नोड पर Cassandra का पुराना वर्शन इंस्टॉल करें और उसे अपनी ज़रूरत के हिसाब से कॉन्फ़िगर करें.
  5. पहले जोड़े गए अतिरिक्त कॉन्फ़िगरेशन हटाएं.
  6. डेटा सेंटर में मौजूद सभी सीड नोड के लिए, ऊपर दिया गया तरीका एक-एक करके दोहराएं.
  7. डेटा सेंटर में मौजूद बाकी सभी Cassandra नोड के लिए, ऊपर दिया गया तरीका एक-एक करके दोहराएं.
  8. काम कर रहे मौजूदा डेटा सेंटर से नोड को एक-एक करके फिर से बनाएं.
  9. डेटा सेंटर में, Cassandra से कनेक्ट किए गए सभी edge-* कॉम्पोनेंट को रीस्टार्ट करें.
  10. इस डेटा सेंटर पर वापस ट्रैफ़िक भेजने की सुविधा की जांच करें.
  11. हर डेटा सेंटर के लिए, एक-एक करके यह तरीका दोहराएं.

सिलसिलेवार चरण

  1. कोई एक डेटा सेंटर चुनें जहां Cassandra के सभी या कुछ नोड अपग्रेड किए गए हों. इस डेटा सेंटर के Cassandra नोड को वापस रोल करने के दौरान, इस डेटा सेंटर से सभी रनटाइम प्रॉक्सी ट्रैफ़िक और मैनेजमेंट ट्रैफ़िक को डाइवर्ट करें. पक्का करें कि नोड पर nodetool ring कमांड को एक्ज़ीक्यूट करने पर, सभी Cassandra नोड UN (Up/Normal) स्थिति में हों. अगर कुछ नोड काम नहीं कर रहे हैं, तो समस्या को हल करें और आगे बढ़ने से पहले उन नोड को फिर से चालू करें.

    नीचे दिया गया उदाहरण देखें:

    /opt/apigee/apigee-cassandra/bin/nodetool status
    Datacenter: dc-1
    ================
    Status=Up/Down
    |/ State=Normal/Leaving/Joining/Moving
    --  Address      Load       Tokens       Owns (effective)  Host ID                               Rack
    UN  DC1-1IP1  456.41 KiB  1            100.0%            78fc4ddd-2ed9-4a8c-98a2-63a38c2f1920  ra-1
    UN  DC1-1IP2  870.93 KiB  1            100.0%            160db01a-64ab-43a7-b9ea-3b7f8f66d52b  ra-1
    UN  DC1-1IP3  824.08 KiB  1            100.0%            21d61543-d59e-403a-bf5d-bfe7f664baa6  ra-1
    Datacenter: dc-2
    ================
    Status=Up/Down
    |/ State=Normal/Leaving/Joining/Moving
    --  Address      Load       Tokens       Owns (effective)  Host ID                               Rack
    UN  DC2-1IP1   802.08 KiB  1            100.0%            583e0576-336d-4ce7-9729-2ae74e0abde2  ra-1
    UN  DC2-1IP2   844.4 KiB   1            100.0%            fef794d5-f4c2-4a4e-bb05-9adaeb4aea4b  ra-1
    UN  DC2-1IP3   878.12 KiB  1            100.0%            3894b3d9-1f5a-444d-83db-7b1e338bbfc9  ra-1

    पूरे क्लस्टर की मौजूदा स्थिति को समझने के लिए, नोड पर nodetool describecluster को चलाया जा सकता है. उदाहरण के लिए, यहां दो डेटा सेंटर क्लस्टर का एक उदाहरण दिया गया है. इसमें सभी DC-1 नोड, Cassandra के वर्शन 4 पर हैं, जबकि सभी DC-2 नोड, Cassandra के वर्शन 3 पर हैं:

    # On nodes where Cassandra is upgraded
    /opt/apigee/apigee-cassandra/bin/nodetool describecluster
    Cluster Information:
        Name: Apigee
        Snitch: org.apache.cassandra.locator.PropertyFileSnitch
        DynamicEndPointSnitch: enabled
        Partitioner: org.apache.cassandra.dht.RandomPartitioner
        Schema versions:
            2eadcd74-0245-309a-9992-3625afa70038: [DC-1-IP1, DC-1-IP2, DC-1-IP3]
            129dc15e-198e-3c11-b64c-701044a3a1ad: [DC-2-IP1, DC-2-IP2, DC-2-IP3]
    
    Stats for all nodes:
        Live: 6
        Joining: 0
        Moving: 0
        Leaving: 0
        Unreachable: 0
    
    Data Centers:
        dc-1 #Nodes: 3 #Down: 0
        dc-2 #Nodes: 3 #Down: 0
    
    Database versions:
        5.0.8: [DC-1-IP1:7000, DC-1-IP2:7000, DC-1-IP3:7000]
        4.0.13: [DC-2-IP1:7000, DC-2-IP2:7000, DC-2-IP3:7000]
    
    Keyspaces:
        system_schema -> Replication class: LocalStrategy {}
        system -> Replication class: LocalStrategy {}
        auth -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        cache -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        devconnect -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        dek -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        user_settings -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        apprepo -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        kms -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        identityzone -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        audit -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        analytics -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        keyvaluemap -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        counter -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        apimodel_v2 -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        system_distributed -> Replication class: SimpleStrategy {replication_factor=3}
        system_traces -> Replication class: SimpleStrategy {replication_factor=2}
        system_auth -> Replication class: SimpleStrategy {replication_factor=1}
    
    # On nodes where Cassandra is not upgraded
    /opt/apigee/apigee-cassandra/bin/nodetool describecluster
    Cluster Information:
        Name: Apigee
        Snitch: org.apache.cassandra.locator.PropertyFileSnitch
        DynamicEndPointSnitch: enabled
        Partitioner: org.apache.cassandra.dht.RandomPartitioner
        Schema versions:
            2eadcd74-0245-309a-9992-3625afa70038: [DC-1-IP1, DC-1-IP2, DC-1-IP3]
            129dc15e-198e-3c11-b64c-701044a3a1ad: [DC-2-IP1, DC-2-IP2, DC-2-IP3]
            
  2. डेटा सेंटर में सीड नोड की पहचान करना: अपेंडिक्स में मौजूद, सीड नोड की पहचान करने का तरीका सेक्शन देखें. नीचे दिया गया तरीका, किसी एक सीड नोड पर अपनाएं:
  3. Cassandra के नोड से डेटा को रोकें, अनइंस्टॉल करें, और मिटाएं. इस डेटा सेंटर में, Cassandra वर्शन 5 पर पहला सीड नोड चुनें. इसे बंद करो.
    # Stop Cassandra service on the node
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    
    # Uninstall Cassandra software
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    
    # Wipe out Cassandra data
    rm -rf /opt/apigee/data/apigee-cassandra
            
  4. नोड पर Cassandra सॉफ़्टवेयर का पुराना वर्शन इंस्टॉल करें और कुछ कॉन्फ़िगरेशन सेट करें. Edge for Private Cloud 4.53.00/4.53.01 की बूटस्ट्रैप फ़ाइल को एक्ज़ीक्यूट करें.
  5. # Download bootstrap of 4.53.00
    curl https://software.apigee.com/bootstrap_4.53.00.sh -o /tmp/bootstrap_4.53.00.sh -u uName:pWord
    
    # Execute bootstrap of 4.53.00
    sudo bash /tmp/bootstrap_4.53.00.sh apigeeuser=uName apigeepassword=pWord
        
  6. /opt/apigee/customer/application/cassandra.properties फ़ाइल बनाएं या उसमें बदलाव करें.
  7. फ़ाइल में यह कॉन्टेंट जोड़ें. ipOfNode, उस नोड का आईपी पता है जिसका इस्तेमाल Cassandra, अन्य Cassandra नोड के साथ कम्यूनिकेट करने के लिए करता है:
    conf_jvm_options_custom_settings=-Dcassandra.replace_address=ipOfNode -Dcassandra.allow_unsafe_replace=true
  8. पक्का करें कि फ़ाइल का मालिकाना हक Apigee उपयोगकर्ता के पास हो और वह उसे पढ़ सके:
    chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
  9. Cassandra को इंस्टॉल और सेट अप करें:
  10. # Install cassandra version 4.0.X
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra install
    # Setup cassandra while passing standard configuration file
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f configFile
    # Ensure Cassandra version is correct and service is running
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra version
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra status
  11. पुष्टि करें कि नोड शुरू हो गया है. इस नोड और क्लस्टर के अन्य नोड पर, यहां दिया गया कमांड देखें. नोड को यह रिपोर्ट करना चाहिए कि वह "UN" (Up/Normal) स्थिति में है:
    /opt/apigee/apigee-cassandra/bin/nodetool status
  12. फ़ाइल /opt/apigee/customer/application/cassandra.properties से, पहले जोड़े गए अतिरिक्त कॉन्फ़िगरेशन हटाएं.
  13. डेटा सेंटर में मौजूद सभी Cassandra सीड नोड पर, एक-एक करके तीसरे से लेकर दसवें चरण तक की प्रोसेस दोहराएं.
  14. डेटा सेंटर में मौजूद बाकी सभी Cassandra नोड पर, एक-एक करके तीसरे से लेकर दसवें चरण तक की प्रोसेस दोहराएं.
  15. Cassandra के पुराने वर्शन पर चल रहे डेटा सेंटर से, डेटा सेंटर के सभी नोड फिर से बनाएं. इस चरण को एक बार में एक नोड पर लागू करें:
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild -dc <name of working DC>

    इस प्रोसेस में समय लग सकता है. ज़रूरत पड़ने पर, streamingthroughput में बदलाव किया जा सकता है. कार्रवाई पूरी होने की स्थिति जानने के लिए, nodetool netstats देखें.

  16. (ज़रूरी नहीं) अगर डेटा फिर से नहीं बनाया जा रहा है, तो Cassandra नोड में रिपेयर कमांड चलाएं.
    /opt/apigee/apigee-cassandra/bin/nodetool -h node-IP repair -pr
  17. डेटा सेंटर में सभी edge-* कॉम्पोनेंट को एक-एक करके रीस्टार्ट करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  18. इस डेटा सेंटर की पुष्टि करें और ट्रैफ़िक को वापस इस पर डाइवर्ट करें. इस डेटा सेंटर में, रनटाइम ट्रैफ़िक और मैनेजमेंट एपीआई के लिए कुछ पुष्टि करने वाले प्रोग्राम चलाएं. इसके बाद, प्रॉक्सी और मैनेजमेंट एपीआई के ट्रैफ़िक को वापस इस डेटा सेंटर पर रीडायरेक्ट करना शुरू करें.
  19. हर उस डेटा सेंटर के लिए ऊपर दिया गया तरीका दोहराएं जिसे आपको रोल बैक करना है.

बैकअप का इस्तेमाल करके Cassandra को रोल बैक करना

ज़रूरी शर्तें

  1. Cassandra को 4.0.X से 5.0.X पर अपग्रेड करने की प्रोसेस के दौरान, आपको समस्याएं आ रही हैं.
  2. आपके पास उस नोड के बैकअप हों जिसे रोल बैक किया जा रहा है. बैकअप, 4.0.X से 5.0.X पर अपग्रेड करने से पहले लिया गया था.

चरण

  1. वह नोड चुनें जिसे आपको पहले जैसा करना है. अगर आपको बैकअप का इस्तेमाल करके, किसी डेटा सेंटर के सभी नोड को पहले जैसा करना है, तो सबसे पहले सीड नोड को पहले जैसा करें. अपेंडिक्स में मौजूद, सीड नोड की पहचान करने का तरीका सेक्शन देखें.

  2. Cassandra नोड को बंद करें, अनइंस्टॉल करें, और साफ़ करें:

    # Stop Cassandra service on the node
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    
    # Uninstall Cassandra software
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    
    # Wipe Cassandra data
    rm -rf /opt/apigee/data/apigee-cassandra
  3. नोड पर Cassandra का पुराना सॉफ़्टवेयर इंस्टॉल करें और उसे कॉन्फ़िगर करें:

    • Edge for Private Cloud 4.53.00/4.53.01 के लिए, बूटस्ट्रैप फ़ाइल को एक्ज़ीक्यूट करें:
    • # Download bootstrap for 4.53.00
      curl https://software.apigee.com/bootstrap_4.53.00.sh -o /tmp/bootstrap_4.53.00.sh -u uName:pWord
      
      # Execute bootstrap for 4.53.00
      sudo bash /tmp/bootstrap_4.53.00.sh apigeeuser=uName apigeepassword=pWord
    • फ़ाइल बनाएं या उसमें बदलाव करें /opt/apigee/customer/application/cassandra.properties:
    • conf_jvm_options_custom_settings=-Dcassandra.replace_address=ipOfNode -Dcassandra.allow_unsafe_replace=true
    • पक्का करें कि फ़ाइल का मालिकाना हक Apigee उपयोगकर्ता के पास हो और उसे पढ़ा जा सके:
    • chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
    • Cassandra को इंस्टॉल और सेट अप करने के लिए:
    • # Install Cassandra version 4.0.X
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra install
      
      # Set up Cassandra with the standard configuration file
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f configFile
      
      # Verify Cassandra version and check service status
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra version
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra status

    पुष्टि करें कि नोड शुरू हो गया है. इस नोड और क्लस्टर के अन्य नोड पर, यहां दिया गया कमांड देखें. नोड को यह रिपोर्ट करना चाहिए कि यह नोड "UN" स्थिति में है:

    /opt/apigee/apigee-cassandra/bin/nodetool status
  4. Cassandra सेवा को बंद करें और बैकअप को वापस लाएं. ज़्यादा जानकारी के लिए, बैकअप और रीस्टोर करने से जुड़ा दस्तावेज़ देखें:

    # Stop Cassandra service on the node
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    
    # Wipe the data directory in preparation for restore
    rm -rf /opt/apigee/data/apigee-cassandra/data
    
    # Restore the backup taken before the upgrade attempt
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restore backupFile
            
  5. बैकअप वापस लाने के बाद, अतिरिक्त कॉन्फ़िगरेशन हटाएं:

    /opt/apigee/customer/application/cassandra.properties फ़ाइल से, पहले जोड़ा गया कॉन्फ़िगरेशन हटाएं.

  6. नोड पर Cassandra सेवा शुरू करें:

    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra start
  7. बैकअप का इस्तेमाल करके, हर उस Cassandra नोड पर यह तरीका दोहराएं जिसे आपको रोल बैक करना है. एक बार में एक ही नोड को रोल बैक करें.

  8. सभी Cassandra नोड वापस लाने के बाद, सभी edge-* कॉम्पोनेंट को एक-एक करके रीस्टार्ट करें:

    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart

बैकअप लेने की प्रोसेस को ऑप्टिमाइज़ करना (ऐडवांस विकल्प)

अगर आपके पास ऐसे रेप्लिका उपलब्ध हैं जिनमें नया डेटा मौजूद है, तो बैकअप वापस लाते समय डेटा के नुकसान को कम किया जा सकता है. अगर रेप्लिका उपलब्ध हैं, तो बैकअप को वापस लाने के बाद, उस नोड को रिपेयर करें जिसे वापस लाया गया था.

अपेंडिक्स

सीड नोड की पहचान करने का तरीका

डेटा सेंटर में किसी भी Cassandra नोड पर, यह कमांड चलाएं:

/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure -search conf_cassandra_seeds

इस निर्देश से कई लाइनें आउटपुट होंगी. आउटपुट की आखिरी लाइन देखें. आखिरी लाइन में दिए गए आईपी पते, सीड नोड होते हैं. यहां दिए गए उदाहरण में, DC-1-IP1, DC-1-IP2, DC-2-IP1, और DC-2-IP2 सीड नोड के आईपी पते हैं:

Found key conf_cassandra_seeds, with value, "127.0.0.1", in /opt/apigee/apigee-cassandra/token/default.properties

Found key conf_cassandra_seeds, with value, 127.0.0.1, in /opt/apigee/apigee-cassandra/token/application/cassandra.properties

Found key conf_cassandra_seeds, with value, "DC-1-IP1, DC-1-IP2, DC-2-IP1, DC-2-IP2", in /opt/apigee/token/application/cassandra.properties
apigee-configutil: apigee-cassandra: # OK

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

रोलबैक

अगर रोलबैक करना ज़रूरी हो, तो:

  1. सबसे पहले, ऑब्ज़र्वर और फ़ॉलोअर के लिए रोलबैक की प्रोसेस पूरी करें. ऑब्ज़र्वर और फ़ॉलोअर चुनने के लिए, कृपया लीडर, फ़ॉलोअर, और ऑब्ज़र्वर की पहचान करना लेख पढ़ें.
  2. जिस वर्शन पर वापस जाना है उसका बूटस्ट्रैप डाउनलोड करें और उसे लागू करें. यह वर्शन 4.53.00 या 4.53.01 होना चाहिए. यह प्रोसेस इस बात पर निर्भर करती है कि नोड में बाहरी इंटरनेट कनेक्शन है या नहीं. इसके अलावा, यह इस बात पर भी निर्भर करती है कि ऑफ़लाइन इंस्टॉलेशन किया जा रहा है या नहीं.
  3. अगर नोड पर Zookeeper चल रहा है, तो उसे बंद करें:
      /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper stop
  4. मौजूदा zookeeper को अनइंस्टॉल करें:
      /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper uninstall
  5. Zookeeper को हमेशा की तरह इंस्टॉल करें:
      /opt/apigee/apigee-setup/bin/setup.sh -p zk -f <silent-config-file>
  6. सभी फ़ॉलोअर और ऑब्ज़र्वर को रोल बैक करने के बाद, लीडर नोड को रोल बैक करें. इसके लिए, लीडर नोड पर दूसरे से पांचवें चरण तक की प्रोसेस को दोहराएं.
  7. सभी नोड को वापस लाने के बाद, क्लस्टर की स्थिति की पुष्टि करें. साथ ही, यह पक्का करें कि क्लस्टर में एक लीडर नोड मौजूद हो.

बैक अप वापस लाएं

बैकअप से डेटा वापस लाना लेख पढ़ें.

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

किसी पिछली सुविधा रिलीज़ पर रोल बैक करने के लिए, पक्का करें कि आपने उस वर्शन के लिए bootstrap.sh फ़ाइल डाउनलोड की हो जिस पर आपको रोल बैक करना है. वर्शन 4.53.00/4.53.01 पर वापस जाने के लिए, bootstrap_4.53.00.sh डाउनलोड करें.

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

  1. मौजूदा Qpid ब्रोकर को बंद करें:
    apigee-service apigee-qpidd stop
  2. फ़ायरवॉल लागू करके, सभी मैसेज प्रोसेसर से ब्रोकर पोर्ट 5672 पर आने वाले ट्रैफ़िक को ब्लॉक करें. इस फ़ायरवॉल को Qpid नोड इंस्टेंस या किसी अन्य बाहरी फ़ायरवॉल/नेटवर्क कॉम्पोनेंट के लेवल पर लागू किया जा सकता है.

    हमारा सुझाव है कि आप मैसेज प्रोसेसर के सभी आईपी पतों के लिए, यही तरीका अपनाएं. उदाहरण के लिए, IPTables का इस्तेमाल करके, पोर्ट 5672 पर Qpid नोड को मैसेज प्रोसेसर के आईपी पतों से आने वाले अनुरोधों को DROP करने के लिए, इस तरह के निर्देश का इस्तेमाल किया जा सकता है:

    iptables -A INPUT -p tcp --dport 5672 -s MESSAGE_PROCESSOR_IP -j DROP
  3. अगर कोई मौजूदा मैसेज है, तो उसे हटाने के लिए Qpid ब्रोकर को फिर से शुरू करें:
    apigee-service apigee-qpidd start
  4. पक्का करें कि मौजूदा सूची खाली हो. यह देखने के लिए कि आपके पास Qpid का ऐक्सेस है या नहीं, Qpid management portal में लॉग इन करें:
    http://QPID_NODE_IP:8090
  5. यह पुष्टि करने के बाद कि सूची में मौजूद सभी मैसेज प्रोसेस हो गए हैं, Qpid को बंद करें और अनइंस्टॉल करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
  6. Qpid डेटा डायरेक्ट्री मिटाएं:
    rm -r APIGEE_ROOT/data/apigee-qpidd
  7. Qpid ब्रोकर को फिर से इंस्टॉल करें:
    /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
  8. Qpid broker को फिर से इंस्टॉल करने के बाद, फ़ायरवॉल की सेटिंग हटाएं. साथ ही, इन कमांड का इस्तेमाल करके, मौजूदा सेटिंग की सूची बनाएं:
    iptables -F
    iptables -L

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

वर्शन 4.54.00 से वर्शन 4.53.00/4.53.01 पर डाउनग्रेड करने के लिए, आपको Edge कॉम्पोनेंट के साथ-साथ Postgres अपडेट को भी रोल बैक करना होगा.

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

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

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

शुरू करने से पहले

Postgres 18 को 17/14 पर रोलबैक करने से पहले, नए स्टैंडबाय होस्ट और पुराने स्टैंडबाय होस्ट, दोनों पर ये काम करें. इससे apigee-postgresql पर max_locks_per_transaction प्रॉपर्टी अपडेट हो जाएगी:

  1. अगर यह फ़ाइल मौजूद नहीं है, तो /opt/apigee/customer/application/postgresql.properties फ़ाइल बनाएं.
  2. इस फ़ाइल का मालिकाना हक apigee को दें:
    sudo chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
  3. फ़ाइल में यह प्रॉपर्टी जोड़ें:
    conf/postgresql.conf+max_locks_per_transaction=30000
  4. apigee-postgresql को कॉन्फ़िगर करें:
    apigee-service apigee-postgresql configure
  5. apigee-postgresql को रीस्टार्ट करें:
    apigee-service apigee-postgresql restart

अपग्रेड को पहले जैसा करने की पूरी प्रोसेस

  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 old_master_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
      apigee-service edge-analytics 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 फ़ील्ड में 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 कमांड चलाकर, पुराने मास्टर का यूयूआईडी पता पाएं:
    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, Analytics और उपभोक्ता ग्रुप के डिफ़ॉल्ट नाम हैं. masterUUID,standbyUUID उसी क्रम में हैं जिस क्रम में वे ऊपर दिख रहे थे. ऐसा तब हुआ, जब आपने ऊपर मौजूद मौजूदा आंकड़ों और उपभोक्ता ग्रुप की जानकारी देखी. आपको उन्हें standbyUUID,masterUUID के तौर पर बताना पड़ सकता है.

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

  12. ऐनलिटिक्स ग्रुप से पुराने मास्टर और स्टैंडबाय नोड हटाएं:
    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. Analytics ग्रुप की पुष्टि करें:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

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

  15. Edge Management Server को रीस्टार्ट करें:
    /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 मास्टर को बंद करें:

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

Edge के नए यूज़र इंटरफ़ेस (यूआई) को रोल बैक करना

Apigee Edge for Private Cloud 4.54.00 में, Classic UI (edge-ui) की जगह New Edge UI (edge-management-ui) का इस्तेमाल किया गया है. 4.54.00 में यूज़र इंटरफ़ेस (यूआई) कॉम्पोनेंट में बदलाव होने की वजह से, 4.53.00 या 4.53.01 वर्शन पर वापस जाने के लिए, edge-management-ui को अनइंस्टॉल करना होगा. साथ ही, आपको अपनी पिछली यूज़र इंटरफ़ेस (यूआई) प्रोफ़ाइल को फिर से इंस्टॉल करना होगा:

  • क्लासिक यूज़र इंटरफ़ेस (edge-ui): ui प्रोफ़ाइल को फिर से इंस्टॉल करें.
  • नया Edge यूज़र इंटरफ़ेस (edge-ui और edge-management-ui): ui और ue, दोनों प्रोफ़ाइलों को उनके नोड में फिर से इंस्टॉल करें.

किसी नोड पर यूज़र इंटरफ़ेस (यूआई) को रोल बैक करने के लिए:

  1. 4.54.00 New Edge यूआई को बंद और अनइंस्टॉल करें. इसके बाद, पिछले वर्शन पर वापस जाने के लिए, उसे इंस्टॉल करें:
    1. 4.54.00 New Edge यूज़र इंटरफ़ेस (यूआई) को बंद और अनइंस्टॉल करें (edge-management-ui):
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui stop
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui uninstall
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui-static uninstall
    2. Apigee Edge for Private Cloud 4.53.00/4.53.01 के लिए बूटस्ट्रैप फ़ाइल को एक्ज़ीक्यूट करें:
      # Download bootstrap for 4.53.00
      curl https://software.apigee.com/bootstrap_4.53.00.sh -o /tmp/bootstrap_4.53.00.sh -u uName:pWord
      
      # Execute bootstrap for 4.53.00
      sudo bash /tmp/bootstrap_4.53.00.sh apigeeuser=uName apigeepassword=pWord
    3. 4.54.00 से पिछले वर्शन पर apigee-setup रोल बैक करें:
      # Uninstall apigee-setup
      /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
      
      # Install apigee-setup
      /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  2. अपने 4.53.00/4.53.01 वर्शन के यूज़र इंटरफ़ेस (यूआई) के कॉन्फ़िगरेशन वापस लाएं:
    • अगर आपने 4.53.00 या 4.53.01 इंस्टॉलेशन से साइलेंट कॉन्फ़िगरेशन फ़ाइल का बैक अप लिया है, तो रोलबैक की प्रोसेस के लिए उस बैकअप फ़ाइल का इस्तेमाल करें. इसके अलावा, 4.54.00 साइलेंट कॉन्फ़िगरेशन फ़ाइल में, 4.53.00 या 4.53.01 यूज़र इंटरफ़ेस (यूआई) प्रॉपर्टी को वापस लाएं या टिप्पणी के तौर पर मार्क किए गए यूज़र इंटरफ़ेस (यूआई) प्रॉपर्टी को हटाएं. ये वे प्रॉपर्टी हैं जिन्हें अपग्रेड के दौरान हटाया गया था या टिप्पणी के तौर पर मार्क किया गया था. रेफ़रंस के लिए, यूज़र इंटरफ़ेस (यूआई) अपग्रेड सेक्शन देखें.
    • अगर अपग्रेड के दौरान /opt/apigee/customer/application/ui.properties को मिटा दिया गया था, तो उसे बैकअप डायरेक्ट्री से वापस लाएं:
      cp -rf /opt/apigee/backup/ui/customer/application/ui.properties /opt/apigee/customer/application/
      chown apigee:apigee /opt/apigee/customer/application/ui.properties
  3. यूज़र इंटरफ़ेस (यूआई) के पिछले वर्शन को फिर से इंस्टॉल और कॉन्फ़िगर करें:
    • क्लासिक यूज़र इंटरफ़ेस (edge-ui) पर वापस जाएं:
      1. क्लासिक यूज़र इंटरफ़ेस (यूआई) इंस्टॉल और सेट अप करें (बेसिक ऑथ के लिए, कोई अतिरिक्त कार्रवाई करने की ज़रूरत नहीं है):
        /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
      2. अगर एसएसओ की सुविधा चालू है, तो क्लासिक यूज़र इंटरफ़ेस (यूआई) पर एसएसओ को कॉन्फ़िगर करें. इसके लिए, पक्का करें कि apigee-sso पहले से चल रहा हो:
        /opt/apigee/apigee-service/bin/apigee-service edge-ui configure-sso -f configFile
    • 4.53.00 या 4.53.01 न्यू एज यूज़र इंटरफ़ेस (यूआई) पर वापस जाएं (edge-management-ui और Shoehorn edge-ui):
      1. पक्का करें कि साइलेंट कॉन्फ़िगरेशन फ़ाइल में EDGEUI_ENABLE_UNIFIED_UI=y सेट हो. इसके बाद, ui और ue प्रोफ़ाइलें इंस्टॉल और सेट अप करें:
        /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
        /opt/apigee/apigee-setup/bin/setup.sh -p ue -f configFile
      2. अगर एसएसओ की सुविधा चालू है, तो दोनों यूज़र इंटरफ़ेस (यूआई) कॉम्पोनेंट पर एसएसओ को कॉन्फ़िगर करें (पक्का करें कि apigee-sso पहले से चल रहा हो):
        /opt/apigee/apigee-service/bin/apigee-service edge-ui configure-sso -f configFile
        /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-sso -f configFile
  4. रोलबैक किए गए यूज़र इंटरफ़ेस (यूआई) के स्टेटस और वर्शन की पुष्टि करें:
    • क्लासिक यूज़र इंटरफ़ेस (edge-ui) के लिए:
      /opt/apigee/apigee-service/bin/apigee-service edge-ui status
      /opt/apigee/apigee-service/bin/apigee-service edge-ui version
    • Edge के नए यूज़र इंटरफ़ेस (edge-management-ui) के लिए:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui status
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui version

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

इस सेक्शन में, Edge for Private Cloud 4.54.00 में Symas OpenLDAP 2.6.10 को OpenLDAP 2.4.46 (Edge for Private Cloud 4.53.00) या Symas OpenLDAP 2.6.7 (Edge for Private Cloud 4.53.01) पर वापस लाने के बारे में सिलसिलेवार निर्देश दिए गए हैं. आपको अपग्रेड करने से पहले के मान्य एलडीएपी बैकअप का इस्तेमाल करके, पूरे एलडीएपी क्लस्टर पर रोलबैक करना होगा.

इसका मुख्य मकसद, पूरे एलडीएपी क्लस्टर को किसी अच्छे बैकअप से पहले जैसी स्थिति में वापस लाना है. यह तरीका सभी स्थितियों में एक जैसा होता है: सिंगल-सर्वर, ऐक्टिव-ऐक्टिव, और ऐक्टिव-पैसिव.

शुरू करने से पहले

  • बैकअप के साथ काम न करना: अपग्रेड करने से पहले, OpenLDAP 2.4.46 (Edge for Private Cloud 4.53.00) या Symas OpenLDAP 2.6.7 (Edge for Private Cloud 4.53.01) का बैकअप इस्तेमाल करें. यह बैकअप, अपग्रेड करने से पहले apigee-service apigee-openldap backup का इस्तेमाल करके लिया गया हो. अपग्रेड करने के बाद लिए गए बैकअप, पुराने वर्शन के साथ काम नहीं करते और उनका इस्तेमाल नहीं किया जा सकता.
  • Management API के काम न करने की अवधि: एलडीएपी को वापस लाने के दौरान, मैनेजमेंट एपीआई उपलब्ध नहीं होंगे. इससे एडमिन के कामों पर असर पड़ सकता है. एलडीएपी रोलबैक की प्रोसेस शुरू करने से पहले, edge-management-server और edge-ui के सभी इंस्टेंस बंद करें.
  • डेटा खोने का जोखिम: मान्य और काम करने वाले बैकअप के बिना आगे बढ़ने पर, डेटा हमेशा के लिए खो सकता है.
  • मान्य बैकअप: अपग्रेड करने से पहले, एलडीएपी का मान्य बैकअप लेना ज़रूरी है.
  • silent.conf फ़ाइलों का बैकअप: अपग्रेड और रोलबैक की प्रोसेस के दौरान कॉन्फ़िगरेशन में गड़बड़ी से बचने के लिए, अपनी silent.conf फ़ाइलों के पिछले और मौजूदा, दोनों वर्शन का बैकअप रखें.
  • रोलबैक का क्रम: OpenLDAP को रोलबैक करने से पहले, Cassandra, ZooKeeper, Qpid, PostgreSQL, apigee-sso, और Edge यूज़र इंटरफ़ेस (यूआई) के लिए रोलबैक की प्रोसेस पूरी करें.

रोलबैक करने की प्रोसेस

  1. मैनेजमेंट सर्वर और यूज़र इंटरफ़ेस बंद करें: एलडीएपी को पहले जैसा करने से पहले, सभी edge-management-server और edge-ui इंस्टेंस बंद करें:
    apigee-service edge-management-server stop
    apigee-service edge-ui stop
  2. एलडीएपी एंट्री की मौजूदा संख्या रिकॉर्ड करें (एलडीएपी को बंद करने से पहले): सभी एलडीएपी सर्वर से रेफ़रंस के लिए, रिकॉर्ड की कुल संख्या पाएं. इसके लिए, YOUR_PASSWORD को अपने मौजूदा एलडीएपी मैनेजर पासवर्ड से बदलें. (रिकॉर्ड की संख्या सभी एलडीएपी सर्वर में एक जैसी होनी चाहिए.)
    # Note: Replace 'YOUR_PASSWORD' with your current LDAP manager password.
    ldapsearch -o ldif-wrap=no -b "dc=apigee,dc=com" -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w 'YOUR_PASSWORD' | wc -l
  3. नए LDAP 2.6 को बंद और अनइंस्टॉल करें: apigee-openldap सेवा को बंद करें. साथ ही, इसके कॉन्फ़िगरेशन और डेटा डायरेक्ट्री मिटाएं. सभी LDAP सर्वर पर यह चरण पूरा करें. इसके लिए, क्लस्टर में एक बार में एक नोड पर यह चरण पूरा करें, ताकि एक जैसा डेटा बना रहे:
    apigee-service apigee-openldap stop
    apigee-service apigee-openldap uninstall
    rm -rf /opt/apigee/data/apigee-openldap/*
  4. एलडीएपी का पिछला वर्शन 2.4.46 या 2.6.7 इंस्टॉल करें:
    • एलडीएपी का पुराना वर्शन इंस्टॉल करना:
      /opt/apigee/apigee-setup/bin/setup.sh -p ld -f /opt/silent.conf
    • एलडीएपी वर्शन की पुष्टि करना:
      source ~/.bash_profile
      ldapsearch -VV
      
      # Expected output if rolled back to 4.53.00:
      ldapsearch: @(#) $OpenLDAP: ldapsearch 2.4.46
      
      # Expected output if rolled back to 4.53.01:
      ldapsearch: @(#) $OpenLDAP: ldapsearch 2.6.7
    • हर एलडीएपी नोड पर, चौथे चरण में बताए गए सब-स्टेप को एक-एक करके दोहराएं.
  5. बचा हुआ डेटा मिटाना: सभी एलडीएपी सर्वर पर, एक-एक करके, नई इंस्टॉल की गई सेवा को बंद करें और उसकी डेटा डायरेक्ट्री को मिटाएं, ताकि बैकअप से डेटा वापस लाया जा सके:
    apigee-service apigee-openldap stop
    rm -rf /opt/apigee/data/apigee-openldap/*
  6. एलडीएपी डेटा वापस पाना: सिंगल-सर्वर सेटअप के लिए, सीधे छठे चरण पर जाएं. एक से ज़्यादा सर्वर सेटअप करने के लिए, छठे चरण पर जाएं.
    1. ऐक्टिव LDAP सर्वर की पहचान करना: LDAP डेटा को वापस लाने से पहले, ऐक्टिव सर्वर (सेवा देने वाली कंपनी) की पहचान करें. इसके लिए, यह कमांड चलाएं:
      grep -i '^olcSyncrepl:' /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase*.ldif
    2. LDAP डेटा वापस लाएं (डेटा वापस लाने से पहले, पक्का करें कि सभी सर्वर पर पांचवां चरण पूरा हो गया हो):
      • एक या चालू एलडीएपी सर्वर (छठे चरण में तय किया गया) पर, बैकअप डायरेक्ट्री पर जाएं और अपग्रेड से पहले लिए गए बैकअप को वापस लाएं. उदाहरण के लिए, 2025.07.28,13.59.00 या अगर अपग्रेड से पहले लिया गया बैकअप, डायरेक्ट्री में मौजूद सबसे नया बैकअप है, तो टाइमस्टैंप को छोड़ दें:
        cd /opt/apigee/backup/openldap
        
        # To restore a specific backup, provide the timestamp as shown below:
        apigee-service apigee-openldap restore 2025.07.28,13.59.00
        
        # Note: If no timestamp is provided, the latest available backup will be restored by default:
        apigee-service apigee-openldap restore
        
        # It is recommended to specify the backup explicitly to avoid restoring an unintended version.
      • apigee-openldap सेवा चालू करें:
        apigee-service apigee-openldap start
  7. बाकी एलडीएपी सर्वर चालू करें: अगर आपके पास मल्टी-सर्वर सेटअप है, तो बाकी सभी एलडीएपी सर्वर पर सेवा चालू करें:
    apigee-service apigee-openldap start
  8. आखिरी पुष्टि:
    • पुष्टि करें कि रोलबैक पूरा हो गया है और पूरे एलडीएपी क्लस्टर में डेटा एक जैसा है.
    • सभी LDAP सर्वर पर पुष्टि करने की कमांड चलाएं. साथ ही, YOUR_PASSWORD को अपने मौजूदा LDAP मैनेजर के पासवर्ड से बदलें. सभी सर्वर पर रिकॉर्ड की संख्या एक जैसी होनी चाहिए. साथ ही, यह संख्या दूसरे चरण में कैप्चर की गई संख्या से मेल खानी चाहिए:
      # Note: Replace 'YOUR_PASSWORD' with your current LDAP manager password.
      ldapsearch -o ldif-wrap=no -b "dc=apigee,dc=com" -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w 'YOUR_PASSWORD' | wc -l
    • डेटा के सही और एक जैसा होने की पुष्टि करने के बाद, अपने संगठन की स्टैंडर्ड प्रोसेस के मुताबिक edge-management-server, edge-ui, और अन्य डिपेंडेंट कॉम्पोनेंट शुरू करें.

Edge Components को रोल बैक करना

कॉमन कोड वाले कॉम्पोनेंट

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

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

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

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

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

    • 4.53.00/4.53.01 पर वापस जाने के लिए, bootstrap_4.53.00.sh/bootstrap_4.53.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 और apigee-cassandra-client कॉम्पोनेंट ग्रुप को अनइंस्टॉल करें. इसका उदाहरण यहां दिया गया है:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra-client uninstall
    2. Nginx को रोल बैक करने के लिए:
      ### Find the apigee-nginx RPM
      rpm -qa | grep -i "apigee-nginx"
      
      ### Remove the apigee-nginx RPM
      dnf remove apigee-nginx-1.30.x
      
    3. नोड पर मौजूद किसी अन्य कॉम्पोनेंट को पहले जैसा करने के लिए, सिर्फ़ उस कॉम्पोनेंट को अनइंस्टॉल करें. यहां दिए गए उदाहरण में ऐसा करने का तरीका बताया गया है:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

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

    4. Edge राऊटर को रोल बैक करने के लिए, आपको edge-gateway कॉम्पोनेंट ग्रुप को अनइंस्टॉल करने के साथ-साथ, /opt/nginx/conf.d फ़ाइल का कॉन्टेंट भी मिटाना होगा:
      cd /opt/nginx/conf.d
      rm -rf *
  5. apigee-setup का 4.54.00 वर्शन अनइंस्टॉल करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. apigee-service यूटिलिटी का 4.53.00 वर्शन और इसकी डिपेंडेंसी इंस्टॉल करें. यहां दिए गए उदाहरण में, apigee-service का 4.53.00 वर्शन इंस्टॉल करने का तरीका बताया गया है:
    sudo bash /tmp/bootstrap_4.53.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. Apigee को बंद करना:
    apigee-all stop
  2. एमटीएलएस बंद करें:
    apigee-service apigee-mtls uninstall
  3. mTLS को फिर से इंस्टॉल करें:
    apigee-service apigee-mtls install
    apigee-service apigee-mtls setup -f /opt/silent.conf