Apigee सर्वर को एक जगह से दूसरी जगह ले जाना

कॉम्पोनेंट को एक मशीन से दूसरी मशीन पर ले जाने पर, कॉन्फ़िगरेशन का मेल न खाने की समस्या आ सकती है. ऐसा तब होता है, जब कॉम्पोनेंट कॉन्फ़िगरेशन फ़ाइलों में मौजूद आईपी पतों को सिंक नहीं रखा जाता.

इस सेक्शन में, कॉन्फ़िगरेशन के मेल न खाने की समस्या का पता लगाने और उसे ठीक करने का तरीका बताया गया है.

आईपी पते बनाम होस्ट नेम

आपको अपनी कॉम्पोनेंट कॉन्फ़िगरेशन फ़ाइलों में होस्ट नामों के बजाय आईपी पतों का इस्तेमाल करना चाहिए.

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

यही वजह है कि Apigee, सभी कॉम्पोनेंट के लिए आईपी पतों का इस्तेमाल करने का सुझाव देता है कॉन्फ़िगरेशन. कुछ मामलों में, जैसे कि Cassandra के साथ, आपको IP पतों का उपयोग करना होगा और आप होस्ट के नाम. दस्तावेज़ में दिए गए ज़्यादातर उदाहरणों में, कॉम्पोनेंट कॉन्फ़िगरेशन के लिए आईपी पतों का इस्तेमाल किया जाता है.

होस्ट के नामों और आईपी पतों के लिए, इन स्थितियों में लागू होने वाले नतीजों पर ध्यान दें Apigee सर्वर को मूव करते समय:

स्थिति एक जगह से दूसरी जगह पर ले जाने वाले सर्वर पर असर
आईपी पते में बदलाव वे सभी फ़ाइलें अपडेट करें जिनमें ओरिजनल आईपी पते का रेफ़रंस दिया गया हो
आईपी पते में बदलाव के बिना होस्टनेम में बदलाव कोई असर नहीं पड़ा
आईपी पते में बदलाव के साथ होस्टनेम में बदलाव आईपी पते में बदलाव के समान

Cassandra नोड का आईपी पता बदलना

किसी कैसंड्रा नोड का आईपी पता बदलने के लिए, नीचे दिया गया तरीका अपनाएं:

इसके लिए एकल कैसंड्रा नोड के साथ कॉन्फ़िगरेशन

  1. /opt/apigee/customer/application/cassandra.properties में बदलाव करें बदलाव किए जा रहे हैं. अगर फ़ाइल मौजूद नहीं है, तो उसे बनाएं.
  2. इन पैरामीटर में बदलाव करें:
    • conf_cassandra_seeds और conf_cassandra_listen_address सेट करें पैरामीटर का इस्तेमाल करें.
    • इस्तेमाल करने के लिए conf_cassandra_rpc_address को बदलें या तो नया IP पता या 0.0.0.0 (जो Cassandra Thrift को सभी पर सुनने देता है इंटरफ़ेस).
  3. /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties खोलें एक एडिटर में. आपको फ़ॉर्म में पुराना आईपी पता और डिफ़ॉल्ट सेटिंग दिखेगी:
    192.168.56.101=dc-1:ra-1
    default=dc-1:ra-1

    वह जानकारी सेव करें.

  4. /opt/apigee/customer/application/cassandra.properties में बदलाव करें पुराने IP पते को नए IP पते में बदलने के लिए:
    conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n

    पक्का करें कि आपने "\n" डाला हो डालें और वही डिफ़ॉल्ट सेटिंग दर्ज करें जो जो ऊपर चरण 3 में मिले हैं.

  5. Cassandra को रीस्टार्ट करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. अगर ज़रूरी हो, तो ZooKeeper (नीचे देखें) को भी ठीक करें. अगर ऐसा नहीं है, तो हर Apigee प्लैटफ़ॉर्म को रीस्टार्ट करें जो मैनेजमेंट सर्वर से शुरू होता है.

एक से ज़्यादा Cassandra नोड (रिंग) वाले कॉन्फ़िगरेशन के लिए

  1. अगर बदला जा रहा नोड एक सीड नोड है, तो /opt/apigee/customer/application/cassandra.properties में बदलाव करें फ़ाइल डाउनलोड करें और conf_cassandra_seeds पैरामीटर को शामिल करके शामिल करने के लिए संशोधित सिस्टम का नया IP. अगर cassandra.properties फ़ाइल मौजूद नहीं है, तो उसे बनाएं.
  2. जिस सिस्टम में बदलाव करना है उसमें /opt/apigee/customer/application/cassandra.properties में बदलाव करें. साथ ही, इन पैरामीटर में बदलाव करें:
    • नया आईपी पता इस्तेमाल करने के लिए, conf_cassandra_listen_address सेट करें.
    • नए आईपी पते या "0.0.0.0" का इस्तेमाल करने के लिए conf_cassandra_rpc_address को सेट करें (इससे Cassandra Thrift को सभी इंटरफ़ेस पर सुनने की अनुमति मिलती है).
  3. /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties खोलें एक एडिटर में. आपको फ़ॉर्म:
    192.168.56.101=dc-1:ra-1
    192.168.56.102=dc-1:ra-1
    192.168.56.103=dc-1:ra-1
    default=dc-1:ra-1

    वह जानकारी सेव करें.

  4. /opt/apigee/customer/application/cassandra.properties में बदलाव करें पुराने IP पते को नए IP पते में बदलने के लिए:
    conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n

    पक्का करें कि आपने "\n" डाला हो डालें और उसी डिफ़ॉल्ट सेटिंग का उपयोग करें, जिसका उपयोग आप ऊपर चरण 3 में रिकॉर्ड किया गया है.

  5. बदले गए सिस्टम पर कैसेंड्रा को रीस्टार्ट करें. अगर बदला गया सिस्टम एक सीड नोड है, तो उस सिस्टम को रीस्टार्ट करें जिसमें बदले गए सीड नोड का इस्तेमाल किया गया है.
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. बदले गए नोड पर nodetool ring कमांड चलाएं, ताकि यह पक्का किया जा सके कि रिंग पूरा हुआ. उपयोगिता यहां मिल सकती है /opt/apigee/apigee-cassandra/bin.
    nodetool [-u username -pw password] -h localhost ring

    आपको अपना उपयोगकर्ता नाम और पासवर्ड सिर्फ़ तब भेजना होगा, जब कैसंड्रा के लिए JMX की पुष्टि करने की सुविधा चालू है.

  7. nodetool repair को इस पर चलाएं संशोधित नोड. ध्यान दें कि इस प्रोसेस में कुछ समय लग सकता है. इसलिए, हमारा सुझाव है कि आप इस प्रोसेस को बेहतर बनाएं जब एपीआई ट्रैफ़िक की सबसे ज़्यादा व्यस्त अवधि के दौरान ऐसा न होता हो.
    nodetool [-u username -pw password] -h localhost repair -pr
  8. अगर ज़रूरी हो, तो ZooKeeper (नीचे देखें) ठीक करें. इसके बाद, Apigee प्लैटफ़ॉर्म के हर कॉम्पोनेंट को रीस्टार्ट करें, पहली बार मौजूद होता है.

डेटास्टोर अपडेट करें रजिस्ट्रेशन

  1. पुराने आईपी पते का इस्तेमाल करके, डेटास्टोर रजिस्ट्रेशन के यूयूआईडी ढूंढने के लिए इनका इस्तेमाल करें: दिए गए निर्देशों का पालन करें. "टाइप" पर ध्यान दें और "यूयूआईडी" पैरामीटर:
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics&region=DC" | egrep -i '[type|internalip|uuid|region]'

      जहां DC, डेटा सेंटर का नाम है. किसी एक डेटा सेंटर की इंस्टॉलेशन में, वैल्यू आम तौर पर "dc-1" होती है.

  2. नीचे दिए गए निर्देशों में से किसी एक का इस्तेमाल करके, नए आईपी पतों को रजिस्टर करें. इस निर्देश की मदद से, बदले गए नोड के प्रकार पर निर्भर करते हैं.
    • type="application-datastore" के लिए:
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP&region=REGION&pod=central" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST
    • type="kms-datastore" के लिए:
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \
        &InternalIP=NEWIP&region=REGION&pod=GATEWAY_POD" -H 'content-type: \
        application/x-www-form-urlencoded' -X POST
    • type="reportcrud-datastore" के लिए:
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \
        "Type=reportcrud-datastore&InternalIP=NEW_IP&region=REGION&pod=analytics" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST 
  3. जिस सिस्टम पर आईपी पता मौजूद था उसके यूयूआईडी के पुराने रजिस्ट्रेशन मिटाएं बदल दिया गया है. इनमें से हर यूयूआईडी समस्या के लिए:
    curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE

ZooKeeper नोड का आईपी पता बदलना

ZooKeeper नोड का आईपी पता बदलने के लिए, यह तरीका अपनाएं:

आईपी पता बदलें और ZooKeeper एन्सेम्बल को रीस्टार्ट करें (मल्टी-नोड ऐसंबल कॉन्फ़िगरेशन के लिए सिर्फ़)

  1. /opt/apigee/apigee-zookeeper/conf/zoo.cfg को एडिटर में खोलें. आपको इस फ़ॉर्मैट में, ZooKeeper के सभी आईपी पते और डिफ़ॉल्ट सेटिंग दिखेंगी:
    server.1=192.168.56.101:2888:3888
    server.2=192.168.56.102:2888:3888
    server.3=192.168.56.103:2888:3888

    वह जानकारी सेव करें.

  2. हर ZooKeeper नोड पर, conf_zoo_quorum प्रॉपर्टी को सही आईपी पतों पर सेट करने के लिए, /opt/apigee/customer/application/zookeeper.properties फ़ाइल में बदलाव करें. अगर फ़ाइल मौजूद नहीं है, तो उसे बनाएं.
    conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n

    पक्का करें कि आपने "\n" डाला हो और वह प्रविष्टियाँ एक ही क्रम में हर नोड के लिए मौजूद है.

  3. नीचे दिए गए निर्देश का इस्तेमाल करके, ZooKeeper ग्रुप के लीडर को खोजें (यह ज़ूकीपर मशीन के आईपी पते के साथ node):
    echo srvr | nc node 2181

    आउटपुट में मोड लाइन में "लीडर" दिखना चाहिए.

  4. एक जिसका आईपी पता बदला गया था. अगर एक से ज़्यादा ज़ूकीपर नोड ने आईपी पते बदले हैं, तो यह सभी नोड को रीस्टार्ट करने के लिए ज़रूरी होगा.
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
  5. हर ZooKeeper नोड की पुष्टि करने के लिए, ऊपर बताए गए echo कमांड का इस्तेमाल करें.

बदले गए कॉन्फ़िगरेशन के लिए, Apigee नोड को सूचना दें

  1. हर राऊटर नोड पर, /opt/apigee/customer/application/router.properties फ़ाइल में बदलाव करें के बारे में यहां बताया गया है. अगर फ़ाइल मौजूद नहीं है, तो उसे बनाएं.
    • नए आईपी को शामिल करने के लिए, conf_zookeeper_connection.string पैरामीटर बदलें इस्तेमाल करें
    • नए आईपी को शामिल करने के लिए, conf_zookeeper_zk1.host पैरामीटर बदलें इस्तेमाल करें
  2. हर मैसेज प्रोसेसर नोड पर, /opt/apigee/customer/application/message-processor.properties फ़ाइल में बदलाव करें के बारे में यहां बताया गया है. अगर फ़ाइल मौजूद नहीं है, तो उसे बनाएं.
    • नए पैरामीटर को शामिल करने के लिए, conf_zookeeper_connection.string पैरामीटर बदलें आईपी पता
    • नए आईपी को शामिल करने के लिए, conf_zookeeper_zk1.host पैरामीटर बदलें इस्तेमाल करें
  3. मैनेजमेंट सर्वर नोड पर, /opt/apigee/customer/application/management-server.properties फ़ाइल में बदलाव करें के बारे में यहां बताया गया है. अगर फ़ाइल मौजूद नहीं है, तो उसे बनाएं.
    • नए पैरामीटर को शामिल करने के लिए, conf_zookeeper_connection.string पैरामीटर बदलें आईपी पता
    • नए आईपी को शामिल करने के लिए, conf_zookeeper_zk1.host पैरामीटर बदलें इस्तेमाल करें
  4. हर नोड पर इस कमांड को चलाकर, सभी Apigee प्लैटफ़ॉर्म कॉम्पोनेंट को रीस्टार्ट करें:
    /opt/apigee/apigee-service/bin/apigee-all restart

एलडीपी सर्वर (OpenLDAP) का आईपी पता बदलना

किसी OpenLDAP नोड का आईपी पता बदलने के लिए, यह तरीका अपनाएं:

  1. मैनेजमेंट सर्वर नोड पर, /opt/apigee/customer/application/management-server.properties फ़ाइल में बदलाव करें फ़ाइल से लिए जाते हैं. अगर फ़ाइल मौजूद नहीं है, तो उसे बनाएं.
  2. management-server.properties फ़ाइल में, conf_security_ldap.server.host पैरामीटर को नए आईपी पते पर सेट करें.
  3. मैनेजमेंट सर्वर को रीस्टार्ट करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

अन्य Apigee नोड का आईपी पता बदलना प्रकार

इनमें से किसी भी तरह के नोड (Router, मैसेज प्रोसेसर, Postgres) का आईपी पता बदलने के लिए सर्वर (postgresql नहीं है) और Qpid सर्वर (qpidd नहीं):

  1. नया इंटरनल और एक्सटर्नल आईपी पता रजिस्टर करने के लिए, यहां दिए गए curl कमांड का इस्तेमाल करें:
    curl -u ADMINEMAIL:PW -X PUT \
      http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
    curl -u ADMINEMAIL:PW -X PUT \
      http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip

    जहां uuid, नोड का यूयूआईडी होता है.

कॉम्पोनेंट का यूयूआईडी पाने का तरीका जानने के लिए, यूयूआईडी पाना लेख पढ़ें.