Nâng cấp cổng Dịch vụ dành cho nhà phát triển

Cổng dịch vụ dành cho nhà phát triển phiên bản 4.17.05

Quy trình này mô tả cách nâng cấp một ứng dụng hiện có cho Dịch vụ kênh nhà phát triển Apigee được cài đặt tại chỗ.

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

Quy trình cập nhật cổng thông tin mà bạn sử dụng 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

Nếu bạn không chắc chắn về kiểu cài đặt hiện tại, hãy dùng lệnh sau để xác định kiểu 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 đang dùng Apache/MySQL hoặc Apache/MariaDB, thì bạn không nên sử dụng các thư mục này.
  • /opt/apigee/apigee-service/bin/apigee-all status
    Nếu đang dùng Nginx/Postgres, bạn sẽ thấy kết quả như sau:

    + apigee-service apigee-drupal-devcổng trạng thái
    OK: apigee-drupal-devcổng dịch vụ



  • 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, có dạng:

    *:80 192.168.56.102 (/etc/httpd/conf/vhosts/devcổng.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 cho nhà phát triển đã được cài đặt tại:

  • /opt/apigee/apigee-drupal (Nginx)
  • /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 đường dẫn theo quy trình dưới đây để sử dụng thư mục cài đặt.

Nếu không biết thư mục cài đặt, bạn có thể xác định thư mục đó theo mô tả trong phần Các lệnh Drush thường dùng.

Thư mục cài đặt mặc định mới sau khi cập nhật Nginx/Postgres từ bản cài đặt 4.17.01 mới

Sau khi cập nhật bản cài đặt 4.17.01 sử dụng Nginx/Postgres, thư mục gốc đã thay đổi từ:

/opt/apigee/apigee-drupal

thành:

/opt/apigee/apigee-drupal/wwwroot

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:

  • 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

Để 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 bạn cập nhật

Đối với các lượt 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, nội dung sửa đổi của bạn sẽ bị ghi đè. Điều này bao gồm 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 nội dung nằm ngoài thư mục /sites đều thuộc sở hữu của Drupal. Một ngoại lệ đối với 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 trang web, thì tệp này sẽ được giữ nguyên 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 như 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 bằng tệp .tar

  1. Sao lưu phiên bản Drupal MySQL/MariaDB của bạn.
    Để biết thêm thông tin, hãy truy cập http://www.thegeekstuff.com/2008/09/backup-and-restore-mysql-database-using-mysqldump/
    1. Cách 1: Sử dụng Drush

      Lệnh Drush sql-dump sẽ tạo một bản sao của cơ sở dữ liệu. Trong thư mục Drupal của bạn, /var/www/html theo mặc định, hãy chạy lệnh:
      > drush sql-dump > /path/to/backup_dir/database-backup.sql

      Sử dụng drush help sql-dump để biết thêm thông tin.
    2. Lựa chọn 2: Sử dụng MySQLdump
      Dùng lệnh mysqldump để tạo bản sao của cơ sở dữ liệu:
      mysqldump -u TÊN NGƯỜI DÙNG -p'passwords' DATABASENAME > /path/to/backup_dir/database-backup.sql

      Không được có khoảng trống giữa tuỳ chọn -p và mật khẩu Bắt buộc phải dùng dấu ngoặc đơn bao quanh mật khẩu nếu mật khẩu chứa các ký tự đặc biệt.

      Bạn đã đặt TÊN NGƯỜI DÙNGDATABASENAME khi cài đặt cổng thông tin. Theo mặc định, cả hai đều là cổng thông tin cho nhà phát triển.
  2. 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à /var/www/html, nhưng bạn có thể đã thay đổi vị trí này tại thời điểm cài đặt.
  3. Tải tệp DeveloperServices_x.y.z.tar trong Dịch vụ kênh nhà phát triển từ ftp.apigee.com, trong đó x.y.z tương ứng với số phiên bản của cổng thông tin. Khi được nhắc, hãy nhập thông tin đăng nhập mà bạn nhận được từ Apigee.

    Bạn có thể tải tệp xuống qua đường liên kết mà Apigee gửi cho bạn trong trình duyệt hoặc bằng cách sao chép tệp đó rồi thêm tệp đó vào lệnh cURL sau:
    > curl -kOL <paste link here>

    Lưu ý: Nếu cổng thông tin của bạn nằm trên một máy chủ không có kết nối Internet bên ngoài, hãy thực hiện bước này trên máy chủ có quyền truy cập.

    Chuyển đến phần Apigee Edge Support rồi chọn Đăng nhập vào Cổng hỗ trợ của bạn để yêu cầu tệp .tar nâng cấp Dịch vụ kênh dành cho nhà phát triển. Nếu bạn chưa có tài khoản trên Cổng hỗ trợ, hãy chọn Đăng nhập vào Cổng hỗ trợ rồi trên trang đăng nhập, hãy chọn Bạn đang vội? Hãy gửi phiếu yêu cầu hỗ trợ tại đây.
  4. Đối với bản nâng cấp trên máy chủ có kết nối Internet:
    1. Giải nén tệp nâng cấp cổng thông tin:
      > tar -xvf <tar file>

      Bản trích xuất lệnh này sẽ tạo một thư mục mới có tên là DeveloperServices-4.x.y.z.
    2. Thay đổi thành thư mục DeveloperServices-4.x.y.z.
    3. Tải phiên bản Drupal mới nhất xuống bằng cách dùng lệnh sau:
      > drush dl drupal

      Lệnh này tạo một thư mục có tên drupal-x.y, trong đó x.y tương ứng với phiên bản hiện tại của Drupal.
    4. Chạy tập lệnh networked-update.sh:
      > ./networked-update.sh

      Tuỳ thuộc vào quyền truy cập vào tệp, bạn có thể phải sử dụng sudo để chạy lệnh này hoặc chạy lệnh này với tư cách quản trị viên.
    5. Để nhận thông báo về nội dung cập nhật của Drupal, hãy đảm bảo rằng bạn đã bật mô-đun trình quản lý Bản cập nhật Drupal. Trên trình đơn của Drupal, hãy chọn Mô-đun rồi di chuyển xuống mô-đun Trình quản lý cập nhật. Nếu chưa bật, hãy bật.

      Sau khi bật, bạn có thể xem các bản cập nhật có sẵn bằng cách sử dụng mục trong trình đơn Báo cáo > Nội dung cập nhật có sẵn.

      Sử dụng mục trình đơn Báo cáo > Bản cập nhật có sẵn > Cài đặt để định cấu hình mô-đun gửi email cho bạn khi có bản cập nhật và đặt tần suất kiểm tra bản cập nhật.
  5. Đối với bản nâng cấp trên máy chủ không có kết nối Internet:
    1. Trên máy chủ nơi bạn đã tải tệp DeveloperServices_x.y.z.tar của Dịch vụ kênh nhà phát triển xuống, hãy trích xuất tệp nâng cấp cổng thông tin:
      > tar -xvf <tar file>

      Bản trích xuất lệnh này sẽ tạo một thư mục mới có tên là DeveloperServices-4.x.y.z.
    2. Thay đổi thành thư mục DeveloperServices-4.x.y.z.
    3. Chạy tập lệnh non-networked-update.sh:
      > ./non-networked-update.sh

      Tuỳ thuộc vào quyền truy cập vào tệp, bạn có thể phải sử dụng sudo để chạy lệnh này hoặc chạy lệnh này với tư cách quản trị viên.

      Lệnh này tải tất cả tệp cập nhật cần thiết xuống và đóng gói vào một tệp duy nhất có tên là devportal-update.tgz, rồi ghi tệp đó vào vị trí bạn chọn.
    4. Sao chép devportal-update.tgz vào máy chủ đích (máy chủ chạy cổng thông tin).
      Lưu ý: Không sao chép devportal-update.tgz vào thư mục gốc trên web của máy chủ đích.
    5. Huỷ tải tệp devportal-update.tgz vào thư mục hiện tại:
      > tar -xzf /path/to/devcổng-update.tgz
    6. Thay đổi sang thư mục developer-update.
    7. Chạy lệnh sau để cài đặt bản cập nhật:
      > ./install-update.sh
    8. Trả lời các câu lệnh.

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

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

Hãy làm theo quy trình sau để cập nhật RPM của cổng thông tin cho một nút:

  1. Thay đổi sang thư mục Drupal /opt/apigee/apigee-drupal theo mặc định:
    > cd /opt/apigee/apigee-drupal
  2. Sao lưu bản sao 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=devcổng --host=192.168.56.101 --username=drupaladmin --password --format=c >
      /tmp/cổng.dmp

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

    Nếu sau này bạn phải khôi phục từ bản sao lưu, hãy dùng lệnh:
    pg_restore --clean --dbname=devcổng --host=localhost --username=apigee < /tmp/cổng.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 bạn có thể đã 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 (trạng thái gấp) hoặc mục Configuration > Media > File (Cấu hình > Nội dung đa 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. Tạo bản sao lưu các tệp trong /opt/apigee/data/apigee-drupal-devportal/private.
  5. Tắt SELinux theo mô tả trong phần Cài đặt tiện ích thiết lập API Edge.
  6. Đối với bản nâng cấp trên máy chủ có kết nối Internet:
    1. Tải tệp bootstrap_4.17.05.sh của Edge 4.17.05 xuống /tmp/bootstrap_4.17.05.sh:
      > curl https://software.apigee.com/bootstrap_4.17.05.sh -o /tmp/bootstrap_4.17.05.sh
    2. Cài đặt tiện ích và phần phụ thuộc apigee-service Edge 4.17.05:
      > sudo bash /tmp/bootstrap_4.17.05.sh apigeeuser=uName apigeepassword=pWord

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

      Theo mặc định, trình cài đặt sẽ kiểm tra để đảm bảo rằng bạn đã cài đặt Java 1.8. Bạn có thể dùng tuỳ chọn "C" để tiếp tục mà không cần cài đặt Java.
  7. Đối với bản nâng cấp trên máy chủ không có kết nối Internet:
    1. Tạo một bản repo 4.17.05 cục bộ như mô tả trong phần "Tạo kho lưu trữ Apigee cục bộ" tại phần Cài đặt tiện ích thiết lập apigee của Edge.
      Lưu ý: Nếu đã có sẵn một repo 4.17.01, bạn có thể thêm kho lưu trữ 4.17.05 vào kho lưu trữ đó theo mô tả trong phần "Cập nhật kho lưu trữ cục bộ Apigee" tại Cài đặt tiện ích thiết lập apigee của Edge.
    2. Cách cài đặt dịch vụ apigee từ tệp .tar:
      1. Trên nút có kho lưu trữ cục bộ, hãy 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.17.05.tar.gz:
        > /optgee/apigee-service/bin/apigee-service apigee-service
      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, hãy giải nén tệp vào thư mục /tmp:
        > tar -xzf apigee-4.17.05.tar.gz

        Lệnh này tạo một thư mục mới có tên repos trong thư mục chứa tệp .tar. Ví dụ: /tmp/repos.
      4. Cài đặt tiện ích apigee-service và phần phụ thuộc của Edge từ /tmp/repos:
        > sudo bash /tmp/repos/bootstrap_4.17.05.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

        Lưu ý rằng bạn cần đưa đường dẫn đến thư mục Command.repos vào thư mục này
    3. Cách cài đặt dịch vụ API 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 cách sử dụ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 điều khiển từ xa, tải tệp Edge bootstrap_4.17.05.sh xuống /tmp/bootstrap_4.17.05.sh trong ví dụ này là /tmp/bootstrap_4.17.05.sh :
        > /usr/bin/curl đặt http://uName:pWord@remoterepName:3939/bootstrap_4.17.17.0.0.0.05

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

  8. Sử dụng apigee-service để cập nhật tiện ích apigee-setup:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-setup cập nhật
  9. Chạy tiện ích cập nhật trên nút của bạn để cập nhật cơ sở dữ liệu 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à người dùng "apigee" phải truy cập được hoặc đọc được tệp cấu hình.
  10. Khởi động Postgres:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
  11. 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 cổng 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 truy cập được hoặc đọc được tệp cấu hình.

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

/opt/apigee/apigee-drupal/wwwroot

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