टार-आधारित पोर्टल को आरपीएम-आधारित पोर्टल में बदलें

Apigee Developer Services पोर्टल (या पोर्टल) के 4.18.05 वर्शन की रिलीज़ में, आपको पिछले वर्शन में मौजूद अपडेट टार-आधारित पोर्टल का वर्शन हो. पोर्टल के आरपीएम पर आधारित वर्शन को सीधे तौर पर अपडेट किया जा सकता है से 4.18.05.

हालांकि, पोर्टल के टार-आधारित वर्शन को 4.18.05 आरपीएम-आधारित इंस्टेंस में बदला जा सकता है पोर्टल पर जाएं. इस प्रोसेस के हिस्से के तौर पर, आप मौजूदा पोर्टल के MySQL/MariaDB को Postgres डेटाबेस. फ़ॉर्मैट बदलने के बाद, आपका पोर्टल आरपीएम पर आधारित पोर्टल के तौर पर काम करता रहेगा.

टार पर आधारित पोर्टल के पिछले कई वर्शन को आरपीएम पर आधारित पोर्टल पर माइग्रेट किया जा सकता है, जिसमें 4.16.09 और 4.17.01 वर्शन शामिल हैं, न कि सिर्फ़ 4.17.05 वर्शन. ज़रूरी शर्तें बस यह हैं कि यह पोर्टल पर Drupal 7 या इसके बाद का वर्शन है. Drupal का अपना वर्शन देखने के लिए, रिपोर्ट को चुनें > स्थिति रिपोर्ट देखें. Drupal का वर्शन पहली लाइन में दिखता है एक या एक से ज़्यादा आउटपुट होती हैं.

टार-आधारित पोर्टल से आरपीएम पर आधारित पोर्टल में माइग्रेट करने के लिए, इस्तेमाल किए जाने वाले हाई-लेवल चरण हैं:

  • पोर्टल का आरपीएम आधारित 4.18.05 वर्शन इंस्टॉल करें नया नोड.
  • आरपीएम पर आधारित पोर्टल पर एक नया Postgres डेटाबेस बनाएं.
  • टार पर आधारित पोर्टल से पोर्टल डेटाबेस को माइग्रेट करें.
  • टार पर आधारित पोर्टल से ऐक्सेसरी वाली सभी फ़ाइलों को आरपीएम पर कॉपी करें पोर्टल पर जाएं.
  • आरपीएम पर आधारित नए पोर्टल पर ले जाने के लिए, डीएनएस एंट्री अपडेट करें.

    ध्यान दें कि पोर्टल के आरपीएम पर आधारित वर्शन में डिफ़ॉल्ट रूप से पोर्ट 8079 का इस्तेमाल किया जाता है, जबकि टार-आधारित वर्शन का इस्तेमाल किया जाता है वर्शन पोर्ट 80 का इस्तेमाल करता है. पक्का करें कि डीएनएस एंट्री में सही पोर्ट नंबर का इस्तेमाल किया जा रहा हो. यहां जाएं: जानकारी के लिए पोर्टल में इस्तेमाल किया जाने वाला एचटीटीपी पोर्ट सेट करें कोई दूसरा पोर्ट इस्तेमाल करें.

इसके बाद नई डिफ़ॉल्ट इंस्टॉलेशन डायरेक्ट्री कन्वर्ज़न

जो इंस्टॉलेशन अब Nginx/Postgres का इस्तेमाल करता है उसे अपडेट करने के बाद, रूट डायरेक्ट्री बदल गई भेजने वाला:

/opt/apigee/apigee-drupal

इससे बदलें:

/opt/apigee/apigee-drupal/wwwroot

पोर्टल में बदलाव करने की प्रोसेस

पोर्टल को आरपीएम पर आधारित इंस्टॉलेशन में बदलने के लिए:

  1. पोर्टल के आरपीएम पर आधारित 4.18.05 वर्शन को टार वाले नोड से किसी दूसरे नोड पर इंस्टॉल करें पोर्टल पर जाएं.
  2. आरपीएम पर आधारित पोर्टल पर, एक नया Postgres डेटाबेस बनाएं. बाद में, माइग्रेट करने के लिए टार-आधारित पोर्टल से इस नए डेटाबेस तक का डेटाबेस:
    1. psql में लॉग इन करें:
      psql -h localhost -p 5432 -U apigee

      पोर्टल कॉन्फ़िगरेशन में PG_PWD प्रॉपर्टी के हिसाब से तय किया गया अपना Postgres पासवर्ड डालें फ़ाइल से लिए जाते हैं.

    2. नया पोस्टग्रेड डेटाबेस बनाएं:
      CREATE DATABASE newportaldb;
    3. psql से बाहर निकलें:
      \q
  3. टार-आधारित पोर्टल पर, ऐसे पुराने मॉड्यूल हटा दें जिनका अब इस्तेमाल नहीं किया जाता:

    cd /var/www/html
    drush sql-query --db-prefix "DELETE from {system} where name = 'apigee_account' AND type = 'module';"
    drush sql-query --db-prefix "DELETE from {system} where name = 'apigee_checklist' AND type = 'module';"
    drush sql-query --db-prefix "DELETE from {system} where name = 'apigee_sso_ui' AND type = 'module';"
  4. टार-आधारित पोर्टल पर, माइग्रेटर Drupal मॉड्यूल को इंस्टॉल और कॉन्फ़िगर करें:
    1. cd /tmp 
    2. wget https://ftp.drupal.org/files/projects/dbtng_migrator-7.x-1.4.tar.gz 
    3. gunzip /tmp/dbtng_migrator-7.x-1.4.tar.gz 
    4. tar -xvf /tmp/dbtng_migrator-7.x-1.4.tar --directory /var/www/html/sites/all/modules 
    5. पोर्टल में एडमिन के तौर पर लॉग इन करें.
    6. Drupal मेन्यू में जाकर, मॉड्यूल चुनें.
    7. DBTNG माइग्रेटर मॉड्यूल को चालू करें.
    8. कॉन्फ़िगरेशन को सेव करें.
  5. टार-आधारित पोर्टल पर, /var/www/html/sites/default/settings.php में बदलाव करें एक दूसरा डेटाबेस कॉन्फ़िगरेशन जोड़ने के लिए जो कि आरपीएम पर आधारित नए डेटाबेस पर ले जाता हो पोर्टल पर जाएं. डेटाबेस के मौजूदा कॉन्फ़िगरेशन को "डिफ़ॉल्ट" नाम दिया गया है. अपने नए कॉन्फ़िगरेशन को नाम दें "custom" पर सेट करें, जैसा कि नीचे दिया गया उदाहरण दिखाता है:
    $databases = array (
      'default' =>
      array (
        'default' =>
        array (
          'database' => 'devportal',
          'username' => 'devportal',
          'password' => 'devportal',
          'host' => 'localhost',
          'port' => '',
          'driver' => 'mysql',
          'prefix' => '',
        ),
      ),
      'custom' =>
      array (
        'default' =>
        array (
          'database' => 'newportaldb',
          'username' => 'apigee',
          'password' => 'postgres',
          'host' => '192.168.168.100',
          'port' => '5432',
          'driver' => 'pgsql',
          'prefix' => '',
        )
      )
    );

    जहां host और port Postgres सर्वर. पोस्टग्रिस, कनेक्शन के लिए पोर्ट 5432 का इस्तेमाल करता है.

  6. टार-आधारित पोर्टल पर, Postgres ड्राइवर इंस्टॉल करें:
    1. ड्राइवर को इंस्टॉल करने के लिए Yum का इस्तेमाल करें:
      yum install php-pdo_pgsql
    2. इस लाइन को फ़ाइल में कहीं भी जोड़ने के लिए, /etc/php.ini में बदलाव करें:
      extension=pgsql.so
    3. Apache को रीस्टार्ट करें:
      service httpd restart
  7. टार-आधारित पोर्टल पर, पोर्टल डेटाबेस को आरपीएम पर आधारित डेटाबेस में माइग्रेट करें पोर्टल:
    1. पोर्टल में एडमिन के तौर पर लॉग इन करें.
    2. Drupal मेन्यू में स्ट्रक्चर->माइग्रेटर चुनें.
    3. टार-आधारित पोर्टल पर अपना ऑरिजिन डेटाबेस चुनें, default, और डेस्टिनेशन डेटाबेस, custom, दिखाई गई settings.php फ़ाइल पर आधारित पढ़ें.
    4. माइग्रेट करें पर क्लिक करें. टार आधारित डेटाबेस को आरपीएम पर माइग्रेट किया जाता है डेटाबेस.
  8. sites डायरेक्ट्री को टार-आधारित सर्वर से आरपीएम-आधारित सर्वर पर कॉपी करें. कॉन्टेंट बनाने नीचे दिए गए चरणों में दिखाए गए पाथ, डिफ़ॉल्ट पाथ पर आधारित होते हैं. इनमें ज़रूरत के हिसाब से बदलाव करें, इंस्टॉल किया जा सकता है.
    1. टार पर आधारित पोर्टल पर, /var/www/html/sites डायरेक्ट्री को बंडल करें:
      cd /var/www/html/sites
      tar -cvzf /tmp/sites.tar.gz .
    2. /tmp/sites.tar.gz को यहां कॉपी करें आरपीएम-आधारित सर्वर पर /opt/apigee/apigee-drupal/wwwroot/sites.
    3. साइट डायरेक्ट्री को अनबंडल करें, लेकिन ज़रूरी फ़ाइलों को ओवरराइट न करें.
      1. settings.php फ़ाइल का बैकअप लें:
        sudo cp /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php
          /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.bak.php
      2. मौजूदा files डायरेक्ट्री का बैकअप लें:
        sudo mv /opt/apigee/apigee-drupal/wwwroot/sites/default/files
          /opt/apigee/apigee-drupal/wwwroot/sites/default/files_old
      3. मौजूदा sites डायरेक्ट्री का बैकअप लें:
        tar -cvzf /tmp/sites_old.tar.gz /opt/apigee/apigee-drupal/wwwroot/sites
      4. टार-आधारित सर्वर से sites डायरेक्ट्री को अनज़िप और अनटार करें:
        gunzip /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar.gz
        tar -xvf /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar
      5. पक्का करें कि कॉपी की गई फ़ाइलों का मालिकाना हक सही हो:
        chown -R apigee:apigee /opt/apigee/apigee-drupal/wwwroot/sites/
      6. settings.php फ़ाइल को वापस लाएं:
        sudo cp /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.bak.php
          /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php
      7. निजी फ़ाइलों को नई जगह पर ले जाएं:
        cp -r /opt/apigee/apigee-drupal/wwwroot/sites/default/files/private/* /opt/apigee/data/apigee-drupal-devportal/private
        rm -rf /opt/apigee/apigee-drupal/wwwroot/sites/default/files/private
        chown -R apigee:apigee /opt/apigee/data/apigee-sap-drupal-devportal/private
  9. टार-आधारित पोर्टल पर, सिर्फ़ तब, जब आपने पाथ को वेब रूट में बदला हो निर्देशिका /var/www/html के डिफ़ॉल्ट पाथ से टार-आधारित पोर्टल पर संग्रहित करें: चलाएं drush status और files पथ और private files पथ देखें:
    cd /var/www/html
    drush status

    अगर फ़ाइलें/निजी फ़ाइलें sites डायरेक्ट्री में नहीं हैं, तो उन्हें यहां कॉपी करें ऊपर दिखाए गए तरीके के मुताबिक, आरपीएम पर आधारित सर्वर.

  10. आरपीएम पर आधारित पोर्टल पर, अपडेट करें प्रॉपर्टी सेट करने के लिए /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php को डिफ़ॉल्ट डेटाबेस में ले जाया जा सकता है:
    vi /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php

    settings.php में डेटाबेस की डिफ़ॉल्ट जानकारी सेट करें:

    $databases = array (
      'default' =>
      array (
        'default' =>
        array (
          'database' => 'newportaldb',
          'username' => 'apigee',
          'password' => 'postgres',
          'host' => 'localhost', 'port' => '5432',
          'driver' => 'pgsql',
          'prefix' => '',
        )
      )
    );

    जहां database आपके बनाए गए नए डेटाबेस के बारे में बताता है, username और password, कस्टम डेटाबेस के लिए तय किए गए हैं टार-आधारित पोर्टल पर डाला गया है और prefix खाली है.

  11. आरपीएम पर आधारित पोर्टल पर, आरपीएम पर आधारित पोर्टल के वर्शन में टार-आधारित वर्शन के मुकाबले Drupal के मॉड्यूल. आरपीएम पर आधारित पोर्टल पर माइग्रेट करने के बाद, को ऐसे मॉड्यूल की जांच करनी चाहिए जो मौजूद नहीं हैं और उन्हें ज़रूरत के मुताबिक इंस्टॉल करें.
    1. छूटे हुए मॉड्यूल का पता लगाने के लिए, Drupal missing_module इंस्टॉल करें:
      cd /opt/apigee/apigee-drupal/wwwroot
      drush dl missing_module
      drush en missing_module
    2. आरपीएम पर आधारित पोर्टल में एडमिन के तौर पर लॉग इन करें.
    3. रिपोर्ट > को चुनें Drupal मेन्यू में स्टेटस रिपोर्ट देखें और कोई भी मॉड्यूल न मिल सके.
    4. छूटे हुए मॉड्यूल इंस्टॉल करने के लिए उस रिपोर्ट का इस्तेमाल करें या इन निर्देशों का इस्तेमाल करें:
      cd /opt/apigee/apigee-drupal/wwwroot
      drush dl <moduleA> <moduleB> ...
      drush en <moduleA> <moduleB> ...
    5. सभी मॉड्यूल चालू करने के बाद, पक्का करें कि फ़ाइलों का मालिकाना हक apigee उपयोगकर्ता के पास है:
      chown -LR apigee:apigee /opt/apigee/apigee-drupal/wwwroot

      फ़ाइल से जुड़ी अनुमतियों के बारे में ज़्यादा जानने के लिए, यहां जाएं https://www.drupal.org/node/244924.

  12. आरपीएम पर आधारित पोर्टल पर, कोई भी गड़बड़ी हटाने के लिए ब्राउज़र में updated.php चलाएं अनुपलब्ध मॉड्यूल पर:
    1. आरपीएम पर आधारित पोर्टल में एडमिन के तौर पर लॉग इन करें.
    2. ब्राउज़र में, इस यूआरएल पर जाएं:
      http://portal_IP_or_DNS:8079/update.php

      जहां portal_IP_or_DNS, आरपीएम पर आधारित उस कंपनी का आईपी पता या डोमेन नेम है पोर्टल पर जाएं.

    3. स्क्रीन पर दिए गए निर्देशों का पालन करें.
  13. आरपीएम पर आधारित नए पोर्टल पर ले जाने के लिए, डीएनएस एंट्री अपडेट करें.

    ध्यान दें कि पोर्टल के आरपीएम पर आधारित वर्शन में डिफ़ॉल्ट रूप से पोर्ट 8079 का इस्तेमाल किया जाता है, जबकि टार-आधारित वर्शन का इस्तेमाल किया जाता है वर्शन पोर्ट 80 का इस्तेमाल करता है. पक्का करें कि डीएनएस एंट्री में सही पोर्ट नंबर का इस्तेमाल किया जा रहा हो. यहां जाएं: पोर्टल के ज़रिए इस्तेमाल किया जाने वाला एचटीटीपी पोर्ट सेट करें पर कोई दूसरा पोर्ट इस्तेमाल करें.

रूपांतरण पूरा हो गया है.