Khôi phục Apigee Edge 4.52.02

Nếu gặp lỗi trong quá trình cập nhật lên Edge 4.52.02, bạn có thể quay lại thành phần gây ra lỗi rồi thử cập nhật lại.

Bạn có thể quay lại Edge 4.52.02 bằng các phiên bản phát hành chính sau:

  • Phiên bản 4.52.01
  • Phiên bản 4.52.00
  • Phiên bản 4.51.00

Việc khôi phục phiên bản sẽ bao gồm việc khôi phục mọi thành phần mà bạn có thể đã nâng cấp. Ngoài ra, dựa trên phiên bản mà bạn bắt đầu, bạn có thể cần phải cân nhắc một số yếu tố đặc biệt trước khi quay lại một số thành phần phần mềm nhất định. Bảng dưới đây liệt kê các phần mềm có thể cần các bước đặc biệt trong quá trình khôi phục:

Khôi phục về phiên bản Các điểm cần cân nhắc đặc biệt đối với phần mềm
4.52.01 Cassandra
4.52.00 Cassandra, Zookeeper, Qpid
4.51.00 Cassandra, Zookeeper, Qpid, Postgres

Có hai trường hợp mà bạn có thể muốn thực hiện việc khôi phục:

  1. Khôi phục về một bản phát hành lớn hoặc nhỏ trước đó. Ví dụ: từ 4.52.02 thành 4.52.00.
  2. Khôi phục về bản phát hành bản vá trước đó trong cùng một bản phát hành. Ví dụ: từ 4.52.00.02 thành 4.52.00.01.

Để biết thêm thông tin, hãy xem quy trình phát hành Apigee Edge.

Thứ tự của quá trình khôi phục

Bạn nên khôi phục các thành phần theo thứ tự đảo ngược so với thứ tự nâng cấp, ngoại trừ việc bạn nên khôi phục máy chủ quản lý sau Cassandra.

Thứ tự khôi phục chung điển hình cho Private Cloud 4.52.02 sẽ có dạng như sau:

  1. Quay lại Postgres, Qpid và các thành phần khác liên quan đến phân tích
  2. Bộ định tuyến và bộ xử lý thông báo của tính năng khôi phục
  3. Hủy bỏ Cassandra, Zookeeper
  4. Máy chủ quản lý tính năng khôi phục

Ví dụ: giả sử bạn đã nâng cấp toàn bộ cụm Cassandra, tất cả máy chủ quản lý và một số RMP lên phiên bản 4.52.02 từ phiên bản 4.52.01 và muốn quay lại. Trong trường hợp này, bạn sẽ:

  1. Lần lượt khôi phục tất cả RMP
  2. Quay lại toàn bộ cụm Cassandra bằng cách sử dụng bản sao lưu
  3. Lần lượt khôi phục các nút máy chủ Quản lý Edge

Những người có thể thực hiện việc khôi phục

Người dùng thực hiện việc khôi phục phải là người dùng đã cập nhật Edge ban đầu hoặc người dùng chạy dưới quyền root.

Theo mặc định, các thành phần Edge chạy dưới dạng người dùng "apigee". Trong một số trường hợp, bạn có thể đang chạy các thành phần Edge với tư cách là nhiều người dùng. Ví dụ: nếu Trình định tuyến phải truy cập vào các cổng đặc quyền, chẳng hạn như các cổng dưới 1000, thì bạn phải chạy Trình định tuyến dưới dạng người dùng gốc hoặc người dùng có quyền truy cập vào các cổng đó. Hoặc bạn có thể chạy một thành phần dưới vai trò là một người dùng và một thành phần khác dưới vai trò là một người dùng khác.

Các thành phần có mã chung

Các thành phần Edge sau đây có chung mã. Do đó, để khôi phục bất kỳ thành phần nào trên một nút, bạn phải khôi phục tất cả các thành phần đó trên nút đó.

  • edge-management-server (Máy chủ quản lý)
  • edge-message-processor (Trình xử lý thông báo)
  • edge-router (Bộ định tuyến)
  • edge-postgres-server (Máy chủ Postgres)
  • edge-qpid-server (Máy chủ Qpid)

Ví dụ: nếu đã cài đặt Máy chủ quản lý, Trình định tuyến và Trình xử lý thông báo trên nút, thì để khôi phục bất kỳ thành phần nào trong số đó, bạn phải khôi phục cả ba thành phần.

Khôi phục Cassandra

Khi một bản nâng cấp lớn của Cassandra được thực hiện trên một nút Cassandra cụ thể, Cassandra sẽ sửa đổi giản đồ của dữ liệu được lưu trữ trên nút đó, khiến việc khôi phục trực tiếp không khả thi. Có hai phương pháp để khôi phục. Bạn sẽ sử dụng một trong các phương pháp này dựa trên trạng thái của bản nâng cấp mà bạn đang quay lại.

Phương pháp để khôi phục

Xoá sạch và sử dụng các nút hiện có trong cụm để tạo lại nút

Bạn có thể làm theo quy trình này nếu có ít nhất một trung tâm dữ liệu hoạt động đầy đủ trong cụm vẫn đang sử dụng phiên bản Cassandra cũ (Cassandra 2.1.22). Nếu đã nâng cấp toàn bộ cụm Cassandra và muốn khôi phục, bạn phải làm theo các bước trong phần Xoá và khôi phục bản sao lưu hoặc ảnh chụp nhanh máy ảo.

Các bước để khôi phục

  1. Bắt đầu với nút bạn muốn khôi phục:
    • Dừng Cassandra trên nút:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    • Gỡ cài đặt phần mềm Cassandra khỏi nút:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    • Xoá thư mục dữ liệu khỏi nút:
      rm -rf /opt/apigee/data/apigee-cassandra
    • Tải và chạy trình tự khởi động của phiên bản Edge for Private Cloud cũ mà bạn muốn quay lại.

    Ví dụ: Để quay lại phiên bản 4.52.01,

    • Tải bootstrap phiên bản 4.52.01 xuống:
      curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh -u ‘uName:pWord’
    • Thực thi bootstrap của phiên bản 4.52.01:
      sudo bash /tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord

    • Thiết lập Cassandra trên nút:
      /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile
    • Thực thi việc tạo lại trên nút bằng cách cung cấp tên của trung tâm dữ liệu chức năng:
      /opt/apigee/apigee-cassandra/bin/nodetool rebuild -h <node-IP> <functional-dc>
    • Lặp lại các bước trên trên từng nút mà bạn muốn khôi phục.
  2. Sau khi tất cả các nút được khôi phục và tạo lại:
    • Chạy quy trình thiết lập của bất kỳ nút máy chủ quản lý nào. Đảm bảo máy chủ quản lý là của phiên bản đã được khôi phục. Nếu không, hãy khôi phục cả máy chủ quản lý.
    • Dừng máy chủ quản lý:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
    • Nếu bạn sử dụng tính năng kiếm tiền, hãy gỡ cài đặt tính năng kiếm tiền:
      /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
    • Gỡ cài đặt máy chủ quản lý:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    • Tải xuống và thực thi bootstrap của phiên bản cũ. Ví dụ: hãy thực hiện các bước sau để tải xuống và thực thi bootstrap của phiên bản 4.52.01:
      curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh -u ‘uName:pWord’
      sudo bash /tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord
    • Chạy quy trình thiết lập một nút máy chủ quản lý:
      /opt/apigee/apigee-setup/bin/setup.sh -p mt -f configFile

Tối ưu hoá sau khi tạo lại

Trong các bước trên, tất cả dữ liệu trong nút được truyền trực tuyến từ trung tâm dữ liệu từ xa trong quá trình tạo lại. Bạn có thể tối ưu hoá quy trình này bằng cách sử dụng tính năng sửa chữa sau khi tất cả bản sao đã được truyền trực tuyến đến trung tâm dữ liệu cục bộ. Điều này giúp tránh truyền trực tuyến giữa các DC và sẽ nhanh hơn so với việc tạo lại tất cả các nút từ một DC từ xa.

Ví dụ: Giả sử bạn có 6 nút Cassandra trong trung tâm dữ liệu cục bộ. Theo mặc định, hệ số sao chép của Apigee là 3, vì vậy, mỗi nút sở hữu 50% dữ liệu. Trong trường hợp này, bạn có thể tạo lại các nút #1 và #4 bằng cách làm theo quy trình ở trên. Đối với các nút #2, #3, #5 và #6, hãy làm theo các bước dưới đây để khôi phục bản sao lưu và chạy quy trình sửa chữa.

  1. Làm theo quy trình cho đến bước 6 như được ghi lại để tạo lại bản sao trong trung tâm dữ liệu cục bộ.
  2. Đối với các nút còn lại, hãy làm theo các bước bên dưới trên từng nút còn lại.
    • Khôi phục bản sao lưu mà bạn đã chụp trên nút này (lưu ý: bản sao lưu này có thể có dữ liệu cũ vì bản sao lưu này được thực hiện trước khi bạn bắt đầu nâng cấp Cassandra):
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restore backup_file
    • Nếu có ảnh chụp nhanh máy ảo của nút, bạn có thể khôi phục ảnh chụp nhanh thay vì khôi phục bản sao lưu Cassandra.
    • Sau khi khôi phục bản sao lưu, hãy khởi động dịch vụ Cassandra trên nút:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra start
    • Thực hiện sửa chữa trên nút để có thể truyền dữ liệu mới nhất từ một trung tâm dữ liệu hiện có:
      /opt/apigee/apigee-cassandra/bin/nodetool -h <node-IP> repair -dc <local-dc-name>
    • Lặp lại các bước từ 3 đến 6 trên mỗi nút mà bạn muốn sửa chữa.

Xoá sạch và khôi phục bản sao lưu/ảnh chụp nhanh máy ảo

Đây là quy trình duy nhất có thể áp dụng nếu bạn đã nâng cấp toàn bộ cụm Cassandra và muốn khôi phục.

Ngoài ra, bản sao lưu Apigee là dành riêng cho nút. Bạn không thể khôi phục bản sao lưu được lấy từ một nút vào một nút khác. Bản sao lưu Cassandra bao gồm thông tin siêu dữ liệu về nút (chẳng hạn như địa chỉ IP, vị trí vòng, v.v.).

  1. Bắt đầu với 1 nút Cassandra trong cụm:
    • Dừng dịch vụ Cassandra trên nút:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    • Gỡ cài đặt phần mềm Cassandra khỏi nút:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    • Xoá thư mục dữ liệu khỏi nút:
      rm -rf /opt/apigee/data/apigee-cassandra
    • Tải và chạy trình tự khởi động của phiên bản Edge for Private Cloud cũ mà bạn muốn quay lại.

    Ví dụ: Cách quay lại phiên bản 4.52.01

    • Tải bootstrap phiên bản 4.52.01 xuống:
      curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh -u ‘uName:pWord’
    • Thực thi bootstrap của phiên bản 4.52.01:
      sudo bash /tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord

    • Thiết lập Cassandra trên nút:
      /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile
    • Khôi phục bản sao lưu trên nút bằng cách sử dụng quy trình trong phần Khôi phục từ bản sao lưu.
    • Dừng Cassandra trên nút:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    • Xoá thư mục dữ liệu:
      rm -rf /opt/apigee/data/apigee-cassandra/data
    • Khôi phục bản sao lưu:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restore backup_file
    • Khởi động dịch vụ Cassandra trên nút:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra start
    • Lặp lại các bước trên từng nút Cassandra.
    • Chạy lần lượt quy trình sửa chữa trên các nút:
      /opt/apigee/apigee-cassandra/bin/nodetool -h <node-IP> repair -pr

Huỷ bỏ bản cập nhật Zookeeper 3.8.3

Nếu đang quay lại phiên bản 4.52.00 hoặc 4.51.00, bạn cần tham khảo một số bước đặc biệt trước khi quay lại Zookeeper. Các bước này được liệt kê trong phần Huỷ bỏ.

Nếu bạn đang quay lại phiên bản 4.52.01, hãy quay lại Zookeeper như cách bạn quay lại bất kỳ phần mềm nào, như được liệt kê trong phần Quay lại bản phát hành chính hoặc phụ trước đó bên dưới.

Khôi phục Qpid

Nếu đang quay lại phiên bản 4.52.00 hoặc 4.51.00, bạn cần tham khảo một số bước đặc biệt trước khi quay lại Qpid. Các bước này được liệt kê trong phần Huỷ bỏ.

Nếu bạn đang khôi phục về phiên bản 4.52.01, hãy khôi phục Qpid như cách bạn khôi phục mọi phần mềm được liệt kê trong phần Khôi phục về bản phát hành chính hoặc phụ trước đó

Huỷ bỏ bản cập nhật Postgres 10.17

Nếu đang quay lại phiên bản 4.51.00, bạn cần tham khảo một số bước đặc biệt trước khi quay lại Postgres. Các bước này được liệt kê trong phần Huỷ bỏ.

Nếu bạn đang khôi phục về phiên bản 4.52.01 hoặc 4.52.00, hãy khôi phục Postgres như cách bạn khôi phục bất kỳ phần mềm nào, như được liệt kê trong phần Khôi phục về bản phát hành chính hoặc phụ trước đó bên dưới.

Quay lại một bản phát hành chính hoặc phụ trước đó

Để quay lại một bản phát hành chính hoặc phụ trước đó, hãy làm như sau trên mỗi nút lưu trữ thành phần:

  1. Tải tệp bootstrap.sh xuống cho phiên bản mà bạn muốn quay lại:

    • Để quay lại phiên bản 4.51.00, hãy tải bootstrap_4.51.00.sh xuống:
      curl https://software.apigee.com/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.sh 
  2. Dừng thành phần để quay lại:
    1. Để khôi phục bất kỳ thành phần nào có mã chung trên nút, bạn phải dừng tất cả các thành phần đó, như trong ví dụ sau:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
      /opt/apigee/apigee-service/bin/apigee-service edge-router stop
      /opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
      /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
    2. Để khôi phục bất kỳ thành phần khác nào trên nút, hãy chỉ dừng thành phần đó:
      /opt/apigee/apigee-service/bin/apigee-service component stop
  3. Nếu bạn đang huỷ tính năng Kiếm tiền, hãy gỡ cài đặt tính năng này khỏi tất cả các nút Máy chủ quản lý và Bộ xử lý thông báo:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
  4. Gỡ cài đặt thành phần để khôi phục nút:
    1. Để khôi phục bất kỳ thành phần nào có mã chung trên nút, bạn phải gỡ cài đặt tất cả các thành phần đó bằng cách gỡ cài đặt nhóm thành phần edge-gateway, như trong ví dụ sau:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    2. Để khôi phục bất kỳ thành phần nào khác trên nút, hãy gỡ cài đặt thành phần đó, như trong ví dụ sau:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      Trong đó component là tên thành phần.

    3. Để khôi phục Trình định tuyến cạnh, bạn phải xoá nội dung của tệp /opt/nginx/conf.d ngoài việc gỡ cài đặt nhóm thành phần edge-gateway:
      cd /opt/nginx/conf.d
      rm -rf *
  5. Gỡ cài đặt phiên bản 4.52.02 của apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. Cài đặt phiên bản 4.51.00 của tiện ích apigee-service và các phần phụ thuộc của tiện ích đó. Ví dụ sau đây sẽ cài đặt phiên bản 4.51.00 của apigee-service:
    sudo bash /tmp/bootstrap_4.51.00.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 giá trị này.

    Nếu bạn gặp lỗi, hãy đảm bảo bạn đã tải tệp bootstrap.sh xuống ở bước 1.

  7. Cài đặt apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  8. Cài đặt phiên bản cũ của thành phần:
    /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

    Trong đó, component là thành phần cần cài đặt và configFile là tệp cấu hình của bạn cho phiên bản cũ.

  9. Nếu bạn đang quay lại Qpid, hãy xoá sạch iptables:
    sudo iptables -F
  10. Lặp lại quy trình này cho từng nút lưu trữ thành phần mà bạn đang khôi phục.

Quay lại bản phát hành bản vá trước đó

Để khôi phục một thành phần về một bản phát hành bản vá cụ thể, hãy làm như sau trên mỗi nút lưu trữ thành phần:

  1. Tải phiên bản thành phần cụ thể xuống:
    /opt/apigee/apigee-service/bin/apigee-service component_version install

    Trong đó, component_version là thành phần và bản phát hành bản vá cần cài đặt. Ví dụ:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui-4.51.05-0.0.3749 install

    Nếu đang sử dụng kho lưu trữ trực tuyến Apigee, bạn có thể xác định các phiên bản thành phần có sẵn bằng cách sử dụng lệnh sau:

    yum --showduplicates list comp

    Ví dụ:

    yum --showduplicates list edge-ui
  2. Sử dụng apigee-setup để cài đặt thành phần:
    /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

    Ví dụ:

    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile

    Xin lưu ý rằng bạn chỉ chỉ định tên thành phần khi cài đặt, chứ không phải phiên bản.

  3. Lặp lại quy trình này cho từng nút lưu trữ thành phần mà bạn đang khôi phục.

Khôi phục mTLS

Để khôi phục bản cập nhật mTLS, hãy làm theo các bước sau trên tất cả máy chủ lưu trữ:

  1. Dừng Apigee:
    apigee-all stop
  2. Dừng mTLS:
    apigee-service apigee-mtls uninstall
  3. Cài đặt lại mTLS:
    apigee-service apigee-mtls install
    apigee-service apigee-mtls setup -f /opt/silent.conf