Nâng cấp cổng

Edge for Private Cloud v4.18.05

Quy trình này mô tả cách nâng cấp cổng thông tin Dịch vụ dành cho nhà phát triển Apigee hiện có (hoặc đơn giản là cổng) cài đặt tại chỗ.

Xác định quy trình cập nhật chính xác

Quy trình bạn sử dụng để cập nhật cổng thông tin dựa trên chế độ cài đặt hiện tại của bạn:

Xác định loại cài đặt hiện tại của bạn

Nếu bạn không chắc chắn về loại cài đặt hiện tại, hãy sử dụng lệnh sau để xác định loại cài đặt:

  • ls /opt

    Nếu đang sử dụng Nginx/Postgres, bạn sẽ thấy các thư mục sau: /opt/apigee/opt/nginx.

    Nếu bạn đang sử dụng Apache/MySQL hoặc Apache/MariaDB, thì các thư mục này sẽ không xuất hiện.

  • /opt/apigee/apigee-service/bin/apigee-all status

    Nếu đang sử dụng Nginx/Postgres, bạn sẽ thấy kết quả sau:

    + 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

    Nếu bạn đang sử dụng Apache/MySQL hoặc Apache/MariaDB, thì lệnh này sẽ trả về thư mục gốc web của cổng thông tin, ở dạng:

    *:80
    192.168.56.102 (/etc/httpd/conf/vhosts/devportal.conf:1)

Thư mục cài đặt mặc định

Quy trình nâng cấp giả định rằng cổng thông tin đã được cài đặt tại:

  • 4.17.05 trở lên: /opt/apigee/apigee-drupal/wwwroot
  • Trước phiên bản 4.17.05: /opt/apigee/apigee-drupal (Nginx) hoặc /var/www/html (Apache)

Nếu bạn chưa cài đặt cổng thông tin trong thư mục mặc định, hãy sửa đổi các đường dẫn trong quy trình bên dưới để sử dụng thư mục cài đặt của bạn.

Các phiên bản nâng cấp được hỗ trợ

Quy trình nâng cấp này được hỗ trợ cho các phiên bản cổng sau:

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

Để xác định phiên bản cổng thông tin, hãy mở URL sau trong trình duyệt:

http://yourportal.com/buildInfo

Trước khi cập nhật

Đối với các bản cài đặt hiện có, nếu bạn đã sửa đổi bất kỳ mã nào trong lõi Drupal hoặc trong bất kỳ mô-đun không tuỳ chỉnh nào, các nội dung sửa đổi của bạn sẽ bị ghi đè. Trong đó có mọi thay đổi mà bạn có thể đã thực hiện đối với .htaccess. Bạn nên giả định rằng mọi thứ bên ngoài thư mục /sites đều thuộc sở hữu của Drupal. robots.txt là trường hợp ngoại lệ của quy tắc này; nếu tệp này tồn tại trong thư mục gốc của web, thì tệp này sẽ được lưu giữ cho bạn.

Trước khi tiếp tục cài đặt, hãy sao lưu toàn bộ thư mục gốc của trang web Drupal. Sau khi thực hiện các bước cài đặt được mô tả bên dưới, bạn có thể khôi phục các nội dung tuỳ chỉnh của mình từ bản sao lưu.

Nâng cấp cổng thông tin bằng RPM

Cách cập nhật RPM của cổng thông tin trên một nút:

  1. Thay đổi thành thư mục Drupal, /opt/apigee/apigee-drupal theo mặc định:
    cd /opt/apigee/apigee-drupal
  2. Sao lưu thực thể cơ sở dữ liệu Drupal. Lệnh pg_dump tạo một bản sao của cơ sở dữ liệu:
    pg_dump --dbname=devportal --host=host_IP_address --username=drupaladmin
      --password --format=c > /tmp/portal.dmp

    trong đó:

    • devportal là tên cơ sở dữ liệu do thuộc tính PG_NAME chỉ định trong tệp cấu hình cài đặt cổng thông tin.
    • host_IP_address là địa chỉ IP của nút cổng.
    • drupaladmin là tên người dùng Postgres mà cổng thông tin sử dụng để truy cập vào cơ sở dữ liệu như được chỉ định bởi thuộc tính DRUPAL_PG_USER trong tệp cấu hình cài đặt cổng thông tin.
    • Bạn sẽ được nhắc nhập mật khẩu người dùng Postgres do thuộc tính DRUPAL_PG_PASS xác định trong tệp cấu hình cài đặt cổng thông tin.

    Nếu sau này bạn phải khôi phục từ bản sao lưu, hãy sử dụng lệnh sau:

    pg_restore --clean --dbname=devportal --host=localhost  --username=apigee < /tmp/portal.dmp
  3. Sao lưu toàn bộ thư mục gốc của trang web Drupal. Vị trí cài đặt mặc định là /opt/apigee/apigee-drupal, nhưng có thể bạn đã thay đổi vị trí này.

    Nếu bạn không chắc chắn về vị trí của thư mục này, hãy sử dụng lệnh drush status hoặc mục Cấu hình > Phương tiện > Tệp trong trình đơn Drupal để xác định vị trí của hệ thống tệp công khai và đường dẫn hệ thống tệp riêng tư (cho bước tiếp theo).

  4. Sao lưu các tệp trong /opt/apigee/data/apigee-drupal-devportal/private.
  5. Đặt Drupal sang chế độ bảo trì:
    1. Chọn Configuration (Cấu hình) trong trình đơn Drupal.
    2. Trên trang Cấu hình, hãy chọn Chế độ bảo trì trong mục Phát triển.
    3. Chọn hộp Đặt trang web vào chế độ bảo trì.
    4. Nhập thông báo mà người dùng nhìn thấy trong quá trình bảo trì.
    5. Chọn Lưu cấu hình.
  6. Tắt SELinux như mô tả trong phần Cài đặt tiện ích thiết lập apigee-setup của Edge.
  7. Thay đổi sang thư mục /opt:
    cd /opt
  8. Để nâng cấp máy chủ có kết nối Internet:
    1. Tải tệp bootstrap_4.18.05.sh của Edge 4.18.05 xuống /tmp/bootstrap_4.18.05.sh:
      curl https://software.apigee.com/bootstrap_4.18.05.sh -o /tmp/bootstrap_4.18.05.sh
    2. Cài đặt tiện ích và phần phụ thuộc apigee-service của Edge 4.18.05:
      sudo bash /tmp/bootstrap_4.18.05.sh apigeeuser=uName apigeepassword=pWord

      Trong đó, uNamepWord là tên người dùng và mật khẩu mà bạn nhận được từ Apigee. Nếu bỏ qua pWord, bạn sẽ được nhắc nhập mã đó.

      Theo mặc định, trình cài đặt sẽ kiểm tra để đảm bảo bạn đã cài đặt Java 1.8. Bạn có thể sử dụng tuỳ chọn "C" để tiếp tục mà không cần cài đặt Java.

  9. Để nâng cấp trên máy chủ không có kết nối Internet:
    1. Tạo kho lưu trữ 4.18.05 cục bộ như mô tả trong phần Tạo kho lưu trữ Apigee cục bộ.
    2. Cách cài đặt apigee-service từ tệp .tar:
      1. Trên nút có kho lưu trữ cục bộ, hãy sử dụng lệnh sau để đóng gói kho lưu trữ cục bộ vào một tệp .tar duy nhất có tên /opt/apigee/data/apigee-mirror/apigee-4.18.05.tar.gz:
        /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
      2. Sao chép tệp .tar vào nút mà bạn muốn cập nhật Edge. Ví dụ: sao chép tệp đó vào thư mục /tmp trên nút mới.
      3. Trên nút mới, giải nén tệp vào thư mục /tmp:
        tar -xzf apigee-4.18.05.tar.gz

        Lệnh này tạo một thư mục mới có tên là repos trong thư mục chứa tệp .tar. Ví dụ: /tmp/repos.

      4. Cài đặt tiện ích apigee-service và các phần phụ thuộc của Edge từ /tmp/repos:
        sudo bash /tmp/repos/bootstrap_4.18.05.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

        Lưu ý rằng bạn phải thêm đường dẫn đến thư mục kho lưu trữ trong lệnh này.

    3. Cách cài đặt apigee-service bằng máy chủ web Nginx:
      1. Định cấu hình máy chủ web Nginx như mô tả trong phần "Cài đặt từ kho lưu trữ bằng máy chủ web Nginx" tại phần Cài đặt tiện ích thiết lập API Edge.
      2. Trên nút từ xa, hãy tải tệp bootstrap_4.18.05.sh của Edge xuống /tmp/bootstrap_4.18.05.sh:
        /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.18.05.sh
          -o /tmp/bootstrap_4.18.05.sh

        Trong đó, uNamepWord là tên người dùng và mật khẩu mà bạn đã đặt ở trên cho kho lưu trữ, còn remoteRepo là địa chỉ IP hoặc tên DNS của nút kho lưu trữ.

      3. Trên nút từ xa, hãy cài đặt tiện ích apigee-service của Edge và các phần phụ thuộc:
        sudo bash /tmp/bootstrap_4.18.05.sh apigeerepohost=remoteRepo:3939
          apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

        Trong đó uNamepWord là tên người dùng và mật khẩu kho lưu trữ.

  10. Sử dụng apigee-service để cập nhật tiện ích apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
  11. Chạy tiện ích cập nhật trên nút Postgre:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile

    Trong đó configFile là tệp cấu hình mà bạn đã dùng để cài đặt cơ sở dữ liệu Postgres. Yêu cầu duy nhất đối với tệp cấu hình là người dùng "apigee" phải có thể truy cập hoặc đọc tệp cấu hình.

  12. Cập nhật cơ sở dữ liệu Postgres:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade
  13. Chạy tiện ích cập nhật trên nút của bạn để cập nhật cổng thông tin:
    /opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile

    Trong đó, configFile là tệp cấu hình mà bạn đã dùng để cài đặt trang thông tin. Yêu cầu duy nhất đối với tệp cấu hình là người dùng "apigee" phải có thể truy cập hoặc đọc được tệp cấu hình.

  14. Chạy tập lệnh update.php của Drupal bằng cách mở URL sau trong cửa sổ trình duyệt:
    http://portal_IP_DNS:8079/update.php
  15. Tắt Drupal ở chế độ bảo trì:
    1. Chọn Configuration (Cấu hình) trong trình đơn Drupal.
    2. Trên trang Cấu hình, hãy chọn Chế độ bảo trì trong mục Phát triển.
    3. Bỏ chọn hộp Put site onbảo trì mode (Đặt trang web vào chế độ bảo trì).
    4. Chọn Lưu cấu hình.

Lưu ý rằng thư mục gốc sau khi cập nhật là:

/opt/apigee/apigee-drupal/wwwroot

Quá trình nâng cấp đã hoàn tất.