पोर्टल अपग्रेड करें

Edge for Private Cloud v4.19.01

इस प्रोसेस में, मौजूदा Apigee Developer 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
  • OPDK-17-09.x
  • OPDK-18-01.x
  • OPDK-18-05.x

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

http://yourportal.com/buildInfo

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

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

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

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

किसी नोड पर पोर्टल आरपीएम को अपडेट करने के लिए:

  1. Drupal डायरेक्टरी में जाएं. डिफ़ॉल्ट रूप से, यह /opt/apigee/apigee-drupal होती है:
    cd /opt/apigee/apigee-drupal
  2. अपने Drupal डेटाबेस इंस्टेंस का बैक अप लें. pg_dump कमांड, डेटाबेस की एक कॉपी बनाता है:
    pg_dump --dbname=devportal --host=host_IP_address --username=drupaladmin
      --password --format=c > /tmp/portal.dmp

    कहां:

    • devportal, डेटाबेस का नाम है. इसे पोर्टल इंस्टॉलेशन कॉन्फ़िगरेशन फ़ाइल में, PG_NAME प्रॉपर्टी के हिसाब से तय किया जाता है.
    • host_IP_address, पोर्टल नोड का आईपी पता है.
    • drupaladmin, 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 मेन्यू में Configuration > Media > File एंट्री का इस्तेमाल करें. इससे आपको सार्वजनिक फ़ाइल सिस्टम और निजी फ़ाइल सिस्टम पाथ की जगह की जानकारी मिलेगी. यह जानकारी अगले चरण के लिए ज़रूरी है.

  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.19.01 bootstrap_4.19.01.sh फ़ाइल को /tmp/bootstrap_4.19.01.sh में डाउनलोड करें:
      curl https://software.apigee.com/bootstrap_4.19.01.sh -o /tmp/bootstrap_4.19.01.sh
    2. Edge 4.19.01 apigee-service यूटिलिटी और डिपेंडेंसी इंस्टॉल करें:
      sudo bash /tmp/bootstrap_4.19.01.sh apigeeuser=uName apigeepassword=pWord

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

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

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

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

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

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

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

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

      3. रिमोट नोड पर, Edge apigee-service यूटिलिटी और डिपेंडेंसी इंस्टॉल करें:
        sudo bash /tmp/bootstrap_4.19.01.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. पोर्टल को अपडेट करने के लिए, अपने नोड पर अपडेट यूटिलिटी चलाएं:
    /opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile

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

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

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

/opt/apigee/apigee-drupal/wwwroot

अपग्रेड की प्रोसेस पूरी हो गई है. अगर Apigee अपडेट यूटिलिटी ने Drupal के आपके वर्शन को डाउनग्रेड कर दिया है, तो आपको Drupal अपग्रेड यूटिलिटी को फिर से चलाना पड़ सकता है. ज़्यादा जानकारी के लिए, Drupal अपग्रेड को फिर से चलाएं देखें.

Drupal अपग्रेड को फिर से चलाएं

अगर Edge for Private Cloud को अपग्रेड करने के लिए, Apigee अपडेट यूटिलिटी को चलाने से Drupal का वर्शन डाउनग्रेड हो जाता है, तो Drupal अपग्रेड को फिर से इंस्टॉल करें. ऐसा तब हो सकता है, जब आपने Private Cloud के अपडेट के बीच, सिर्फ़ Drupal को अपग्रेड किया हो.

उदाहरण के लिए:

  1. आपके पास Edge for Private Cloud का 4.18.05 वर्शन था, जिसमें Drupal 7.59 शामिल था.
  2. आपने सुरक्षा से जुड़े ज़रूरी अपडेट की वजह से, Drupal को 7.64 पर अपग्रेड किया है.
  3. अब Private Cloud को 4.19.01 पर अपग्रेड किया जा रहा है. इसमें Drupal 7.61 शामिल है.

जैसा कि इस मामले से पता चलता है, हो सकता है कि Apigee अपडेट यूटिलिटी में इस्तेमाल किया गया Drupal वर्शन, Drupal के नए अपग्रेड को रेफ़र न करे. इसलिए, आपको Drupal को फिर से अपग्रेड करना होगा, ताकि Drupal के नए वर्शन को इंस्टॉल किया जा सके.