این رویه نحوه ارتقا دادن نصب موجود «درونسازمانی» درگاه «خدمات توسعهدهندگان Apigee» (یا بهطور ساده، درگاه) را شرح میدهد.
تعیین روش صحیح بهروزرسانی
روشی که برای بهروزرسانی درگاه استفاده میکنید براساس نصب فعلی شما است:
- اگر نصب شما از NGINX/Postgres استفاده میکند، از ارتقا دادن درگاه بااستفاده از RPMs در زیر استفاده کنید.
- اگر نصب شما از Apache/MySQL یا Apache/MariaDB استفاده میکند، سپس تبدیل یک درگاه مبتنی بر tar به درگاه مبتنی بر RPM را ببینید.
نوع نصب فعلیتان را تعیین کنید
اگر درباره نوع نصب فعلی خود مطمئن نیستید، از فرمان زیر برای تعیین آن استفاده کنید: it:
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)
دایرکتوری نصب پیشفرض
فرایند ارتقا فرض میکند که درگاه در این مکان نصب شده است:
- ۴.۱۷.۰۵ و نسخههای جدیدتر:
/opt/apigee/apigee-drupal/wwwroot - قبلاز نسخه 4.17.05:
/opt/apigee/apigee-drupal(NGINX) یا/var/www/html(Apache)
اگر در دایرکتوری پیشفرض درگاه را نصب نکردهاید، مسیرهای رویه زیر را اصلاح کنید تا از دایرکتوری نصب خود استفاده کنید.
نسخههای پشتیبانیشده برای ارتقا
این فرایند ارتقا در نسخههای پورتال OPDK-17-01.x و جدیدتر پشتیبانی میشود.
برای تعیین نسخه درگاه، نشانی وب زیر را در مرورگر باز کنید:
http://yourportal.com/buildInfo
قبلاز بهروزرسانی
برای نصبهای موجود، اگر کدی را در هسته Drupal یا در هریک از واحدهای غیرسفارشی
تغییر داده باشید، تغییرات شما بازنویسی خواهد شد. این شامل، در میان چیزهای دیگر، هر تغییری است که ممکن است در .htaccess ایجاد کرده باشید.
باید فرض کنید که هر چیزی خارج از دایرکتوری /sites متعلق به Drupal است. استثنایی برای این قانون وجود دارد: robots.txt؛ اگر این فایل در ریشه وب وجود داشته باشد، برای شما حفظ خواهد شد.
قبلاز ادامه نصب، از کل دایرکتوری ریشه وب Drupal خود پشتیبانگیری کنید. پساز انجام مراحل نصب که در زیر توضیح داده شده است، میتوانید سفارشیسازیهای خود را از پشتیبانگیری بازیابی کنید.
ارتقا دادن یک درگاه بااستفاده از RPM
برای بهروزرسانی «درآمد هر هزار بازدید» در یک گره:
- به فهرست راهنمای Drupal،
/opt/apigee/apigee-drupalبهطور پیشفرض، تغییر دهید:cd /opt/apigee/apigee-drupal
- از نمونه پایگاه داده 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 نام کاربری Postgres است که توسط درگاه برای دسترسی به پایگاه داده استفاده میشود،
همانطور که توسط دارایی
DRUPAL_PG_USERدر فایل پیکربندی نصب درگاه مشخص شده است.
گذرواژه کاربر Postgres که توسط دارایی
DRUPAL_PG_PASSدر فایل پیکربندی نصب درگاه تعریف شده است از شما درخواست میشود.اگر بعداً بخواهید از نسخه پشتیبان بازیابی کنید، از فرمان زیر استفاده کنید:
pg_restore --clean --dbname=devportal --host=localhost --username=apigee < /tmp/portal.dmp
- devportal نام پایگاه داده است که توسط
دارایی
- از کل فهرست اصلی وب Drupal خود پشتیبانگیری کنید. مکان نصب پیشفرض
/opt/apigee/apigee-drupalاست، اما ممکن است آن را تغییر داده باشید.اگر از مکان این دایرکتوری مطمئن نیستید، از فرمان
drush statusیا ورودی پیکربندی > رسانه > فایل در منو Drupal برای تعیین مکان مسیر سیستم فایل عمومی و سیستم فایل خصوصی (برای مرحله بعدی) استفاده کنید. - از فایلهای
/opt/apigee/data/apigee-drupal-devportal/privateنسخه پشتیبان تهیه کنید. - Drupal را در حالت نگهداری قرار دهید:
- پیکربندی را در منو Drupal انتخاب کنید.
- در صفحه پیکربندی، حالت نگهداری را در بخش توسعه انتخاب کنید.
- چارگوش قرار دادن سایت در حالت نگهداری را انتخاب کنید.
- پیامی را که کاربران درطول نگهداری میبینند وارد کنید.
- ذخیره پیکربندی را انتخاب کنید.
- SELinux را طبق روشی که در نصب ابزار کمکی apigee-setup در Edge توضیح داده شده است غیرفعال کنید.
- به فهرست راهنمای
/optتغییر دهید:cd /opt
- برای ارتقا در سروری با اتصال اینترنت:
- فایل Edge 4.51.00
bootstrap_4.51.00.shرا در/tmp/bootstrap_4.51.00.shبارگیری کنید:curl https://software.apigee.com/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.sh
- ابزار و وابستگیهای Edge 4.51.00
apigee-serviceرا نصب کنید:sudo bash /tmp/bootstrap_4.51.00.sh apigeeuser=uName apigeepassword=pWord
که در آن uName و pWord نام کاربری و گذرواژهای است که از Apigee دریافت کردهاید. اگر pWord را حذف کنید، از شما خواسته میشود آن را وارد کنید.
بهطور پیشفرض، نصبکننده بررسی میکند که Java 1.8 نصب شده باشد. میتوانید از گزینه «C» برای ادامه دادن بدون نصب Java استفاده کنید.
- فایل Edge 4.51.00
- برای ارتقا در سروری که اتصال اینترنت ندارد:
- مخزن محلی 4.51.00 را همانطور که در ایجاد مخزن محلی Apigee توضیح داده شده است ایجاد کنید.
- برای نصب apigee-service از فایل .tar:
- در گره دارای مخزن محلی، از فرمان زیر برای بستهبندی مخزن محلی در یک فایل .tar واحد بهنام
/opt/apigee/data/apigee-mirror/apigee-4.51.00.tar.gzاستفاده کنید: repo into a single .tar file named :/opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
- فایل tar .را در گرهی که میخواهید Edge را بهروز کنید کپی کنید. برای مثال، آن را در
دایرکتوری
/tmpدر گره جدید کپی کنید. - در گره جدید، فایل را در دایرکتوری /tmp از حالت فشرده خارج کنید:
tar -xzf apigee-4.51.00.tar.gz
این فرمان فهرست راهنمای جدیدی به نام repos در فهرست راهنمای حاوی فایل .tar ایجاد میکند. برای مثال /tmp/repos.
- ابزار و وابستگیهای Edge
apigee-serviceرا از/tmp/reposنصب کنید:sudo bash /tmp/repos/bootstrap_4.51.00.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
توجه داشته باشید که مسیر دایرکتوری repos را در این فرمان اضافه میکنید.
- در گره دارای مخزن محلی، از فرمان زیر برای بستهبندی مخزن محلی در یک فایل .tar واحد بهنام
- برای نصب apigee-service بااستفاده از وبسرور NGINX:
- سرور وب NGINX را همانطور که در «نصب از مخزن بااستفاده از سرور وب NGINX» در نصب ابزار apigee-setup در Edge توضیح داده شده است پیکربندی کنید.
- در گره دور، فایل Edge
bootstrap_4.51.00.shرا در/tmp/bootstrap_4.51.00.shبارگیری کنید:/usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.sh
که در آن uName و pWord نام کاربری و گذرواژهای است که در بالا برای مخزن تنظیم کردهاید، و remoteRepo نشانی IP یا نام ساناد گره مخزن است.
- در گره از دور، ابزار
apigee-serviceEdge و وابستگیها را نصب کنید:sudo bash /tmp/bootstrap_4.51.00.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://
که در آن uName و pWord نام کاربری و گذرواژه مخزن هستند.
- از
apigee-serviceبرای بهروزرسانی ابزارapigee-setupاستفاده کنید:/opt/apigee/apigee-service/bin/apigee-service apigee-setup update
- ابزار
updateرا در گره Postgres خود اجرا کنید:/opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
که در آن configFile فایل پیکربندی است که برای نصب پایگاه داده Postgres استفاده کردهاید. تنها الزام فایل پیکربندی این است که فایل پیکربندی باید برای کاربر «apigee» دردسترس یا قابلخواندن باشد.
- با اجرای فرمان زیر، بستههای 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 را جستجو میکند. -
awk '{printf "%s ", $1}'نامهای RPM را چاپ میکند.
-
- برای بهروزرسانی درگاه، ابزار
updateرا در گره خود اجرا کنید:/opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile
که در آن configFile فایل پیکربندی است که برای نصب درگاه استفاده کردهاید. تنها الزام فایل پیکربندی این است که فایل پیکربندی باید برای کاربر «apigee» دردسترس یا قابلخواندن باشد.
- با باز کردن نشانی وب زیر در پنجره مرورگر، دستورگان
update.phpDrupal را اجرا کنید:http://portal_IP_DNS:8079/update.php
- غیرفعال کردن حالت نگهداری:
- پیکربندی را در منو Drupal انتخاب کنید.
- در صفحه پیکربندی، حالت نگهداری را در بخش توسعه انتخاب کنید.
- چارگوش قرار دادن سایت در حالت نگهداری را لغو انتخاب کنید.
- ذخیره پیکربندی را انتخاب کنید.
توجه داشته باشید که دایرکتوری ریشه پساز بهروزرسانی این است:
/opt/apigee/apigee-drupal/wwwroot
ارتقا اکنون تکمیل شده است. اگر ابزار Apigee update نسخه Drupal شما را تنزل داده است،
ممکن است لازم باشد ابزار ارتقای Drupal را دوباره اجرا کنید. برای اطلاعات بیشتر،
اجرای مجدد ارتقای Drupal را ببینید.
ارتقای Drupal را دوباره اجرا کنید
اگر اجرای ابزار update در Apigee برای ارتقا دادن Edge for Private Cloud درواقع منجر به تنزل نسخه Drupal شما میشود، ارتقا Drupal را دوباره نصب کنید. این ممکن است درصورتیکه در بین بهروزرسانیهای «ابر خصوصی» فقط Drupal را ارتقا داده باشید، اتفاق بیفتد.
برای مثال:
- از نسخه ۴.۱۸.۰۵ «Edge برای فضای ابری خصوصی» استفاده میکردید که شامل Drupal 7.59 بود.
- بهدلیل بهروزرسانی امنیتی الزامی، Drupal را به نسخه ۷.۶۴ ارتقا دادید.
- اکنون درحال ارتقا دادن «ابر خصوصی» به نسخه 4.19.01 هستید که شامل Drupal 7.61 است.
همانطور که این مورد نشان میدهد، نسخه Drupal مورداستفاده ابزار update Apigee
ممکن است به جدیدترین ارتقای Drupal ارجاع ندهد. درنتیجه، اکنون باید ارتقای Drupal خود را دوباره اجرا کنید تا نصب Drupal به نسخه جدیدتر برگردد.