Nâng cấp cổng

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

Xác định đúng quy trình cập nhật

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

Xác định loại chế độ 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 nó:

  • 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, các thư mục này không được hiện tại.

  • /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, lệnh này sẽ trả về trang web thư mục gốc 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

Quá 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 ngày 4.17.05: /opt/apigee/apigee-drupal (Nginx) hoặc /var/www/html (Apache)

Nếu bạn không 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 này 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ợ trên cổng thông tin phiên bản OPDK-17-01.x trở lên.

Để xác định phiên bản cổng thông tin của bạn, 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 tại, nếu bạn đã sửa đổi bất kỳ mã nào trong lõi Drupal hoặc trong bất kỳ mã tuỳ chỉnh nào mô-đun, các nội dung sửa đổi của bạn sẽ bị ghi đè. Điều này bao gồm, cùng với những nội dung khác, bất kỳ thay đổi nào mà bạn có thể đã gửi đến .htaccess. Bạn nên giả định rằng mọi nội dung bên ngoài thư mục /sites đều thuộc sở hữu của Drupal. Một ngoại lệ của quy tắc này là robots.txt; nếu tệp này tồn tại trong thư mục gốc của web, nó sẽ được duy trì 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 web Drupal thư mục. Sau khi thực hiện các bước cài đặt được mô tả dưới đây, bạn có thể khôi phục từ bản sao lưu.

Sử dụng RPM để nâng cấp cổng thông tin

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 trường hợp:

    • devportal là tên cơ sở dữ liệu như được chỉ định bởi Thuộc tính PG_NAME 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 thông tin.
    • 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 do thuộc tính DRUPAL_PG_USER chỉ định trong phần cài đặt cổng thông tin tệp cấu hình.

    Bạn được nhắc nhập mật khẩu người dùng Postgres như được xác định bởi Thuộc tính DRUPAL_PG_PASS trong tệp cấu hình cài đặt cổng thông tin.

    Nếu sau này bạn muốn khôi phục từ bản sao lưu, hãy 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 web Drupal. Vị trí cài đặt mặc định là /opt/apigee/apigee-drupal, nhưng bạn có thể đã thay đổi tên 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 Cấu hình > Nội dung đa phương tiện > Mục nhập 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ư (đối với ).

  4. Sao lưu các tệp trong /opt/apigee/data/apigee-drupal-devportal/private.
  5. Thiết lập Drupal ở chế độ bảo trì:
    1. Chọn 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 phần Phát triển.
    3. Chọn hộp Put site to security mode (Đặt trang web vào chế độ bảo trì).
    4. Nhập thông báo mà người dùng thấy trong quá trình bảo trì.
    5. Chọn Lưu cấu hình.
  6. Vô hiệu hoá SELinux như được mô tả trong Cài đặt tiện ích thiết lập apigee 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 Edge 4.50.00 bootstrap_4.50.00.sh xuống /tmp/bootstrap_4.50.00.sh:
      curl https://software.apigee.com/bootstrap_4.50.00.sh -o /tmp/bootstrap_4.50.00.sh
    2. Cài đặt tiện ích và các phần phụ thuộc apigee-service của Edge 4.50.00:
      sudo bash /tmp/bootstrap_4.50.00.sh apigeeuser=uName apigeepassword=pWord

      Trong đó uNamepWord là tên người dùng và mật khẩu bạn nhận được của 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 xem bạn đã cài đặt Java 1.8 hay chưa. Bạn có thể sử dụng "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 một repo 4.50.00 cục bộ như mô tả trong 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ộ, sử dụng lệnh sau để đóng gói lưu trữ vào một tệp .tar có tên /opt/apigee/data/apigee-mirror/apigee-4.50.00.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 vào thư mục /tmp trên nút mới.
      3. Trên nút mới, huỷ đánh dấu tệp vào thư mục /tmp:
        tar -xzf apigee-4.50.00.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 và các phần phụ thuộc apigee-service của Edge từ /tmp/repos:
        sudo bash /tmp/repos/bootstrap_4.50.00.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

        Lưu ý rằng bạn bao gồm đường dẫn đến thư mục repos trong lệnh này.

    3. Cách cài đặt dịch vụ apigee 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 qua kho lưu trữ bằng cách sử dụng Máy chủ web Nginx" lúc Cài đặt Edge tiện ích thiết lập apigee.
      2. Trên nút điều khiển từ xa, hãy tải tệp Edge bootstrap_4.50.00.sh xuống /tmp/bootstrap_4.50.00.sh:
        /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.50.00.sh
          -o /tmp/bootstrap_4.50.00.sh

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

      3. Trên nút điều khiển từ xa, hãy cài đặt tiện ích Edge apigee-service và phần phụ thuộc:
        sudo bash /tmp/bootstrap_4.50.00.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 update trên nút Postgres:
    /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à cấu hình phải có thể truy cập hoặc đọc được bởi API "api" người dùng.