การอัปเกรดพอร์ทัลบริการสําหรับนักพัฒนาแอป

พอร์ทัลบริการสำหรับนักพัฒนาแอป เวอร์ชัน 4.17.09

กระบวนการนี้อธิบายวิธีอัปเกรดการติดตั้ง Apigee Developer Channel Services ที่มีอยู่ภายในองค์กร

การกำหนดขั้นตอนการอัปเดตที่ถูกต้อง

ขั้นตอนที่คุณใช้เพื่ออัปเดตพอร์ทัลจะขึ้นอยู่กับการติดตั้งปัจจุบันของคุณ

การกำหนดประเภทการติดตั้งปัจจุบัน

หากไม่แน่ใจเกี่ยวกับประเภทการติดตั้งปัจจุบัน ให้ใช้คำสั่งต่อไปนี้เพื่อตรวจสอบประเภทการติดตั้งดังกล่าว

  • 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)

ไดเรกทอรีการติดตั้งเริ่มต้น

กระบวนการอัปเกรดจะถือว่าพอร์ทัลนักพัฒนาซอฟต์แวร์ได้รับการติดตั้งที่

  • 4.17.05 ขึ้นไป: /opt/apigee/apigee-drupal/wwwroot
  • ก่อนวันที่ 4.17.05: /opt/apigee/apigee-drupal (Nginx) หรือ /var/www/html (Apache)

หากคุณไม่ได้ติดตั้งพอร์ทัลในไดเรกทอรีเริ่มต้น ให้แก้ไขเส้นทางในขั้นตอนด้านล่างเพื่อใช้ไดเรกทอรีการติดตั้ง

เวอร์ชันการอัปเกรดที่รองรับ

ขั้นตอนการอัปเกรดนี้ใช้ได้กับพอร์ทัลเวอร์ชันต่อไปนี้

  • OPDK-17-01.x
  • OPDK-17-05.x

หากต้องการดูเวอร์ชันพอร์ทัล ให้เปิด URL ต่อไปนี้ในเบราว์เซอร์

http://your_portal.com/buildInfo

ก่อนที่คุณจะอัปเดต

สำหรับการติดตั้งที่มีอยู่ หากคุณแก้ไขโค้ดใน Drupal Core หรือในโมดูลที่ไม่ได้กำหนดเอง ระบบจะเขียนทับการแก้ไขของคุณ ซึ่งรวมถึงการเปลี่ยนแปลงอื่นๆ ที่คุณอาจทำใน .htaccess คุณควรสรุปไว้ว่าทุกอย่างที่อยู่นอกไดเรกทอรี /sites เป็นของ Drupal ข้อยกเว้นสำหรับกฎนี้คือ robots.txt หากไฟล์นี้อยู่ในรากของเว็บ ระบบจะเก็บรักษาไฟล์นี้ไว้ให้คุณ

ก่อนดำเนินการติดตั้ง ให้สำรองข้อมูลไดเรกทอรีรากของเว็บ Drupal ทั้งหมด หลังจากทำตามขั้นตอนการติดตั้งที่อธิบายไว้ด้านล่างแล้ว คุณจะกู้คืนการปรับแต่งจากข้อมูลสำรองได้

การอัปเกรดพอร์ทัลโดยใช้ RPM

ใช้ขั้นตอนต่อไปนี้เพื่ออัปเดต RPM ของพอร์ทัลบนโหนด

  1. เปลี่ยนเป็นไดเรกทอรี Drupal เช่น /opt/apigee/apigee-drupal/wwwroot

    cd /opt/apigee/apigee-drupal/wwwroot

    โปรดดูไดเรกทอรีการติดตั้งเริ่มต้นสำหรับไดเรกทอรีเริ่มต้นของเวอร์ชันผลิตภัณฑ์

  2. สำรองข้อมูลอินสแตนซ์ฐานข้อมูล 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
  3. ทำการสำรองข้อมูลไดเรกทอรีรากของเว็บ Drupal ทั้งหมด ตำแหน่งการติดตั้งเริ่มต้นคือ /opt/apigee/apigee-drupal แต่คุณอาจมีการเปลี่ยนแปลง
    หากไม่แน่ใจตําแหน่งของไดเรกทอรีนี้ ให้ใช้คําสั่ง drush status หรือรายการการกําหนดค่า > สื่อ > ไฟล์ในเมนู Drupal เพื่อระบุตําแหน่งของระบบไฟล์สาธารณะและเส้นทางระบบไฟล์ส่วนตัว (สำหรับขั้นตอนถัดไป)
  4. สำรองไฟล์ใน /opt/apigee/data/apigee-drupal-devportal/private
  5. ตั้งค่า Drupal เป็นโหมดการบำรุงรักษา
    1. เลือก Configuration ในเมนู Drupal
    2. ในหน้าการกำหนดค่า ให้เลือกโหมดการบำรุงรักษาภายใต้การพัฒนา
    3. เลือกช่องทำให้เว็บไซต์อยู่ในโหมดบำรุงรักษา
    4. ป้อนข้อความที่ผู้ใช้เห็นระหว่างการบำรุงรักษา
    5. เลือกบันทึกการกำหนดค่า
  6. ปิดใช้ SELinux ตามที่อธิบายไว้ในติดตั้งยูทิลิตี Edge Apigee-setup
  7. เปลี่ยนเป็นไดเรกทอรี /opt:
    cd /opt
  8. หากต้องการอัปเกรดเซิร์ฟเวอร์ที่มีการเชื่อมต่ออินเทอร์เน็ต ให้ทำดังนี้
    1. ดาวน์โหลดไฟล์ Edge 4.17.09 bootstrap_4.17.09.sh ไปยัง /tmp/bootstrap_4.17.09.sh:
      curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
    2. ติดตั้งยูทิลิตีและการอ้างอิง Edge 4.17.09 ของ apigee-service
      sudo bash /tmp/bootstrap_4.17.09.sh apigeeuser=uName
        apigeepassword=pWord

      โดย uName:pWord คือชื่อผู้ใช้และรหัสผ่านที่คุณได้รับจาก Apigee หากคุณไม่ใส่ pWord คุณจะได้รับข้อความแจ้งให้ป้อนข้อมูล

      โดยค่าเริ่มต้น โปรแกรมติดตั้งจะตรวจสอบว่าคุณติดตั้ง Java 1.8 หรือไม่ คุณใช้ตัวเลือก "C" เพื่อดำเนินการต่อโดยไม่ต้องติดตั้ง Java ได้

  9. หากต้องการอัปเกรดในเซิร์ฟเวอร์ที่ไม่มีการเชื่อมต่ออินเทอร์เน็ต ให้ทำดังนี้
    1. สร้างที่เก็บ 4.17.09 ในเครื่องตามที่อธิบายไว้ใน "สร้างที่เก็บ Apigee ในเครื่อง" ที่ติดตั้งยูทิลิตี Edge Apigee-setup
    2. วิธีติดตั้ง apigee-service จากไฟล์ .tar
      1. บนโหนดที่มีที่เก็บในเครื่อง ให้ใช้คำสั่งต่อไปนี้เพื่อแพ็กเกจที่เก็บในเครื่องลงในไฟล์ .tar ไฟล์เดียวที่ชื่อ /opt/apigee/data/apigee-mirror/apigee-4.17.09.tar.gz:
        /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
      2. คัดลอกไฟล์ .tar ไปยังโหนดที่ต้องการอัปเดต Edge เช่น คัดลอกไปยังไดเรกทอรี /tmp ในโหนดใหม่
      3. ในโหนดใหม่ ให้นำไฟล์ออกจากไดเรกทอรี /tmp ดังนี้
        tar -xzf apigee-4.17.09.tar.gz

        คำสั่งนี้จะสร้างไดเรกทอรีใหม่ที่ชื่อว่า repos ในไดเรกทอรีที่มีไฟล์ .tar ตัวอย่างเช่น /tmp/repos

      4. ติดตั้งยูทิลิตีและการอ้างอิง apigee-service Edge จาก /tmp/repos:
        sudo bash /tmp/repos/bootstrap_4.17.09.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

        โปรดสังเกตว่าคุณใส่เส้นทางไปยังไดเรกทอรี Repos ในคำสั่งนี้

    3. วิธีติดตั้ง Apigee-service โดยใช้เว็บเซิร์ฟเวอร์ Nginx
      1. กำหนดค่าเว็บเซิร์ฟเวอร์ Nginx ตามที่อธิบายไว้ใน "ติดตั้งจากที่เก็บโดยใช้เว็บเซิร์ฟเวอร์ Nginx" ที่ติดตั้งยูทิลิตี Edge apigee-setup
      2. ในโหนดระยะไกล ให้ดาวน์โหลดไฟล์ Edge bootstrap_4.17.09.sh ไปยัง /tmp/bootstrap_4.17.09.sh:
        /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.17.09.sh
          -o /tmp/bootstrap_4.17.09.sh

        โดย uName:pWord คือชื่อผู้ใช้และรหัสผ่านที่คุณตั้งค่าไว้ด้านบนสำหรับที่เก็บ และ remoteRepo คือที่อยู่ IP หรือชื่อ DNS ของโหนดที่เก็บ

      3. ติดตั้งยูทิลิตีและ Dependencies:code ของ Edge apigee-service Edge
        sudo bash /tmp/bootstrap_4.17.09.sh apigeerepohost=remoteRepo:3939
          apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://
        ในโหนดระยะไกล

        โดย uName:pWord คือชื่อผู้ใช้และรหัสผ่านของที่เก็บ

  10. ใช้ apigee-service เพื่ออัปเดตยูทิลิตี apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
  11. เรียกใช้ยูทิลิตีการอัปเดตในโหนดเพื่ออัปเดตฐานข้อมูล Postgres
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile

    โดย configFile คือไฟล์การกำหนดค่าที่คุณใช้ติดตั้งฐานข้อมูล Postgres ข้อกำหนดเพียงอย่างเดียวในไฟล์การกำหนดค่าคือผู้ใช้ "apigee" ต้องเข้าถึงหรืออ่านไฟล์การกำหนดค่าได้

  12. เริ่มต้น Postgres:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
  13. เรียกใช้ยูทิลิตีการอัปเดตในโหนดเพื่ออัปเดตพอร์ทัล
    /opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile

    โดยที่ configFile คือไฟล์การกำหนดค่าที่คุณใช้ติดตั้งพอร์ทัล ข้อกำหนดเพียงอย่างเดียวในไฟล์การกำหนดค่าคือผู้ใช้ "apigee" ต้องเข้าถึงหรืออ่านไฟล์การกำหนดค่าได้

  14. เรียกใช้สคริปต์ update.php ของ Drupal โดยเปิด URL ต่อไปนี้ในหน้าต่างเบราว์เซอร์
    http://portalIP_DNS:8079/update.php
  15. ปิดใช้ Drupal ในโหมดการบำรุงรักษา
    1. เลือก Configuration ในเมนู Drupal
    2. ในหน้าการกำหนดค่า ให้เลือกโหมดการบำรุงรักษาภายใต้การพัฒนา
    3. ยกเลิกการเลือกช่องทำให้เว็บไซต์อยู่ในโหมดบำรุงรักษา
    4. เลือกบันทึกการกำหนดค่า

โปรดทราบว่าไดเรกทอรีรากหลังการอัปเดตคือ

/opt/apigee/apigee-drupal/wwwroot

การอัปเกรดเสร็จสมบูรณ์แล้ว