Edge for Private Cloud v4.18.05
พอร์ทัลบริการสำหรับนักพัฒนาซอฟต์แวร์ Apigee เวอร์ชัน 4.18.05 (หรือเรียกง่ายๆ ว่าพอร์ทัล) ไม่อนุญาตให้คุณอัปเดต พอร์ทัลเวอร์ชัน tar-based คุณจะอัปเดตพอร์ทัลเวอร์ชันที่อิงตาม RPM ได้โดยตรงเท่านั้น เป็น 4.18.05
อย่างไรก็ตาม คุณสามารถแปลงพอร์ทัลเวอร์ชันที่ใช้ tar เป็นอินสแตนซ์ที่อิงตาม RPM ของ 4.18.05 พอร์ทัล ในกระบวนการนี้ คุณจะย้ายข้อมูล MySQL/MariaDB ของพอร์ทัลที่มีอยู่ไปยัง ฐานข้อมูล Postgres เมื่อแปลงแล้ว พอร์ทัลของคุณจะยังคงเป็นพอร์ทัลที่อิงตาม RPM
คุณสามารถย้ายข้อมูลพอร์ทัลที่ใช้ tar เวอร์ชันก่อนหน้าหลายเวอร์ชันไปยังพอร์ทัลที่ใช้ RPM ได้ ซึ่งรวมถึงเวอร์ชัน 4.16.09 และ 4.17.01 ไม่ใช่เวอร์ชัน 4.17.05 เท่านั้น ข้อกำหนดเพียงอย่างเดียวคือ พอร์ทัลใช้ Drupal 7 ขึ้นไป หากต้องการตรวจสอบเวอร์ชัน Drupal ให้เลือกรายงาน รายงานสถานะในเมนู Drupal เวอร์ชันของ Drupal จะปรากฏในแถวแรก ของเอาต์พุต
ขั้นตอนระดับสูงที่คุณใช้เพื่อย้ายข้อมูลจากพอร์ทัลที่ใช้ tar ไปยังพอร์ทัลที่ใช้ RPM ได้แก่
- ติดตั้งพอร์ทัลเวอร์ชัน RPM 4.18.05 ใน โหนดใหม่
- สร้างฐานข้อมูล Postgres ใหม่ในพอร์ทัลที่อิงตาม RPM
- ย้ายข้อมูลฐานข้อมูลพอร์ทัลจากพอร์ทัลที่อิงตาม tar
- คัดลอกไฟล์อุปกรณ์เสริมทั้งหมดจากพอร์ทัลที่ใช้ tar ไปยังตาม RPM พอร์ทัล
- อัปเดตรายการ DNS ให้ชี้ไปยังพอร์ทัลใหม่ที่อิงตาม RPM
โปรดทราบว่าพอร์ทัลเวอร์ชันที่ใช้ RPM จะใช้พอร์ต 8079 โดยค่าเริ่มต้น เวอร์ชันใช้พอร์ต 80 ตรวจสอบว่าคุณใช้หมายเลขพอร์ตที่ถูกต้องในรายการ DNS โปรดดู ตั้งค่าพอร์ต HTTP ที่พอร์ทัลใช้สำหรับข้อมูล เมื่อใช้พอร์ตอื่น
ไดเรกทอรีการติดตั้งที่เป็นค่าเริ่มต้นใหม่หลังจาก Conversion
หลังจากอัปเดตการติดตั้งที่ใช้ Nginx/Postgres ในขณะนี้ ไดเรกทอรีรากมีการเปลี่ยนแปลง ตั้งแต่:
/opt/apigee/apigee-drupal
ถึง:
/opt/apigee/apigee-drupal/wwwroot
กระบวนการแปลงพอร์ทัล
หากต้องการแปลงพอร์ทัลเป็นการติดตั้งตาม RPM ให้ทำดังนี้
- ติดตั้งพอร์ทัลเวอร์ชัน 4.18.05 ที่อิงตาม RPM บนโหนดอื่นที่ไม่ใช่ tar แบบ tar พอร์ทัล
- ในพอร์ทัลที่อิงตาม RPM ให้สร้างฐานข้อมูล Postgres ใหม่ หลังจากนั้นคุณย้ายข้อมูล
จากพอร์ทัลแบบ tar ไปยังฐานข้อมูลใหม่นี้
- ลงชื่อเข้าสู่ระบบ psql:
psql -h localhost -p 5432 -U apigee
ป้อนรหัสผ่าน Postgres ตามที่กำหนดโดยพร็อพเพอร์ตี้ PG_PWD ในการกำหนดค่าพอร์ทัล
- สร้างฐานข้อมูล 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 ให้ติดตั้งและกำหนดค่าโมดูล 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
- ลงชื่อเข้าสู่ระบบพอร์ทัลในฐานะผู้ดูแลระบบ
- เลือก Modules ในเมนู Drupal
- เปิดใช้โมดูล DBTNG Migrator
- บันทึกการกำหนดค่า
-
- ในพอร์ทัลที่อิงตาม Tar ให้แก้ไข
/var/www/html/sites/default/settings.php
เพื่อเพิ่มการกำหนดค่าฐานข้อมูลที่สองซึ่งชี้ไปยังฐานข้อมูลที่สร้างขึ้นใหม่ที่อิงตาม RPM พอร์ทัล การกำหนดค่าฐานข้อมูลปัจจุบันมีชื่อว่า "default" ตั้งชื่อการกำหนดค่าใหม่ "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
ระบุที่อยู่ IP และพอร์ตของ เซิร์ฟเวอร์ Postgres Postgres ใช้พอร์ต 5432 สำหรับการเชื่อมต่อ -
ในพอร์ทัลแบบ Tar ให้ติดตั้งไดรเวอร์ Postgres โดยทำดังนี้
- ใช้ Yum เพื่อติดตั้งไดรเวอร์ดังนี้
yum install php-pdo_pgsql
- แก้ไข
/etc/php.ini
เพื่อเพิ่มบรรทัดต่อไปนี้ไว้ที่ใดก็ได้ในไฟล์extension=pgsql.so
- รีสตาร์ท Apache
service httpd restart
- ใช้ Yum เพื่อติดตั้งไดรเวอร์ดังนี้
- ในพอร์ทัลที่อิงตาม Tar ให้ย้ายฐานข้อมูลพอร์ทัลไปยังตาม RPM
พอร์ทัล:
- ลงชื่อเข้าสู่ระบบพอร์ทัลในฐานะผู้ดูแลระบบ
- เลือก Structure->Migrator ในเมนู Drupal
- เลือกฐานข้อมูลต้นทางของคุณในพอร์ทัลแบบ Tar,
default
และ ฐานข้อมูลปลายทางcustom
ตามไฟล์ที่แสดงsettings.php
ไฟล์ ที่ด้านบน - คลิกย้ายข้อมูล ฐานข้อมูลที่อิง tar จะถูกย้ายไปยัง RPM ฐานข้อมูล
- คัดลอกไดเรกทอรี
sites
จากเซิร์ฟเวอร์ที่ทำงานกับ tar ไปยังเซิร์ฟเวอร์ที่ใช้ RPM เส้นทางที่แสดงในขั้นตอนต่อไปนี้อิงตามเส้นทางเริ่มต้น แก้ไขตามความจำเป็น การติดตั้งของคุณ- รวมไดเรกทอรี
/var/www/html/sites
ในพอร์ทัลที่อิงตาม Tarcd /var/www/html/sites
tar -cvzf /tmp/sites.tar.gz .
- คัดลอก
/tmp/sites.tar.gz
ไปที่/opt/apigee/apigee-drupal/wwwroot/sites
ในเซิร์ฟเวอร์ที่อิงตาม RPM - เลิกรวมไดเรกทอรีของ 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
- แตกและแตกไดเรกทอรี
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
- สำรองไฟล์
- รวมไดเรกทอรี
- ในพอร์ทัลแบบ tar-based เฉพาะในกรณีที่คุณเปลี่ยนเส้นทางไปยังรูทของเว็บเท่านั้น
ในพอร์ทัลแบบ tar จากเส้นทางเริ่มต้นของ /var/www/html: run
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
และpassword
สำหรับฐานข้อมูลที่กำหนดเอง ในพอร์ทัลแบบ Tar และprefix
ว่างเปล่า - ในพอร์ทัลที่อิงตาม RPM พอร์ทัลเวอร์ชันที่อิงตาม RPM จะมีจำนวนน้อยกว่า
โมดูลของ Drupal ดีกว่าเวอร์ชันที่อิงตาม Tar หลังจากที่ย้ายข้อมูลไปยังพอร์ทัลที่อิงตาม 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
- ในพอร์ทัลที่ใช้ RPM ให้เรียกใช้ update.php ในเบราว์เซอร์เพื่อนำข้อผิดพลาดออก
เกี่ยวกับโมดูลที่ขาดหายไป:
- ลงชื่อเข้าสู่ระบบพอร์ทัลที่ใช้ RPM ในฐานะผู้ดูแลระบบ
- ในเบราว์เซอร์ ให้ไปที่ URL ต่อไปนี้
http://portal_IP_or_DNS:8079/update.php
โดยที่ portal_IP_or_DNS คือที่อยู่ IP หรือชื่อโดเมนที่อิงตาม RPM พอร์ทัล
- ทำตามข้อความที่ปรากฏบนหน้าจอ
- อัปเดตรายการ DNS ให้ชี้ไปยังพอร์ทัลใหม่ที่อิงตาม RPM
โปรดทราบว่าพอร์ทัลเวอร์ชันที่ใช้ RPM จะใช้พอร์ต 8079 โดยค่าเริ่มต้น เวอร์ชันใช้พอร์ต 80 ตรวจสอบว่าคุณใช้หมายเลขพอร์ตที่ถูกต้องในรายการ DNS โปรดดู ตั้งค่าพอร์ต HTTP ที่พอร์ทัลใช้สำหรับข้อมูลเกี่ยวกับ โดยใช้พอร์ตอื่น
การแปลงเสร็จสมบูรณ์