Apigee Developer Services পোর্টালের (বা সহজভাবে, পোর্টাল) 4.18.05 রিলিজ আপনাকে পোর্টালের আগের tar-ভিত্তিক ভার্সন আপডেট করতে দেয় না। আপনি পোর্টালের RPM-ভিত্তিক ভার্সন সরাসরি 4.18.05-এ আপডেট করতে পারবেন।
তবে, আপনি পোর্টালের tar-ভিত্তিক ভার্সনকে পোর্টালের 4.18.05 RPM-ভিত্তিক ইনস্ট্যান্সে কনভার্ট করতে পারবেন। এই প্রসেসের অংশ হিসেবে, আপনি আগে থেকে থাকা পোর্টালের MySQL/MariaDB-কে Postgres ডেটাবেসে মাইগ্রেট করেন। কনভার্ট করা হয়ে গেলে, আপনার পোর্টাল RPM-ভিত্তিক পোর্টাল হিসেবেই থেকে যায়।
আপনি tar-ভিত্তিক পোর্টালের অনেক আগের ভার্সন RPM-ভিত্তিক পোর্টালে মাইগ্রেট করতে পারবেন, যার মধ্যে 4.16.09 এবং 4.17.01 ভার্সনও রয়েছে, শুধু 4.17.05 ভার্সন নয়। একমাত্র প্রয়োজনীয়তা হল পোর্টালটি Drupal 7 বা তার পরবর্তী ভার্সনে চলছে। Drupal-এর ভার্সন চেক করতে, Drupal মেনু থেকে রিপোর্ট > স্ট্যাটাস রিপোর্ট বিকল্প বেছে নিন। আউটপুটের প্রথম সারিতে Drupal-এর ভার্সন দেখা যাবে।
টার-ভিত্তিক পোর্টাল থেকে RPM-ভিত্তিক পোর্টালে মাইগ্রেট করার জন্য আপনি যে হাই-লেভেল ধাপগুলি ব্যবহার করেন সেগুলি হল:
- নতুন নোডে পোর্টালের RPM-ভিত্তিক 4.18.05 ভার্সন ইনস্টল করুন।
- RPM-ভিত্তিক পোর্টালে নতুন Postgres ডেটাবেস তৈরি করুন।
- tar-ভিত্তিক পোর্টাল থেকে পোর্টাল ডেটাবেস মাইগ্রেট করুন।
- tar-ভিত্তিক পোর্টাল থেকে সব অ্যাক্সেসরি ফাইল RPM-ভিত্তিক পোর্টালে কপি করুন।
- নতুন RPM-ভিত্তিক পোর্টাল-এ পয়েন্ট করতে ডিএনএস এন্ট্রি আপডেট করুন।
মনে রাখবেন, পোর্টালের RPM-ভিত্তিক ভার্সন ডিফল্ট হিসেবে পোর্ট ৮০৭৯ ব্যবহার করে, যেখানে tar-ভিত্তিক ভার্সন পোর্ট ৮০ ব্যবহার করে। আপনার DNS এন্ট্রিতে সঠিক পোর্ট নম্বর ব্যবহার করেছেন কিনা তা নিশ্চিত করুন। অন্য পোর্ট ব্যবহার করার ব্যাপারে তথ্যের জন্য পোর্টাল দ্বারা ব্যবহৃত HTTP পোর্ট সেট করুন দেখুন।
কনভার্সনের পরে নতুন ডিফল্ট ইনস্টলেশন ডিরেক্টরি
NGINX/Postgres ব্যবহার করে এমন ইনস্টলেশন আপডেট করার পরে, রুট ডিরেক্টরি পরিবর্তন করা হয়েছে থেকে:
/opt/apigee/apigee-drupal
এখানে:
/opt/apigee/apigee-drupal/wwwroot
পোর্টাল কনভার্সন পদ্ধতি
পোর্টালকে RPM-ভিত্তিক ইনস্টলেশনে কনভার্ট করতে:
- আপনার tar-ভিত্তিক পোর্টাল থেকে আলাদা নোডে পোর্টালের RPM-ভিত্তিক 4.18.05 ভার্সন ইনস্টল করুন।
- 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';" - tar-ভিত্তিক পোর্টালে, 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 মডিউল চালু করুন।
- কনফিগারেশন সেভ করুন।
-
- tar-ভিত্তিক পোর্টালে, RPM-ভিত্তিক পোর্টালে নতুন তৈরি করা ডেটাবেসকে পয়েন্ট করে
দ্বিতীয় ডেটাবেস কনফিগারেশন যোগ করতে
/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এবংportPostgres সার্ভারের IP অ্যাড্রেস এবং পোর্ট নির্দিষ্ট করে। Postgres কানেকশনের জন্য পোর্ট ৫৪৩২ ব্যবহার করে। -
tar-ভিত্তিক পোর্টালে, Postgres ড্রাইভার ইনস্টল করুন:
- ড্রাইভার ইনস্টল করতে Yum ব্যবহার করুন:
yum install php-pdo_pgsql
- ফাইলের যেকোনও জায়গায় নিম্নলিখিত লাইন যোগ করতে
/etc/php.iniএডিট করুন:extension=pgsql.so
- Apache রিস্টার্ট করুন:
service httpd restart
- ড্রাইভার ইনস্টল করতে Yum ব্যবহার করুন:
- tar-ভিত্তিক পোর্টালে, পোর্টাল ডেটাবেস RPM-ভিত্তিক পোর্টালে
মাইগ্রেট করুন:
- অ্যাডমিন হিসেবে পোর্টালে লগ-ইন করুন।
- Drupal মেনুতে Structure->Migrator বেছে নিন।
- উপরে দেখানো
settings.phpফাইলের ভিত্তিতে, tar-ভিত্তিক পোর্টালে আপনার সোর্স ডেটাবেস,default, এবং ডেস্টিনেশন ডেটাবেস,custom, বেছে নিন। - মাইগ্রেট করুন বিকল্পে ক্লিক করুন। tar-ভিত্তিক ডেটাবেস RPM-ভিত্তিক ডেটাবেসে মাইগ্রেট করা হয়েছে।
- tar-ভিত্তিক সার্ভার থেকে RPM-ভিত্তিক সার্ভারে
sitesডিরেক্টরি কপি করুন। নিম্নলিখিত ধাপে দেখানো পাথ ডিফল্ট পাথের উপর ভিত্তি করে তৈরি। আপনার ইনস্টলেশনের জন্য প্রয়োজন অনুযায়ী সেগুলি পরিবর্তন করুন।- tar-ভিত্তিক পোর্টালে,
/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
- আগে থেকে থাকা
filesডিরেক্টরির ব্যাক-আপ নিন:sudo mv /opt/apigee/apigee-drupal/wwwroot/sites/default/files /opt/apigee/apigee-drupal/wwwroot/sites/default/files_old
- আগে থেকে থাকা
sitesডিরেক্টরির ব্যাক-আপ নিন:tar -cvzf /tmp/sites_old.tar.gz /opt/apigee/apigee-drupal/wwwroot/sites
- tar-ভিত্তিক সার্ভার থেকে
sitesডিরেক্টরি আনজিপ ও আনটার করুন: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/privatechown -R apigee:apigee /opt/apigee/data/apigee-sap-drupal-devportal/private
- tar-ভিত্তিক পোর্টালে,
- tar-ভিত্তিক পোর্টালে, শুধুমাত্র আপনি যদি tar-ভিত্তিক পোর্টালে ওয়েব রুট ডিরেক্টরির পাথ /var/www/html-এর ডিফল্ট পাথ থেকে পরিবর্তন করে থাকেন:
drush statusরান করুন এবংfilesপাথ ওprivate filesপাথ দেখুন:cd /var/www/html
drush statusফাইল/ব্যক্তিগত ফাইল
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এবংpasswordtar-ভিত্তিক পোর্টালে কাস্টম ডেটাবেসের জন্য সংজ্ঞায়িত করা হয়েছে এবংprefixখালি আছে। - RPM-ভিত্তিক পোর্টালে, পোর্টালের RPM-ভিত্তিক ভার্সনে tar-ভিত্তিক ভার্সনের চেয়ে কম
Drupal মডিউল থাকে। RPM-ভিত্তিক পোর্টালে মাইগ্রেট করার পরে, আপনাকে
অবশ্যই কোনও অনুপস্থিত মডিউল আছে কিনা তা চেক করতে হবে এবং প্রয়োজন অনুযায়ী সেগুলি ইনস্টল করতে হবে।
- অনুপস্থিত মডিউল শনাক্ত করতে ব্যবহৃত Drupal
missing_moduleইনস্টল করুন:cd /opt/apigee/apigee-drupal/wwwroot
drush dl missing_moduledrush 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
- RPM-ভিত্তিক পোর্টালে, কোনও মডিউল না থাকার কারণে কোনও সমস্যা হলে তা সমাধান করতে
ব্রাউজারে update.php রান করুন:
- অ্যাডমিন হিসেবে RPM-ভিত্তিক পোর্টালে লগ-ইন করুন।
- ব্রাউজারে, নিম্নলিখিত URL-এ নেভিগেট করুন:
http://portal_IP_or_DNS:8079/update.php
যেখানে portal_IP_or_DNS হল RPM-ভিত্তিক পোর্টালের IP অ্যাড্রেস বা ডোমেন নাম।
- স্ক্রিনে দেখানো প্রম্পট অনুসরণ করুন।
- আপনার নতুন RPM-ভিত্তিক পোর্টাল পয়েন্ট করতে ডিএনএস এন্ট্রি আপডেট করুন।
মনে রাখবেন, পোর্টালের RPM-ভিত্তিক ভার্সন ডিফল্ট হিসেবে পোর্ট ৮০৭৯ ব্যবহার করে, যেখানে tar-ভিত্তিক ভার্সন পোর্ট ৮০ ব্যবহার করে। আপনার DNS এন্ট্রিতে সঠিক পোর্ট নম্বর ব্যবহার করেছেন কিনা তা নিশ্চিত করুন। অন্য পোর্ট ব্যবহার করার ব্যাপারে তথ্যের জন্য পোর্টাল দ্বারা ব্যবহৃত HTTP পোর্ট সেট করুন দেখুন।
কনভার্সন সম্পূর্ণ হয়েছে।