পোর্টাল আপগ্রেড করুন

এই পদ্ধতিটি বর্ণনা করে কিভাবে একটি বিদ্যমান Apigee ডেভেলপার সার্ভিসেস পোর্টাল (বা সহজভাবে, পোর্টাল ) অন-প্রিমিস ইনস্টলেশন আপগ্রেড করতে হয়।

সঠিক আপডেট পদ্ধতি নির্ধারণ করুন

পোর্টাল আপডেট করার জন্য আপনি যে পদ্ধতিটি ব্যবহার করেন তা আপনার বর্তমান ইনস্টলেশনের উপর ভিত্তি করে:

আপনার বর্তমান ইনস্টলেশন প্রকার নির্ধারণ করুন

আপনি যদি আপনার বর্তমান ইনস্টলেশনের ধরন সম্পর্কে অনিশ্চিত হন তবে এটি নির্ধারণ করতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

  • 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 এবং পরবর্তীতে সমর্থিত।

আপনার পোর্টাল সংস্করণ নির্ধারণ করতে, একটি ব্রাউজারে নিম্নলিখিত URL খুলুন:

http:// yourportal.com /buildInfo

আপনি আপডেট করার আগে

বিদ্যমান ইনস্টলেশনের জন্য, আপনি যদি ড্রুপাল কোরে কোনো কোড পরিবর্তন করে থাকেন বা কোনো নন-কাস্টম মডিউলে, আপনার পরিবর্তনগুলি ওভাররাইট করা হবে। এর মধ্যে রয়েছে, অন্যান্য বিষয়ের মধ্যে, আপনি .htaccess এ করা যেকোনো পরিবর্তন। আপনার অনুমান করা উচিত যে /sites ডিরেক্টরির বাইরের যেকোনো কিছুর মালিকানা ড্রুপালের। এই নিয়মের একটি ব্যতিক্রম হল robots.txt ; যদি এই ফাইলটি ওয়েব রুটে বিদ্যমান থাকে তবে এটি আপনার জন্য সংরক্ষিত থাকবে।

ইনস্টলেশনের সাথে এগিয়ে যাওয়ার আগে, আপনার সম্পূর্ণ ড্রুপাল ওয়েব রুট ডিরেক্টরির একটি ব্যাকআপ তৈরি করুন। নীচে বর্ণিত ইনস্টলেশন পদক্ষেপগুলি সম্পাদন করার পরে, আপনি ব্যাকআপ থেকে আপনার কাস্টমাইজেশনগুলি পুনরুদ্ধার করতে পারেন৷

RPM ব্যবহার করে একটি পোর্টাল আপগ্রেড করুন

একটি নোডে পোর্টাল RPM আপডেট করতে:

  1. ড্রুপাল ডিরেক্টরিতে পরিবর্তন করুন, ডিফল্টরূপে /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 হল পোর্টাল নোডের IP ঠিকানা।
    • drupaladmin হল পোস্টগ্রেস ব্যবহারকারীর নাম যা পোর্টাল ইনস্টলেশন কনফিগারেশন ফাইলে DRUPAL_PG_USER বৈশিষ্ট্য দ্বারা নির্দিষ্ট করা ডেটাবেস অ্যাক্সেস করতে পোর্টাল দ্বারা ব্যবহৃত হয়।

    পোর্টাল ইনস্টলেশন কনফিগারেশন ফাইলে DRUPAL_PG_PASS বৈশিষ্ট্য দ্বারা সংজ্ঞায়িত পোস্টগ্রেস ব্যবহারকারীর পাসওয়ার্ডের জন্য আপনাকে অনুরোধ করা হচ্ছে।

    আপনি যদি পরে ব্যাকআপ থেকে পুনরুদ্ধার করতে চান তবে নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

    pg_restore --clean --dbname=devportal --host=localhost  --username=apigee < /tmp/portal.dmp
  3. আপনার সম্পূর্ণ ড্রুপাল ওয়েব রুট ডিরেক্টরির একটি ব্যাকআপ নিন। ডিফল্ট ইনস্টল অবস্থান হল /opt/apigee/apigee-drupal , কিন্তু আপনি এটি পরিবর্তন করতে পারেন।

    আপনি যদি এই ডিরেক্টরির অবস্থান সম্পর্কে অনিশ্চিত হন, তাহলে সর্বজনীন ফাইল সিস্টেম এবং ব্যক্তিগত ফাইল সিস্টেম পাথের অবস্থান নির্ধারণ করতে (পরবর্তী ধাপের জন্য) ড্রুপাল মেনুতে drush status কমান্ড বা কনফিগারেশন > মিডিয়া > ফাইল এন্ট্রি ব্যবহার করুন।

  4. /opt/apigee/data/apigee-drupal-devportal/private এ ফাইলগুলির একটি ব্যাকআপ নিন।
  5. রক্ষণাবেক্ষণ মোডে ড্রুপাল সেট করুন:
    1. ড্রুপাল মেনুতে কনফিগারেশন নির্বাচন করুন।
    2. কনফিগারেশন পৃষ্ঠায়, বিকাশের অধীনে রক্ষণাবেক্ষণ মোড নির্বাচন করুন।
    3. সাইটটি রক্ষণাবেক্ষণ মোডে রাখুন বাক্সটি নির্বাচন করুন।
    4. রক্ষণাবেক্ষণের সময় ব্যবহারকারীরা দেখতে পান এমন একটি বার্তা লিখুন।
    5. কনফিগারেশন সংরক্ষণ করুন নির্বাচন করুন।
  6. এজ অ্যাপিজি-সেটআপ ইউটিলিটি ইনস্টল করুন -এ বর্ণিত SELinux নিষ্ক্রিয় করুন।
  7. /opt ডিরেক্টরিতে পরিবর্তন করুন:
    cd /opt
  8. একটি ইন্টারনেট সংযোগ সহ একটি সার্ভারে একটি আপগ্রেডের জন্য:
    1. এজ 4.19.06 bootstrap_4.19.06.sh ফাইলটি /tmp/bootstrap_4.19.06.sh :
      curl https://software.apigee.com/bootstrap_4.19.06.sh -o /tmp/bootstrap_4.19.06.sh
      এ ডাউনলোড করুন
    2. এজ 4.19.06 apigee-service ইউটিলিটি এবং নির্ভরতা ইনস্টল করুন:
      sudo bash /tmp/bootstrap_4.19.06.sh apigeeuser=uName apigeepassword=pWord

      যেখানে uName এবং pWord হল ব্যবহারকারীর নাম এবং পাসওয়ার্ড আপনি Apigee থেকে পেয়েছেন। আপনি pWord বাদ দিলে, আপনাকে এটি লিখতে বলা হবে।

      ডিফল্টরূপে, ইনস্টলার আপনার জাভা 1.8 ইনস্টল করা আছে কিনা তা পরীক্ষা করে। আপনি জাভা ইনস্টল না করে চালিয়ে যেতে "C" বিকল্পটি ব্যবহার করতে পারেন।

  9. ইন্টারনেট সংযোগ ছাড়াই সার্ভারে আপগ্রেড করার জন্য:
    1. স্থানীয় Apigee সংগ্রহস্থল তৈরি করুন-এ বর্ণিত একটি স্থানীয় 4.19.06 রেপো তৈরি করুন।
    2. .tar ফাইল থেকে apigee-service ইনস্টল করতে :
      1. স্থানীয় রেপো সহ নোডে, /opt/apigee/data/apigee-mirror/apigee-4.19.06.tar.gz :
        /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
        নামের একটি একক .tar ফাইলে স্থানীয় রেপো প্যাকেজ করতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন
      2. .tar ফাইলটিকে নোডে কপি করুন যেখানে আপনি এজ আপডেট করতে চান। উদাহরণস্বরূপ, নতুন নোডের /tmp ডিরেক্টরিতে এটি অনুলিপি করুন।
      3. নতুন নোডে, ফাইলটিকে /tmp ডিরেক্টরিতে আনটান করুন:
        tar -xzf apigee-4.19.06.tar.gz

        এই কমান্ডটি .tar ফাইল ধারণকারী ডিরেক্টরিতে একটি নতুন ডিরেক্টরি তৈরি করে, যার নাম repos। উদাহরণস্বরূপ /tmp/repos.

      4. /tmp/repos থেকে এজ apigee-service ইউটিলিটি এবং নির্ভরতা ইনস্টল করুন :
        sudo bash /tmp/repos/bootstrap_4.19.06.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

        লক্ষ্য করুন যে আপনি এই কমান্ডে repos ডিরেক্টরির পাথ অন্তর্ভুক্ত করেছেন।

    3. Nginx ওয়েব সার্ভার ব্যবহার করে apigee-পরিষেবা ইনস্টল করতে:
      1. এজ অ্যাপিজি-সেটআপ ইউটিলিটি ইনস্টলে "এনজিনেক্স ওয়েব সার্ভার ব্যবহার করে রেপো থেকে ইনস্টল করুন" এ বর্ণিত Nginx ওয়েব সার্ভারটি কনফিগার করুন।
      2. রিমোট নোডে, এজ bootstrap_4.19.06.sh ফাইলটি ডাউনলোড করুন /tmp/bootstrap_4.19.06.sh :
        /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.19.06.sh
          -o /tmp/bootstrap_4.19.06.sh

        যেখানে uName এবং pWord হল ব্যবহারকারীর নাম এবং পাসওয়ার্ড যা আপনি রেপোর জন্য উপরে সেট করেছেন এবং remoteRepo হল রেপো নোডের IP ঠিকানা বা DNS নাম।

      3. রিমোট নোডে, এজ apigee-service ইউটিলিটি এবং নির্ভরতা ইনস্টল করুন:
        sudo bash /tmp/bootstrap_4.19.06.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. আপনার পোস্টগ্রেস নোডে update ইউটিলিটি চালান:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile

    যেখানে configFile হল কনফিগারেশন ফাইল যা আপনি Postgres ডাটাবেস ইনস্টল করতে ব্যবহার করেছিলেন। কনফিগারেশন ফাইলের একমাত্র প্রয়োজনীয়তা হল কনফিগারেশন ফাইলটি "এপিজি" ব্যবহারকারীর দ্বারা অ্যাক্সেসযোগ্য বা পাঠযোগ্য হতে হবে।

  12. PHP RPM গুলি সরান কিন্তু Apigee Drupal Devportal RPM নির্ভরতাগুলি না করে নিম্নলিখিত কমান্ডটি কার্যকর করুন:
    rpm -ev --nodeps $(rpm -qa | grep php | awk '{printf "%s ", $1}')

    এই কমান্ড নিম্নলিখিত কাজ করে:

    • rpm -ev --nodeps RPMগুলি সরিয়ে দেয় কিন্তু তাদের নির্ভরতা নয়।
    • rpm -qa অপসারণের জন্য RPMগুলির তালিকা তৈরি করে।
    • grep php সব PHP RPM-এর জন্য অনুসন্ধান করে।
    • awk '{printf "%s ", $1}' RPM নামগুলি প্রিন্ট করে।
  13. পোর্টাল আপডেট করতে আপনার নোডে update ইউটিলিটি চালান:
    /opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile

    যেখানে configFile হল কনফিগারেশন ফাইল যা আপনি পোর্টাল ইনস্টল করতে ব্যবহার করেছিলেন। কনফিগারেশন ফাইলের একমাত্র প্রয়োজনীয়তা হল কনফিগারেশন ফাইলটি "এপিজি" ব্যবহারকারীর দ্বারা অ্যাক্সেসযোগ্য বা পাঠযোগ্য হতে হবে।

  14. একটি ব্রাউজার উইন্ডোতে নিম্নলিখিত URLটি খুলে Drupal-এর update.php স্ক্রিপ্ট চালান:
    http://portal_IP_DNS:8079/update.php
  15. রক্ষণাবেক্ষণ মোড অক্ষম করুন:
    1. ড্রুপাল মেনুতে কনফিগারেশন নির্বাচন করুন।
    2. কনফিগারেশন পৃষ্ঠায়, বিকাশের অধীনে রক্ষণাবেক্ষণ মোড নির্বাচন করুন।
    3. রক্ষণাবেক্ষণ মোড বক্সে সাইটটি নির্বাচন করুন।
    4. কনফিগারেশন সংরক্ষণ করুন নির্বাচন করুন।

নোট করুন যে আপডেটের পরে রুট ডিরেক্টরি হল:

/opt/apigee/apigee-drupal/wwwroot

আপগ্রেড এখন সম্পূর্ণ হয়েছে. যদি Apigee update ইউটিলিটি আপনার Drupal এর সংস্করণকে ডাউনগ্রেড করে, তাহলে আপনাকে Drupal আপগ্রেড ইউটিলিটি পুনরায় চালানোর প্রয়োজন হতে পারে। আরও তথ্যের জন্য, Drupal আপগ্রেড পুনরায় চালান দেখুন।

Drupal আপগ্রেড পুনরায় চালান

যদি প্রাইভেট ক্লাউডের জন্য এজ আপগ্রেড করার জন্য অ্যাপিজি update ইউটিলিটি চালানোর ফলে আপনার ড্রুপাল সংস্করণটি ডাউনগ্রেড হয় , তাহলে ড্রুপাল আপগ্রেডটি পুনরায় ইনস্টল করুন। আপনি যদি ব্যক্তিগত ক্লাউড আপডেটগুলির মধ্যে শুধুমাত্র ড্রুপাল আপগ্রেড করেন তবে এটি এমন হতে পারে।

উদাহরণ স্বরূপ:

  1. আপনি প্রাইভেট ক্লাউডের জন্য এজ-এর 4.18.05 সংস্করণ চালাচ্ছিলেন, যার মধ্যে Drupal 7.59 অন্তর্ভুক্ত ছিল।
  2. একটি প্রয়োজনীয় নিরাপত্তা আপডেটের কারণে আপনি Drupal 7.64-এ আপগ্রেড করেছেন।
  3. আপনি এখন ব্যক্তিগত ক্লাউডকে 4.19.01-এ আপগ্রেড করছেন, যার মধ্যে রয়েছে Drupal 7.61।

যেমনটি এই ঘটনাটি ব্যাখ্যা করে, Apigee update ইউটিলিটি দ্বারা ব্যবহৃত ড্রুপাল সংস্করণটি সর্বশেষ ড্রুপাল আপগ্রেডের উল্লেখ নাও করতে পারে। ফলস্বরূপ, আপনার ড্রুপাল ইনস্টলেশনকে পরবর্তী সংস্করণে ফিরিয়ে আনতে আপনাকে এখন আপনার ড্রুপাল আপগ্রেড পুনরায় চালাতে হবে।