প্রাইভেট ক্লাউডের জন্য Edge v4.18.01
Developer Services পোর্টালের 4.18.01 রিলিজ আপনাকে পোর্টালের আগের tar-ভিত্তিক ভার্সন আপডেট করতে দেয় না। আপনি শুধুমাত্র পোর্টালের RPM-ভিত্তিক ভার্সন সরাসরি আপডেট করে 4.18.01 করতে পারবেন।
তবে, আপনি পোর্টালের tar-ভিত্তিক ভার্সনকে পোর্টালের 4.18.01 RPM-ভিত্তিক ইনস্ট্যান্সে কনভার্ট করতে পারবেন। এই প্রসেসের অংশ হিসেবে, আপনি আগে থেকে থাকা পোর্টালের MySQL/MariaDB-কে Postgres ডেটাবেসে মাইগ্রেট করেন। রূপান্তরিত হয়ে যাওয়ার পরে, আপনার পোর্টাল RPM-ভিত্তিক পোর্টাল হিসেবেই থেকে যায়।
আপনি 4.17.05 ভার্সন ছাড়াও 4.16.09 ও 4.17.01 সহ tar-ভিত্তিক পোর্টালের অনেক আগের ভার্সন RPM-ভিত্তিক পোর্টালে মাইগ্রেট করতে পারবেন। একমাত্র প্রয়োজন হল যে পোর্টালে Drupal 7 বা তার পরবর্তী যেকোনও ভার্সন চলতে হবে। আপনার Drupal-এর ভার্সন চেক করতে, Drupal মেনুতে রিপোর্ট > স্ট্যাটাস রিপোর্ট বিকল্প বেছে নিন। আউটপুটের প্রথম সারিতে Drupal-এর ভার্সন দেখা যায়।
tar-ভিত্তিক পোর্টাল থেকে RPM-ভিত্তিক পোর্টালে মাইগ্রেট করার জন্য আপনি যে হাই-লেভেল ধাপগুলি ব্যবহার করেন সেগুলি হল:
- নতুন নোডে Developer Service পোর্টালের RPM-ভিত্তিক 4.18.01 ভার্সন ইনস্টল করুন।
- RPM-ভিত্তিক পোর্টাল-এ নতুন Postgres ডেটাবেস তৈরি করুন।
- tar-ভিত্তিক পোর্টাল থেকে পোর্টাল ডেটাবেস মাইগ্রেট করুন।
- RPM-ভিত্তিক পোর্টালে tar-ভিত্তিক পোর্টাল থেকে সব অ্যাক্সেসরি ফাইল কপি করুন।
- নতুন RPM-ভিত্তিক পোর্টালের দিকে পয়েন্ট করার জন্য ডিএনএস এন্ট্রি আপডেট করুন।
মনে রাখবেন, পোর্টালের RPM-ভিত্তিক ভার্সন ডিফল্ট হিসেবে পোর্ট 8079 ব্যবহার করে, যেখানে tar-ভিত্তিক ভার্সন পোর্ট 80 ব্যবহার করে। আপনার DNS এন্ট্রিতে সঠিক পোর্ট নম্বর ব্যবহার করছেন কিনা তা নিশ্চিত করুন। অন্য পোর্ট ব্যবহার করা সম্পর্কে তথ্য পেতে, পোর্টাল দ্বারা ব্যবহৃত HTTP পোর্ট সেট করুন লিঙ্ক দেখুন।
কনভার্সনের পরে নতুন ডিফল্ট ইনস্টলেশন ডিরেক্টরি
Nginx/Postgres ব্যবহার করে এমন কোনও ইনস্টলেশন আপডেট করার পরে, রুট ডিরেক্টরি পরিবর্তন করা হয়েছে এখান থেকে:
/opt/apigee/apigee-drupal
এখানে:
/opt/apigee/apigee-drupal/wwwroot
পোর্টাল কনভার্সন পদ্ধতি
পোর্টালকে RPM-ভিত্তিক ইনস্টলেশনে পরিবর্তন করতে:
- আপনার tar-ভিত্তিক পোর্টাল থেকে আলাদা নোডে ডেভেলপার সার্ভিস পোর্টালের RPM-ভিত্তিক 4.18.01 ভার্সন ইনস্টল করুন।
-
RPM-ভিত্তিক পোর্টালে, নতুন Postgres ডেটাবেস তৈরি করুন। পরে, আপনি tar-ভিত্তিক পোর্টাল থেকে এই নতুন ডেটাবেসে
ডেটাবেস মাইগ্রেট করেন:
- psql-এ লগ-ইন করুন:
>psql -h localhost -p 5432 -U apigee
পোর্টাল কনফিগার ফাইলে PG_PWD প্রপার্টিতে যেভাবে সংজ্ঞায়িত করা হয়েছে সেইভাবে আপনার Postgres পাসওয়ার্ড লিখুন। - নতুন Postgred ডেটাবেস তৈরি করুন:
# CREATE DATABASE newportaldb; - psql থেকে বেরিয়ে আসা:
# \q
- psql-এ লগ-ইন করুন:
-
tar-ভিত্তিক পোর্টালে, আর ব্যবহার করা হয় না এমন পুরনো মডিউল সরিয়ে দিন:
> 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';" -
টার-ভিত্তিক পোর্টালে, Migrator Drupal মডিউল ইনস্টল ও কনফিগার করুন:
- cd /tmp
- wget https://ftp.drupal.org/files/projects/dbtng_migrator-7.x-1.4.tar.gz
- gunzip /tmp/dbtng_migrator-7.x-1.4.tar.gz
- tar -xvf /tmp/dbtng_migrator-7.x-1.4.tar --directory /var/www/html/sites/all/modules
- অ্যাডমিন হিসেবে পোর্টালে লগ-ইন করুন।
- Drupal মেনুতে মডিউল বিকল্প বেছে নিন।
- DBTNG Migrator মডিউল চালু করুন।
- কনফিগারেশন সেভ করুন।
- টার-ভিত্তিক পোর্টালে, /var/www/html/sites/default/settings.php এডিট করে
RPM-ভিত্তিক পোর্টালে নতুন তৈরি করা ডেটাবেসের দিকে নির্দেশ করে এমন দ্বিতীয় ডেটাবেস কনফিগারেশন
যোগ করুন। বর্তমান ডেটাবেস কনফিগারেশনের নাম হল ডিফল্ট। আপনার নতুন কনফিগারেশনের নাম দিন
কাস্টম:
$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' => '', ) ) );
যেখানে হোস্ট এবং পোর্ট Postgres সার্ভারের IP অ্যাড্রেস ও পোর্ট নির্দিষ্ট করে। কানেকশনের জন্য Postgres পোর্ট 5432 ব্যবহার করে। -
tar-ভিত্তিক পোর্টালে, Postgres ড্রাইভার ইনস্টল করুন:
- ড্রাইভার ইনস্টল করতে Yum ব্যবহার করুন:
> yum install php-pdo_pgsql - /etc/php.ini এডিট করে
ফাইলের যেকোনও জায়গায় নিম্নলিখিত লাইন যোগ করুন:
extension=pgsql.so - Apache রিস্টার্ট করুন:
> service httpd restart
- ড্রাইভার ইনস্টল করতে Yum ব্যবহার করুন:
-
টার-ভিত্তিক পোর্টালে, পোর্টাল ডেটাবেসকে RPM-ভিত্তিক
পোর্টালে মাইগ্রেট করুন:
- অ্যাডমিন হিসেবে পোর্টালে লগ-ইন করুন।
- Drupal মেনুতে স্ট্রাকচার->মাইগ্রেটর বিকল্প বেছে নিন।
- tar-ভিত্তিক পোর্টালে আপনার অরিজিন ডেটাবেস, ডিফল্ট এবং ডেস্টিনেশন ডেটাবেস বেছে নিন, কাস্টম, এগুলির উপর ভিত্তি করে settings.php ফাইল উপরে দেখানো হয়েছে।
- মাইগ্রেট করুন বিকল্পে ক্লিক করুন। tar-ভিত্তিক ডেটাবেস RPM-ভিত্তিক ডেটাবেসে মাইগ্রেট করা হয়।
- tar-ভিত্তিক সার্ভার থেকে RPM-ভিত্তিক সার্ভারে সাইট ডিরেক্টরি
কপি করুন।
নিম্নলিখিত ধাপে দেখানো পাথ ডিফল্ট পাথের উপর ভিত্তি করে তৈরি করা হয়েছে। আপনার ইনস্টলেশনের জন্য প্রয়োজন অনুযায়ী সেগুলি পরিবর্তন করুন।- টার-ভিত্তিক পোর্টালে, /var/www/html/sites ডিরেক্টরি বান্ডেল করুন:
> cd /var/www/html/sites
> tar -cvzf /tmp/sites.tar.gz . - RPM-ভিত্তিক সার্ভারে /tmp/sites.tar.gz থেকে /opt/apigee/apigee-drupal/wwwroot/sites কপি করুন।
- সাইট ডিরেক্টরি আনবান্ডেল করুন, তবে গুরুত্বপূর্ণ ফাইল ওভাররাইট করবেন না।
- settings.php ফাইলের ব্যাক-আপ নিন:
> sudo cp /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.bak.php - আগে থেকে থাকা ফাইল ডিরেক্টরির ব্যাক-আপ নিন:
> sudo mv /opt/apigee/apigee-drupal/wwwroot/sites/default/files /opt/apigee/apigee-drupal/wwwroot/sites/default/files_old - আগে থেকে থাকা সাইট ডিরেক্টরির ব্যাক-আপ নিন:
> tar -cvzf /tmp/sites_old.tar.gz /opt/apigee/apigee-drupal/wwwroot/sites - tar-ভিত্তিক সার্ভার থেকে সাইট ডিরেক্টরি আনজিপ ও আনটার করুন:
> gunzip /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar.gz
> tar -xvf /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar - কপি করা ফাইলের সঠিক মালিকানা আছে কিনা তা নিশ্চিত করুন:
> chown -R apigee:apigee /opt/apigee/apigee-drupal/wwwroot/sites/ - settings.php ফাইল রিস্টোর করুন:
> sudo cp /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.bak.php /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php - নতুন লোকেশনে ব্যক্তিগত ফাইল সরানো:
> 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
- settings.php ফাইলের ব্যাক-আপ নিন:
- টার-ভিত্তিক পোর্টালে, /var/www/html/sites ডিরেক্টরি বান্ডেল করুন:
- টার-ভিত্তিক পোর্টালে, আপনি যদি /var/www/html-এর ডিফল্ট পাথ থেকে টার-ভিত্তিক পোর্টালে ওয়েব রুটের
পাথ পরিবর্তন করে থাকেন, তবেই: drush status রান করান এবং files পাথ ও private files পাথ দেখুন:
> cd /var/www/html
> drush status
files/private files sites ডিরেক্টরির মধ্যে না থাকলে, উপরে দেখানো পদ্ধতিতে RPM-ভিত্তিক সার্ভারে কপি করুন। - RPM-ভিত্তিক পোর্টাল থেকে, ডিফল্ট ডেটাবেসের প্রপার্টি সেট করতে /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 হল tar-ভিত্তিক পোর্টালে কাস্টম ডেটাবেসের জন্য সংজ্ঞায়িত করা মান এবং prefix হল খালি। -
RPM-ভিত্তিক পোর্টালে, পোর্টালে RPM-ভিত্তিক ভার্সনে tar-ভিত্তিক ভার্সনের তুলনায় কম
Drupal মডিউল থাকে। RPM-ভিত্তিক পোর্টালে মাইগ্রেট করার পরে, আপনাকে
অবশ্যই কোনও মডিউল অনুপস্থিত আছে কিনা তা চেক করতে হবে এবং প্রয়োজন অনুযায়ী সেগুলি ইনস্টল করতে হবে।
- হারিয়ে যাওয়া মডিউল শনাক্ত করতে ব্যবহৃত Drupal missing_module ইনস্টল করুন:
> cd /opt/apigee/apigee-drupal/wwwroot
> drush dl missing_module
> drush en missing_module - অ্যাডমিন হিসেবে RPM-ভিত্তিক পোর্টালে লগ-ইন করুন।
- Drupal মেনু থেকে রিপোর্ট > স্ট্যাটাস রিপোর্ট বিকল্প বেছে নিন এবং কোনও মডিউল অনুপস্থিত আছে কিনা চেক করুন।
- কোনও মডিউল ইনস্টল করা না থাকলে, সেই রিপোর্ট ব্যবহার করুন অথবা নিম্নলিখিত কমান্ড ব্যবহার করুন:
> cd /opt/apigee/apigee-drupal/wwwroot
> drush dl <moduleA> <moduleB> ...
> drush en <moduleA> <moduleB> ... - সব মডিউল চালু করার পরে, ফাইলগুলির মালিকানা apigee
ব্যবহারকারীর আছে কিনা তা নিশ্চিত করুন:
> chown -LR apigee:apigee /opt/apigee/apigee-drupal/wwwroot
ফাইল অনুমতি সম্পর্কে আরও জানতে, https://www.drupal.org/node/244924 দেখুন।
- হারিয়ে যাওয়া মডিউল শনাক্ত করতে ব্যবহৃত Drupal missing_module ইনস্টল করুন:
-
RPM-ভিত্তিক পোর্টাল থেকে, কোনও সমস্যা থাকলে তা সরিয়ে দিতে ব্রাউজারে update.php রান করান।
মডিউল নেই:
- অ্যাডমিন হিসেবে RPM-ভিত্তিক পোর্টালে লগ-ইন করুন।
- ব্রাউজারে, নিম্নলিখিত URL-এ নেভিগেট করুন:
http://{portal_IP_or_DNS}:8079/update.php
যেখানে portal_IP_or_DNS হল RPM-ভিত্তিক পোর্টালের IP অ্যাড্রেস বা ডোমেন নাম। - স্ক্রিনে দেখানো প্রম্পট অনুসরণ করুন।
- আপনার নতুন RPM-ভিত্তিক পোর্টালে পয়েন্ট করার জন্য ডিএনএস এন্ট্রি আপডেট করুন।
মনে রাখবেন, পোর্টালের RPM-ভিত্তিক ভার্সন ডিফল্ট হিসেবে পোর্ট 8079 ব্যবহার করে, যেখানে tar-ভিত্তিক ভার্সন পোর্ট 80 ব্যবহার করে। আপনার DNS এন্ট্রিতে সঠিক পোর্ট নম্বর ব্যবহার করছেন কিনা তা নিশ্চিত করুন। অন্য পোর্ট ব্যবহার করা সম্পর্কে তথ্য পেতে, পোর্টালে ব্যবহৃত HTTP পোর্ট সেট করুন লিঙ্ক দেখুন।
কনভার্সন সম্পূর্ণ হয়ে গেছে।