พอร์ทัลบริการสำหรับนักพัฒนาแอป เวอร์ชัน 4.17.05
กระบวนการนี้อธิบายวิธีอัปเกรดการติดตั้ง Apigee Developer Channel Services ที่มีอยู่ภายในองค์กร
การกำหนดขั้นตอนการอัปเดตที่ถูกต้อง
ขั้นตอนที่คุณใช้เพื่ออัปเดตพอร์ทัลจะขึ้นอยู่กับการติดตั้งปัจจุบันของคุณ
- หากการติดตั้งใช้ Apache/MySQL หรือ Apache/MariaDB จากระบบที่อัปเดตเป็น 4.17.01 ให้ใช้การอัปเกรดพอร์ทัลโดยใช้ไฟล์ .tar
- หากการติดตั้งใช้ Nginx/Postgres จากการติดตั้ง 4.17.01 ใหม่ ให้ใช้การอัปเกรดพอร์ทัลโดยใช้ RPM
การกำหนดประเภทการติดตั้งปัจจุบัน
หากไม่แน่ใจเกี่ยวกับประเภทการติดตั้งปัจจุบัน ให้ใช้คำสั่งต่อไปนี้เพื่อตรวจสอบประเภทการติดตั้งดังกล่าว
- 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-drugee-devportal is up and running
+ apigee-service apigee status - apachectl -S
หากคุณใช้ Apache/MySQL หรือ Apache/MariaDB คำสั่งนี้ควรจะแสดงไดเรกทอรีรากเว็บของพอร์ทัลในรูปแบบดังนี้
*:80 192.168.56.102 (/etc/httpd/conf/vhosts/devportal.conf:1)
ไดเรกทอรีการติดตั้งเริ่มต้น
กระบวนการอัปเกรดจะถือว่าพอร์ทัลนักพัฒนาซอฟต์แวร์ได้รับการติดตั้งที่
- /opt/apigee/apigee-drupal (Nginx)
- /var/www/html (Apache)
หากคุณไม่ได้ติดตั้งพอร์ทัลในไดเรกทอรีเริ่มต้น ให้แก้ไขเส้นทางในขั้นตอนด้านล่างเพื่อใช้ไดเรกทอรีการติดตั้ง
หากไม่ทราบไดเรกทอรีการติดตั้ง คุณสามารถดูไดเรกทอรีดังกล่าวตามที่อธิบายไว้ในคำสั่ง Drush ที่ใช้กันโดยทั่วไป
ไดเรกทอรีการติดตั้งเริ่มต้นใหม่หลังจากอัปเดต Nginx/Postgres จากการติดตั้ง 4.17.01 ใหม่
หลังจากอัปเดตการติดตั้งใหม่ของ 4.17.01 ที่ใช้ Nginx/Postgres ไดเรกทอรีรากได้เปลี่ยนจาก:
/opt/apigee/apigee-drupal
กับ:
/opt/apigee/apigee-drupal/wwwroot
เวอร์ชันการอัปเกรดที่รองรับ
ขั้นตอนการอัปเกรดนี้ใช้ได้กับพอร์ทัลเวอร์ชันต่อไปนี้
- pantheon-14.02.x
- pantheon-14.03.x
- pantheon-14.04.x
- pantheon-14.07.x
- pantheon-15-01.x
- OPDK-15-04.x
- OPDK-15-07.x
- OPDK-16-01.x
- OPDK-16-05.x
- OPDK-16-09.x
- OPDK-17-01.x
หากต้องการดูเวอร์ชันพอร์ทัล ให้เปิด URL ต่อไปนี้ในเบราว์เซอร์
http://yourportal.com/buildInfo
ก่อนที่คุณจะอัปเดต
สำหรับการติดตั้งที่มีอยู่ หากคุณแก้ไขโค้ดใน Drupal Core หรือในโมดูลที่ไม่ได้กำหนดเอง ระบบจะเขียนทับการแก้ไขของคุณ ซึ่งรวมถึงการเปลี่ยนแปลงอื่นๆ ที่คุณอาจดำเนินการกับ .htaccess คุณควรสรุปไว้ว่าทุกอย่างที่อยู่นอกไดเรกทอรี /sites เป็นของ Drupal ข้อยกเว้นสำหรับกฎนี้คือ robots.txt หากไฟล์นี้อยู่ในรากของเว็บ ระบบจะเก็บรักษาไฟล์นี้ไว้ให้คุณ
ก่อนดำเนินการติดตั้ง ให้สำรองข้อมูลไดเรกทอรีรากของเว็บ Drupal ทั้งหมด หลังจากทำตามขั้นตอนการติดตั้งที่อธิบายไว้ด้านล่างแล้ว คุณจะกู้คืนการปรับแต่งจากข้อมูลสำรองได้
การอัปเกรดพอร์ทัลโดยใช้ไฟล์ .tar
- สำรองข้อมูลอินสแตนซ์ Drupal MySQL/MariaDB
ดูข้อมูลเพิ่มเติมได้ที่ http://www.thegeekstuff.com/2008/09/backup-and-restore-mysql-database-using-mysqldump/- ตัวเลือกที่ 1: ใช้ Drush
คำสั่ง Drush sql-dump สร้างสำเนาฐานข้อมูล จากไดเรกทอรี Drupal ของคุณ /var/www/html ให้เรียกใช้คำสั่งต่อไปนี้
> drush sql-dump > /path/to/backup_dir/database-backup.sql
ใช้ drush help sql-dump เพื่อดูข้อมูลเพิ่มเติม - ตัวเลือกที่ 2: ใช้ MySQLdump
ใช้คำสั่ง mysqldump เพื่อสร้างสำเนาของฐานข้อมูล:
mysqldump -u USERNAME -p'PASSWORD' DATABASENAME > /path/to/backup_dir/database-backup.sql
ต้องไม่มีช่องว่างระหว่างตัวเลือก -p ต้องมีเครื่องหมายคำพูดเดี่ยวล้อมรอบรหัสผ่าน หากรหัสผ่านมีสัญลักษณ์พิเศษ
คุณตั้งค่าชื่อผู้ใช้และฐานข้อมูล เมื่อติดตั้งพอร์ทัล โดยค่าเริ่มต้น ทั้ง 2 อย่างเป็น devportal
- ตัวเลือกที่ 1: ใช้ Drush
- ทำการสำรองข้อมูลไดเรกทอรีรากของเว็บ Drupal ทั้งหมด ตำแหน่งการติดตั้งเริ่มต้นคือ /var/www/html แต่คุณอาจเปลี่ยนไป ณ เวลาที่ติดตั้ง
- ดาวน์โหลดไฟล์ DeveloperServices_x.y.z.tar จาก ftp.apigee.com โดย x.y.z ตรงกับหมายเลขเวอร์ชันของพอร์ทัล เมื่อได้รับข้อความแจ้ง ให้ป้อนข้อมูลเข้าสู่ระบบที่คุณได้รับจาก Apigee
คุณดาวน์โหลดไฟล์จากลิงก์ที่ Apigee ส่งถึงคุณในเบราว์เซอร์ได้ หรือโดยการคัดลอกแล้วเพิ่มไฟล์ดังกล่าวลงในคำสั่ง cURL ต่อไปนี้
> curl -kOL <paste link ที่นี่>
หมายเหตุ: หากพอร์ทัลอยู่บนเซิร์ฟเวอร์ที่ไม่มีการเชื่อมต่ออินเทอร์เน็ตภายนอก ให้ทำขั้นตอนนี้ในเซิร์ฟเวอร์ที่มีสิทธิ์เข้าถึง
ไปที่ Apigee Edge Support แล้วเลือกเข้าสู่ระบบพอร์ทัลการสนับสนุนเพื่อขอไฟล์ .tar สำหรับการอัปเกรดบริการช่องทางขายสำหรับนักพัฒนาซอฟต์แวร์ หากยังไม่มีบัญชีในพอร์ทัลการสนับสนุน ให้เลือกเข้าสู่ระบบพอร์ทัลการสนับสนุน แล้วเลือกรีบไหม ส่งคำขอแจ้งปัญหาที่นี่ -
หากต้องการอัปเกรดเซิร์ฟเวอร์ที่มีการเชื่อมต่ออินเทอร์เน็ต ให้ทำดังนี้
- แตกไฟล์อัปเกรดพอร์ทัลดังนี้
> tar -xvf <tar file>
การแยกด้วยคำสั่งนี้จะสร้างไดเรกทอรีใหม่ที่ชื่อว่า DeveloperServices-4.x.y.z - เปลี่ยนเป็นไดเรกทอรี DeveloperServices-4.x.y.z
- ดาวน์โหลด Drupal เวอร์ชันล่าสุดโดยใช้คำสั่งต่อไปนี้
> drush dl drupal
คำสั่งนี้จะสร้างไดเรกทอรีชื่อ drupal-x.y โดยที่ x.y จะสอดคล้องกับเวอร์ชันปัจจุบันของ Drupal - เรียกใช้สคริปต์ networked-update.sh ดังนี้
> ./networked-update.sh
คุณอาจต้องใช้ sudo เพื่อเรียกใช้คำสั่งนี้หรือเรียกใช้ในฐานะผู้ดูแลระบบ ทั้งนี้ขึ้นอยู่กับสิทธิ์ของไฟล์ - หากต้องการรับการแจ้งเตือนการอัปเดต Drupal ให้ตรวจสอบว่าเปิดใช้โมดูลเครื่องมือจัดการการอัปเดต Drupal แล้ว จากเมนู Drupal ให้เลือก Modules แล้วเลื่อนลงไปที่โมดูล Update Manager หากไม่ได้เปิดใช้ ให้เปิดใช้งาน
เมื่อเปิดใช้แล้ว คุณจะดูการอัปเดตที่มีอยู่ได้โดยใช้รายการในเมนูรายงาน > การอัปเดตที่พร้อมใช้งาน
ใช้รายการในเมนูรายงาน > การอัปเดตที่พร้อมใช้งาน > การตั้งค่า เพื่อกำหนดค่าโมดูลให้ส่งอีเมลถึงคุณเมื่อมีการอัปเดต และเพื่อตั้งค่าความถี่ในการตรวจหาการอัปเดต
- แตกไฟล์อัปเกรดพอร์ทัลดังนี้
-
หากต้องการอัปเกรดในเซิร์ฟเวอร์ที่ไม่มีการเชื่อมต่ออินเทอร์เน็ต ให้ทำดังนี้
- ในเซิร์ฟเวอร์ที่คุณดาวน์โหลดไฟล์ DeveloperServices_x.y.z.tar ให้แยกไฟล์อัปเกรดพอร์ทัล
> tar -xvf <tar file>
การดึงข้อมูลด้วยคำสั่งนี้จะสร้างไดเรกทอรีใหม่ที่ชื่อว่า DeveloperServices-4.x.y.z - เปลี่ยนเป็นไดเรกทอรี DeveloperServices-4.x.y.z
- เรียกใช้สคริปต์ non-networked-update.sh ดังนี้
> ./non-networked-update.sh
คุณอาจต้องใช้ sudo เพื่อเรียกใช้คำสั่งนี้หรือเรียกใช้ในฐานะผู้ดูแลระบบ ขึ้นอยู่กับสิทธิ์ของไฟล์
คำสั่งนี้จะดาวน์โหลดไฟล์อัปเดตที่จำเป็นทั้งหมดและจัดแพ็กเกจเป็นไฟล์เดียวที่ชื่อ devportal-update.tgz และเขียนไฟล์ไปยังตำแหน่งที่คุณเลือก - คัดลอก devportal-update.tgz ไปยังเซิร์ฟเวอร์เป้าหมายซึ่งเป็นเซิร์ฟเวอร์ที่เรียกใช้พอร์ทัลนี้
หมายเหตุ: อย่าคัดลอก devportal-update.tgz ไปยังรูทของเว็บของเซิร์ฟเวอร์เป้าหมาย - ยกเลิกไฟล์ devportal-update.tgz ไปยังไดเรกทอรีปัจจุบัน ดังนี้
> tar -xzf /path/to/devportal-update.tgz - เปลี่ยนเป็นไดเรกทอรี developer-update
- เรียกใช้คำสั่งต่อไปนี้เพื่อติดตั้งการอัปเดต
> ./install-update.sh - ตอบรับข้อความแจ้ง
- ในเซิร์ฟเวอร์ที่คุณดาวน์โหลดไฟล์ DeveloperServices_x.y.z.tar ให้แยกไฟล์อัปเกรดพอร์ทัล
การอัปเกรดเสร็จสมบูรณ์แล้ว
การอัปเกรดพอร์ทัลโดยใช้ RPM
ใช้ขั้นตอนต่อไปนี้เพื่ออัปเดต RPM ของพอร์ทัลบนโหนด
- เปลี่ยนเป็นไดเรกทอรี Drupal /opt/apigee/apigee-drupal
โดยค่าเริ่มต้น
> cd /opt/apigee/apigee-drupal - สำรองข้อมูลอินสแตนซ์ฐานข้อมูล Drupal คำสั่ง pg_dump จะสร้างสำเนาของฐานข้อมูลดังนี้
pg_dump --dbname=devportal --host=192.168.56.101 --username=drupaladmin --password --format=c > /tmp/portal.dmp
โดยที่- dbname ระบุชื่อฐานข้อมูลตามที่พร็อพเพอร์ตี้ PG_NAME ระบุในไฟล์การกำหนดค่าการติดตั้งพอร์ทัล
- host จะระบุที่อยู่ IP ของโหนดพอร์ทัล
- username ระบุชื่อผู้ใช้ Postgres ที่พอร์ทัลใช้ในการเข้าถึงฐานข้อมูลตามที่พร็อพเพอร์ตี้ DRUPAL_PG_USER ระบุไว้ในไฟล์การกำหนดค่าการติดตั้งพอร์ทัล
- ระบบจะแจ้งให้คุณป้อนรหัสผ่านผู้ใช้ Postgres ตามที่กำหนดโดยพร็อพเพอร์ตี้ DRUPAL_PG_PASS ในไฟล์การกำหนดค่าการติดตั้งพอร์ทัล
หากคุณต้องคืนค่าจากข้อมูลสำรองในภายหลัง ให้ใช้คำสั่งต่อไปนี้
pg_restore --clean --dbname=devportal --host=localhost --username=apigee < /tmp/portal.dmp - ทำการสำรองข้อมูลไดเรกทอรีรากของเว็บ Drupal ทั้งหมด ตำแหน่งการติดตั้งเริ่มต้นคือ /opt/apigee/apigee-drupal แต่คุณอาจมีการเปลี่ยนแปลง
หากไม่แน่ใจตำแหน่งของไดเรกทอรีนี้ ให้ใช้คำสั่ง drush status หรือรายการการกำหนดค่า > สื่อ > ไฟล์ในเมนู Drupal เพื่อระบุตำแหน่งของระบบไฟล์สาธารณะและเส้นทางระบบไฟล์ส่วนตัว (สำหรับขั้นตอนถัดไป) - สำรองข้อมูลไฟล์ใน /opt/apigee/data/apigee-drupal-devportal/private
- ปิดใช้ SELinux ตามที่อธิบายไว้ในติดตั้งยูทิลิตี Edge Apigee-setup
-
หากต้องการอัปเกรดเซิร์ฟเวอร์ที่มีการเชื่อมต่ออินเทอร์เน็ต ให้ทำดังนี้
- ดาวน์โหลดไฟล์ Edge 4.17.05 bootstrap_4.17.05.sh ไปยัง
bootstrap_4.17.05.sh:
> curl https://software.apigee.com/ไม้ช่วยเหลือ 4.17.05.sh -o /tmp/หัวข้อบูตtrap_4.17 - ติดตั้งยูทิลิตีและทรัพยากร Dependency ของ Edge 4.17.05 apigee-service ดังนี้
> sudo bash /tmp/Boottrap_4.17.05.sh apigeeuser=uName apigeepassword=pWord
โดยที่ uuName:pgeeApi.Api. คือชื่อผู้ใช้และรหัสผ่านที่ได้รับจาก หากคุณไม่ได้ใส่ pWord ระบบจะขอให้คุณป้อนคำนั้น
โดยค่าเริ่มต้น โปรแกรมติดตั้งจะตรวจสอบว่าคุณติดตั้ง Java 1.8 หรือไม่ คุณใช้ตัวเลือก "C" เพื่อดำเนินการต่อโดยไม่ต้องติดตั้ง Java ได้
- ดาวน์โหลดไฟล์ Edge 4.17.05 bootstrap_4.17.05.sh ไปยัง
bootstrap_4.17.05.sh:
-
หากต้องการอัปเกรดในเซิร์ฟเวอร์ที่ไม่มีการเชื่อมต่ออินเทอร์เน็ต ให้ทำดังนี้
- สร้างที่เก็บ 4.17.05 ในเครื่องตามที่อธิบายไว้ใน "สร้างที่เก็บ Apigee ในเครื่อง" ที่ติดตั้งยูทิลิตี Edge Apigee-setup
หมายเหตุ: หากมีที่เก็บ 4.17.01 อยู่แล้ว คุณจะเพิ่มที่เก็บ 4.17.05 ลงในที่เก็บได้ตามที่อธิบายไว้ใน "อัปเดตที่เก็บ Apigee ในเครื่อง" ที่ติดตั้งยูทิลิตี Edge apigee-setup -
วิธีติดตั้ง apigee-service จากไฟล์ .tar
- บนโหนดที่มีที่เก็บในเครื่อง ให้ใช้คำสั่งต่อไปนี้เพื่อแพ็กเกจ repo ในเครื่องลงในไฟล์ .tar ไฟล์เดียวที่ชื่อ /opt/apigee/data/apigee-mirror/apigee-4.17.05.tar.gz:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package - คัดลอกไฟล์ .tar ไปยังโหนดที่ต้องการอัปเดต Edge เช่น คัดลอกไปยังไดเรกทอรี /tmp ในโหนดใหม่
- ในโหนดใหม่ ให้ยกเลิกไฟล์ไปยังไดเรกทอรี /tmp ดังนี้
> tar -xzf apigee-4.17.05.tar.gz
คำสั่งนี้จะสร้างไดเรกทอรีใหม่ชื่อ repos ในไดเรกทอรีที่มีไฟล์ .tar ตัวอย่างเช่น /tmp/repos - ติดตั้งยูทิลิตี apigee-service และ
ทรัพยากร Dependency จาก /tmp/repos:
> sudo bash /tmp/repos/เล่น Boottrap_4.17.05.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
แจ้งว่าคุณใส่เส้นทางไปยังไดเรกทอรีคำสั่งนี้ในไดเรกทอรี repos
- บนโหนดที่มีที่เก็บในเครื่อง ให้ใช้คำสั่งต่อไปนี้เพื่อแพ็กเกจ repo ในเครื่องลงในไฟล์ .tar ไฟล์เดียวที่ชื่อ /opt/apigee/data/apigee-mirror/apigee-4.17.05.tar.gz:
-
วิธีติดตั้ง Apigee-service โดยใช้เว็บเซิร์ฟเวอร์ Nginx
- กำหนดค่าเว็บเซิร์ฟเวอร์ Nginx ตามที่อธิบายไว้ใน "ติดตั้งจากที่เก็บโดยใช้เว็บเซิร์ฟเวอร์ Nginx" ที่ติดตั้งยูทิลิตี Edge apigee-setup
- ในโหนดระยะไกล ให้ดาวน์โหลดไฟล์ Edge bootstrap_4.17.05.sh ไปยัง
bootstrap_4.17.05.sh:
> /usr/bin/curl http://uName:pWord@remoteRepo:3939/remoteREpo:3939 /remoteRepo:3939/remoteRepo
- ในโหนดระยะไกล ให้ติดตั้งยูทิลิตีและทรัพยากร Dependency apigee-service ของ Edge:
> sudo bash /tmp/ Boottrap_4.17.05.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pugeeWord
protocol โดยที่ apigee Word
- สร้างที่เก็บ 4.17.05 ในเครื่องตามที่อธิบายไว้ใน "สร้างที่เก็บ Apigee ในเครื่อง" ที่ติดตั้งยูทิลิตี Edge Apigee-setup
- ใช้ apigee-service เพื่ออัปเดตยูทิลิตี apigee-setup
>
/opt/apigee/apigee-service/bin/apigee-service apigee-setup
- เรียกใช้ยูทิลิตีการอัปเดตในโหนดเพื่ออัปเดตฐานข้อมูล Postgres ดังนี้
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
โดย configFile คือไฟล์การกำหนดค่าที่คุณใช้ติดตั้งฐานข้อมูล Postgres ข้อกำหนดเพียงอย่างเดียวในไฟล์การกำหนดค่าคือผู้ใช้ "apigee" ต้องเข้าถึงหรืออ่านไฟล์การกำหนดค่าได้ - เริ่มต้น Postgres:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start - เรียกใช้ยูทิลิตีการอัปเดตในโหนดเพื่ออัปเดตพอร์ทัลดังนี้
> /opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile
โดยที่ configFile คือไฟล์การกำหนดค่าที่คุณใช้ติดตั้งพอร์ทัล ข้อกำหนดเพียงอย่างเดียวในไฟล์การกำหนดค่าคือผู้ใช้ "apigee" ต้องเข้าถึงหรืออ่านไฟล์การกำหนดค่าได้
โปรดทราบว่าตอนนี้ไดเรกทอรีรากของ "หลังการอัปเดต" คือ
/opt/apigee/apigee-drupal/wwwroot
การอัปเกรดเสร็จสมบูรณ์แล้ว