Developers Services पोर्टल को अपग्रेड करना

Developer Services Portal v. 4.17.09

इस प्रोसेस में, Apigee Developer Channel Services के मौजूदा ऑन-प्राइमिस इंस्टॉलेशन को अपग्रेड करने का तरीका बताया गया है.

अपडेट करने का सही तरीका तय करना

पोर्टल को अपडेट करने के लिए इस्तेमाल की जाने वाली प्रोसेस, आपके मौजूदा इंस्टॉलेशन पर आधारित होती है:

इंस्टॉलेशन के मौजूदा टाइप का पता लगाना

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

  • ls /opt

    अगर Nginx/Postgres का इस्तेमाल किया जा रहा है, तो आपको ये डायरेक्ट्री दिखेंगी: /opt/apigee और /opt/nginx.

    अगर Apache/MySQL या Apache/MariaDB का इस्तेमाल किया जा रहा है, तो ये डायरेक्ट्री मौजूद नहीं होनी चाहिए.

  • /opt/apigee/apigee-service/bin/apigee-all status

    अगर Nginx/Postgres का इस्तेमाल किया जा रहा है, तो आपको यह आउटपुट दिखेगा:

    + apigee-service
      apigee-drupal-devportal status
      OK: apigee-drupal-devportal is up and running
      + apigee-service apigee-lb status
      apigee-service: apigee-lb: OK
      + apigee-service apigee-postgresql status
      apigee-service: apigee-postgresql: OK
  • apachectl -S

    अगर Apache/MySQL या Apache/MariaDB का इस्तेमाल किया जा रहा है, तो इस निर्देश से पोर्टल की वेब रूट डायरेक्ट्री इस फ़ॉर्मैट में दिखनी चाहिए:

    *:80
      192.168.56.102
      (/etc/httpd/conf/vhosts/devportal.conf:1)

इंस्टॉलेशन की डिफ़ॉल्ट डायरेक्ट्री

अपग्रेड की प्रोसेस के दौरान यह माना जाता है कि डेवलपर पोर्टल को यहां इंस्टॉल किया गया था:

  • 4.17.05 और इसके बाद के वर्शन: /opt/apigee/apigee-drupal/wwwroot
  • 4.17.05 से पहले: /opt/apigee/apigee-drupal (Nginx) या /var/www/html (Apache)

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

अपग्रेड किए जा सकने वाले वर्शन

अपग्रेड करने की यह प्रोसेस, पोर्टल के इन वर्शन के लिए काम करती है:

  • OPDK-17-01.x
  • OPDK-17-05.x

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

http://your_portal.com/buildInfo

अपडेट करने से पहले

अगर आपने Drupal कोर या किसी नॉन-कस्टम मॉड्यूल में कोई कोड बदला है, तो आपके बदलावों को ओवरराइट कर दिया जाएगा. इसमें, .htaccess में किए गए बदलावों के साथ-साथ अन्य चीज़ें भी शामिल हैं. आपको यह मान लेना चाहिए कि /sites डायरेक्ट्री के बाहर मौजूद हर चीज़ का मालिकाना हक Drupal के पास है. इस नियम का एक अपवाद robots.txt है. अगर यह फ़ाइल वेब रूट में मौजूद है, तो इसे आपके लिए सुरक्षित रखा जाएगा.

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

आरपीएम का इस्तेमाल करके पोर्टल को अपग्रेड करना

किसी नोड पर पोर्टल आरपीएम को अपडेट करने के लिए, यह तरीका अपनाएं:

  1. Drupal डायरेक्ट्री पर जाएं. उदाहरण के लिए, /opt/apigee/apigee-drupal/wwwroot.

    cd /opt/apigee/apigee-drupal/wwwroot

    अपने प्रॉडक्ट वर्शन की डिफ़ॉल्ट डायरेक्ट्री के लिए, डिफ़ॉल्ट इंस्टॉलेशन डायरेक्ट्री देखें.

  2. अपने Drupal डेटाबेस इंस्टेंस का बैकअप लें. pg_dump कमांड, डेटाबेस की एक कॉपी बनाता है:
    pg_dump --dbname=devportal --host=192.168.56.101
      --username=drupaladmin --password --format=c > /tmp/portal.dmp

    कहां:

    • dbname, डेटाबेस का नाम बताता है. यह नाम, पोर्टल इंस्टॉलेशन कॉन्फ़िगरेशन फ़ाइल में PG_NAME प्रॉपर्टी के हिसाब से तय किया जाता है.
    • host, पोर्टल नोड का आईपी पता बताता है.
    • username, Postgres के उस उपयोगकर्ता नाम के बारे में बताता है जिसका इस्तेमाल पोर्टल, डेटाबेस को ऐक्सेस करने के लिए करता है. इस डेटाबेस के बारे में, पोर्टल की इंस्टॉलेशन कॉन्फ़िगरेशन फ़ाइल में DRUPAL_PG_USER प्रॉपर्टी से बताया जाता है.
    • आपसे Postgres उपयोगकर्ता का पासवर्ड मांगा जाता है. यह पासवर्ड, पोर्टल इंस्टॉलेशन कॉन्फ़िगरेशन फ़ाइल में DRUPAL_PG_PASS प्रॉपर्टी के हिसाब से तय किया जाता है.

    अगर आपको बाद में बैकअप से डेटा वापस लाना है, तो इस निर्देश का इस्तेमाल करें:

    pg_restore --clean --dbname=devportal --host=localhost  --username=apigee < /tmp/portal.dmp
  3. अपनी पूरी Drupal वेब रूट डायरेक्ट्री का बैकअप लें. इंस्टॉल करने की डिफ़ॉल्ट जगह /opt/apigee/apigee-drupal है, लेकिन हो सकता है कि आपने इसे बदल दिया हो.
    अगर आपको इस डायरेक्ट्री की जगह की जानकारी नहीं है, तो drush status कमांड या Drupal मेन्यू में कॉन्फ़िगरेशन > मीडिया > फ़ाइल एंट्री का इस्तेमाल करें. इससे आपको सार्वजनिक फ़ाइल सिस्टम और निजी फ़ाइल सिस्टम पाथ की जगह की जानकारी मिलेगी. यह जानकारी अगले चरण के लिए ज़रूरी है.
  4. /opt/apigee/data/apigee-drupal-devportal/private में मौजूद फ़ाइलों का बैकअप लें.
  5. Drupal को मेंटेनेंस मोड पर सेट करें:
    1. Drupal मेन्यू में, Configuration को चुनें.
    2. कॉन्फ़िगरेशन पेज पर, डेवलपमेंट में जाकर, मेंटेनेंस मोड को चुनें.
    3. Put site into maintenance mode बॉक्स को चुनें.
    4. वह मैसेज डालें जो उपयोगकर्ताओं को रखरखाव के दौरान दिखता है.
    5. कॉन्फ़िगरेशन सेव करें को चुनें.
  6. Edge apigee-setup यूटिलिटी इंस्टॉल करें में बताए गए तरीके से, SELinux को बंद करें.
  7. /opt डायरेक्ट्री में जाएं:
    cd /opt
  8. इंटरनेट कनेक्शन वाले सर्वर पर अपग्रेड करने के लिए:
    1. Edge 4.17.09 bootstrap_4.17.09.sh फ़ाइल को /tmp/bootstrap_4.17.09.sh में डाउनलोड करें:
      curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
    2. Edge 4.17.09 apigee-service यूटिलिटी और डिपेंडेंसी इंस्टॉल करें:
      sudo bash /tmp/bootstrap_4.17.09.sh apigeeuser=uName
        apigeepassword=pWord

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

      डिफ़ॉल्ट रूप से, इंस्टॉलर यह जांच करता है कि आपके पास Java 1.8 इंस्टॉल है या नहीं. Java इंस्टॉल किए बिना जारी रखने के लिए, "C" विकल्प का इस्तेमाल किया जा सकता है.

  9. बिना इंटरनेट कनेक्शन वाले सर्वर पर अपग्रेड करने के लिए:
    1. "Create a local Apigee repository" में बताए गए तरीके से, एक लोकल 4.17.09 रिपॉज़िटरी बनाएं. इसके लिए, Install the Edge apigee-setup utility पर जाएं.
    2. .tar फ़ाइल से apigee-service इंस्टॉल करने के लिए:
      1. लोकल डेटाबेस वाले नोड पर, लोकल डेटाबेस को /opt/apigee/data/apigee-mirror/apigee-4.17.09.tar.gz नाम वाली एक .tar फ़ाइल में पैकेज करने के लिए, इस कमांड का इस्तेमाल करें:
        /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
      2. .tar फ़ाइल को उस नोड पर कॉपी करें जहां आपको Edge को अपडेट करना है. उदाहरण के लिए, इसे नए नोड पर /tmp डायरेक्ट्री में कॉपी करें.
      3. नए नोड पर, फ़ाइल को /tmp डायरेक्ट्री में अनटार करें:
        tar -xzf apigee-4.17.09.tar.gz

        यह कमांड, .tar फ़ाइल वाली डायरेक्ट्री में repos नाम की एक नई डायरेक्ट्री बनाता है. उदाहरण के लिए, /tmp/repos.

      4. /tmp/repos से Edge apigee-service यूटिलिटी और डिपेंडेंसी इंस्टॉल करें:
        sudo bash /tmp/repos/bootstrap_4.17.09.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

        ध्यान दें कि इस निर्देश में, रिपॉज़िटरी डायरेक्ट्री का पाथ शामिल किया जाता है.

    3. Nginx वेबसर्वर का इस्तेमाल करके apigee-service इंस्टॉल करने के लिए:
      1. Nginx वेब सर्वर को कॉन्फ़िगर करें. इसके लिए, Edge apigee-setup यूटिलिटी इंस्टॉल करें में जाकर, "Nginx वेब सर्वर का इस्तेमाल करके रेपो से इंस्टॉल करें" में बताया गया तरीका अपनाएं.
      2. रिमोट नोड पर, Edge bootstrap_4.17.09.sh फ़ाइल को /tmp/bootstrap_4.17.09.sh में डाउनलोड करें:
        /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.17.09.sh
          -o /tmp/bootstrap_4.17.09.sh

        जहां uName:pWord वह उपयोगकर्ता नाम और पासवर्ड है जो आपने रिपॉज़िटरी के लिए ऊपर सेट किया है. साथ ही, remoteRepo रिपॉज़िटरी नोड का आईपी पता या डीएनएस नाम है.

      3. रिमोट नोड पर, Edge apigee-service यूटिलिटी और डिपेंडेंसी इंस्टॉल करें:code
        sudo bash /tmp/bootstrap_4.17.09.sh apigeerepohost=remoteRepo:3939
          apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

        जहां uName:pWord, रिपॉज़िटरी का उपयोगकर्ता नाम और पासवर्ड है.

  10. apigee-setup यूटिलिटी को अपडेट करने के लिए, apigee-service का इस्तेमाल करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
  11. Postgres डेटाबेस को अपडेट करने के लिए, अपने नोड पर अपडेट यूटिलिटी चलाएं:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile

    जहां configFile वह कॉन्फ़िगरेशन फ़ाइल है जिसका इस्तेमाल आपने Postgres डेटाबेस को इंस्टॉल करने के लिए किया था. कॉन्फ़िगरेशन फ़ाइल के लिए सिर्फ़ यह ज़रूरी है कि "apigee" उपयोगकर्ता, कॉन्फ़िगरेशन फ़ाइल को ऐक्सेस या पढ़ सके.

  12. Postgres को चालू करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
  13. पोर्टल को अपडेट करने के लिए, अपने नोड पर अपडेट यूटिलिटी चलाएं:
    /opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile

    जहां configFile वह कॉन्फ़िगरेशन फ़ाइल है जिसका इस्तेमाल आपने पोर्टल इंस्टॉल करने के लिए किया था. कॉन्फ़िगरेशन फ़ाइल के लिए सिर्फ़ यह ज़रूरी है कि "apigee" उपयोगकर्ता, कॉन्फ़िगरेशन फ़ाइल को ऐक्सेस या पढ़ सके.

  14. ब्राउज़र विंडो में यह यूआरएल खोलकर, Drupal की update.php स्क्रिप्ट चलाएं:
    http://portalIP_DNS:8079/update.php
  15. Drupal को मेंटेनेंस मोड से हटाएं:
    1. Drupal मेन्यू में, Configuration को चुनें.
    2. कॉन्फ़िगरेशन पेज पर, डेवलपमेंट में जाकर, मेंटेनेंस मोड को चुनें.
    3. साइट को मेंटेनेंस मोड में डालें बॉक्स से चुने हुए का निशान हटाएं.
    4. कॉन्फ़िगरेशन सेव करें को चुनें.

ध्यान दें कि अपडेट के बाद रूट डायरेक्ट्री यह है:

/opt/apigee/apigee-drupal/wwwroot

अपग्रेड की प्रोसेस पूरी हो गई है.