Khôi phục phiên bản Apigee Edge 4.51.00

Nếu gặp lỗi trong khi cập nhật lên Edge 4.51.00, bạn có thể khôi phục đã gây ra lỗi, sau đó thử cập nhật lại.

Bạn có thể khôi phục Edge 4.51.00 về các phiên bản Bản phát hành tính năng sau:

  • Phiên bản 4.50.00
  • Phiên bản 4.19.06

Có hai tình huống mà bạn có thể muốn khôi phục:

  1. Khôi phục Bản phát hành tính năng trước đây. Ví dụ: từ 4,51,00 đến 4,50,00.
  2. Khôi phục phiên bản cập nhật trước đó bằng cùng một bản phát hành. Ví dụ: từ 4.50.00.02 đến 4.50.00.01.

Để biết thêm thông tin, hãy xem Bản phát hành Apigee Edge .

Những người có thể khôi phục

Người dùng khôi phục phải giống như người dùng đã cập nhật Edge ban đầu hoặc người dùng chạy dưới dạng thư mục gốc.

Theo mặc định, các thành phần Edge sẽ chạy với tư cách "api" ("API") của người dùng. Trong một số trường hợp, bạn có thể dùng ứng dụng Edge dưới dạng người dùng khác nhau. Ví dụ: nếu Bộ định tuyến phải truy cập các cổng đặc quyền, chẳng hạn như những bộ định tuyến dưới 1000, thì bạn phải chạy Bộ định tuyến dưới dạng thư mục gốc hoặc với tư cách người dùng có quyền truy cập vào các Bộ định tuyến đó cổng. Hoặc bạn có thể chạy một thành phần với tư cách là một người dùng và một thành phần khác với tư cách là người dùng khác.

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

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

  • edge-management-server (Máy chủ quản lý)
  • edge-message-processor (Đơn vị xử lý tin nhắn)
  • edge-router (Bộ định tuyến)
  • edge-postgres-server (Máy chủ Postgres)
  • edge-qpid-server (Máy chủ Qpid)

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

Khôi phục về Bản phát hành tính năng trước

Để khôi phục về Bản phát hành tính năng 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 bạn muốn chuyển sang quay lại:

    • Để khôi phục về phiên bản 4.50.00, hãy tải bootstrap_4.50.00.sh xuống:
      curl https://software.apigee.com/bootstrap_4.50.00.sh -o /tmp/bootstrap_4.50.00.sh 
    • Để khôi phục về phiên bản 4.19.06, hãy tải bootstrap_4.19.06.sh xuống:
      curl https://software.apigee.com/bootstrap_4.19.01.sh -o /tmp/bootstrap_4.19.01.sh 
  2. Dừng thành phần để khôi phục:
    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ả chúng, như ví dụ sau cho thấy:
      /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 mọi thành phần khác trên nút, chỉ dừng thành phần đó:
      • /opt/apigee/apigee-service/bin/apigee-service component stop
  3. Nếu bạn muốn bật lại 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ả Máy chủ quản lý và Thông báo Nút đơn vị xử lý:
    /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 này:
    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ả bằng cách gỡ cài đặt thành phần edge-gateway nhóm, như ví dụ sau cho thấy:
      /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, chỉ gỡ cài đặt thành phần đó, vì ví dụ sau đây cho thấy:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

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

    3. Để khôi phục Bộ định tuyến cạnh, bạn phải xóa nội dung của /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.51.00 của apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. Cài đặt phiên bản 4.19.06 hoặc 4.50.00 của apigee-service tiện ích và các phần phụ thuộc của nó. Ví dụ sau cài đặt phiên bản 4.50.00 của apigee-service:
    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ã đó.

    Nếu gặp lỗi, hãy nhớ tải tệp bootstrap.sh xuống theo 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ũ hơn 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à thành phần của bạn cho phiên bản cũ hơn.

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

Khôi phục về phiên bản cập nhật trước

Để khôi phục một thành phần về một phiên bản phát hành cụ thể, hãy làm như sau trên từng 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à phiên bản cập nhật sẽ cài đặt. Ví dụ:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui-4.18.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 thành phần có sẵn bằng cách 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

    Lưu ý rằng bạn chỉ xác đị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 mỗi nút lưu trữ thành phần mà bạn đang khôi phục.

Khôi phục bản cập nhật Postgres 10.17

Nếu đã nâng cấp lên phiên bản 4.51.00 từ phiên bản 4.19.06 hoặc 4.50.00 lên phiên bản 4.51.00, bạn phải khôi phục Postgres cập nhật ngoài các thành phần Edge.

Cách khôi phục bản cập nhật Postgres khi cập nhật Postgres trong cấu hình chế độ chờ chính:

  • Nâng cấp nút dự phòng mới để trở thành nút chính của Postgres. Trang cái mới của Postgres sẽ là cùng một phiên bản với phiên bản bạn đã cài đặt cho Edge trước đó.
  • Định cấu hình nút chờ cũ thành nút chờ của nút chính mới. Nút chế độ chờ cũ sẽ có cùng phiên bản với phiên bản bạn đã cài đặt cho Edge trước đó.
  • Đăng ký nút chính và nút chờ mới với nhóm phân tích và nhóm người tiêu dùng.

Khi bạn hoàn tất việc khôi phục, nút chính cũ sẽ không còn cần thiết nữa. Bạn có thể sau đó huỷ bỏ nút chính cũ.

  1. Đảm bảo nút Postgres ở chế độ chờ mới đang chạy:
    /opt/apigee/apigee-service/bin/apigee-all status

    Nếu Postgres không chạy, hãy khởi động Postgres:

    /opt/apigee/apigee-service/bin/apigee-all start
  2. Đảm bảo Postgres đã dừng trên nút chính cũ và nút chế độ chờ cũ:
    /opt/apigee/apigee-service/bin/apigee-all status

    Nếu Postgres đang chạy, hãy dừng ứng dụng đó:

    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  3. Nếu đã cài đặt, hãy khởi động Qpid trên nút chế độ chờ cũ:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
  4. Chuyển nút dự phòng mới thành nút chính Postgres:
    1. Chuyển nút chờ mới thành nút chính mới:
      apigee-service apigee-postgresql promote-standby-to-master new_standby_IP

      Nếu được nhắc, hãy nhập mật khẩu Postgres cho "apigee" Người dùng, mặc định là "postgres".

    2. Chỉnh sửa tệp cấu hình mà bạn đã dùng để cài đặt phiên bản Edge hiện tại để chỉ định như sau:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    3. Định cấu hình trang cái mới:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  5. Nếu đã nâng cấp nút chờ cũ lên phiên bản mới hơn, trước tiên, bạn phải hạ cấp phần mềm Apigee trên nút chờ cũ. Nếu bạn vẫn có phiên bản cũ trên phiên bản cũ nút chế độ chờ, bạn có thể bỏ qua bước này và tiếp tục với bước 6.
    1. Dừng Postgres trên nút chế độ chờ cũ:
      apigee-service apigee-postgresql stop
      apigee-service edge-postgres-server stop
    2. Gỡ cài đặt Postgres khỏi nút chế độ chờ cũ:
      apigee-service apigee-postgresql uninstall
      apigee-service edge-postgres-server uninstall
    3. Xoá thư mục dữ liệu Postgres khỏi nút chế độ chờ cũ:
      cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    4. Tải xuống và chạy phiên bản Tự động khởi động phiên bản cũ (đối với phiên bản Apigee bạn đang triển khai quay lại) trên nút chế độ chờ cũ. Các bước chính xác có thể khác nhau tuỳ thuộc vào việc bạn có đang sử dụng cài đặt dựa trên Internet hoặc ngoại tuyến. Nếu chạy phiên bản cũ hơn, quy trình khởi động Apigee sẽ thiết lập kho lưu trữ yum bằng dữ liệu Apigee phiên bản cũ hơn.
    5. Thiết lập các thành phần Postgres trên nút chế độ chờ cũ:
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
    6. Kiểm tra và xác minh rằng các thành phần Postgres trên nút chế độ chờ cũ đã được hoàn nguyên về phiên bản cũ:
      apigee-service apigee-postgresql version
      apigee-service edge-postgres-server version
  6. Tạo lại nút chế độ chờ cũ:
    1. Chỉnh sửa tệp cấu hình mà bạn đã dùng để cài đặt phiên bản Edge hiện tại để chỉ định như sau:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    2. Xoá thư mục dữ liệu trên nút chế độ chờ cũ:
      cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    3. Định cấu hình lại nút chế độ chờ cũ thành nút chờ của nút chính mới:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    4. Đảm bảo Postgres đang chạy trên nút chế độ chờ cũ:
      /opt/apigee/apigee-service/bin/apigee-all status

      Nếu Postgres không chạy, hãy khởi động Postgres:

      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
  7. Xác minh rằng nút chế độ chờ mới đã được thêm bằng cách xem /opt/apigee/apigee-postgresql/conf/pg_hba.conf trên trang cái mới.
  8. Xem số liệu phân tích hiện tại và thông tin nhóm người tiêu dùng bằng cách chạy lệnh sau trên Máy chủ quản lý:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    Lệnh này trả về tên nhóm Analytics trong trường name và tên nhóm người tiêu dùng vào trường name trong consumer-groups. Điều này cũng trả về các UUID của nút chính và nút chờ Postgres cũ trong trường postgres-server và trong trường datastores. Bạn sẽ thấy kết quả ở dạng:

    {
      "name" : "axgroup-001",
      "properties" : {
      },
      "scopes" : [ "VALIDATE~test", "sgilson~prod" ],
      "uuids" : {
        "qpid-server" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ],
        "postgres-server" : [
          "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256"
        ]
      },
      "consumer-groups" : [ {
        "name" : "consumer-group-001",
        "consumers" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ],
        "datastores" :
          [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ],
          "properties" : {     }
        }
      ],
      "data-processors" : {
      }
    }
  9. Lấy địa chỉ UUID của bản chính cũ bằng cách chạy lệnh curl sau trên nút chính cũ:
    curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self

    Bạn sẽ thấy mã nhận dạng duy nhất (UUID) của nút ở cuối kết quả, có dạng:

    "type" : [ "postgres-server" ],
    "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
  10. Lặp lại bước trước đó để lấy địa chỉ IP của nút chế độ chờ cũ và nút mới .
  11. Xóa nút chính và nút chờ cũ khỏi nhóm người tiêu dùng:
    curl -u sysAdminEmail:password -X DELETE \
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores/masterUUID,standbyUUID" -v

    Trong đó axgroup-001consumer-group-001 là tên mặc định của Analytics và nhóm người tiêu dùng. masterUUID,standbyUUID đang có cùng thứ tự với chúng xuất hiện ở trên khi bạn xem thông tin phân tích và nhóm người tiêu dùng hiện tại ở trên. Bạn có thể phải chỉ định chúng là standbyUUID,masterUUID.

    Thuộc tính datastores cho consumer-groups hiện sẽ là trống.

  12. Xóa nút chính và nút dự phòng cũ khỏi nhóm Analytics:
    curl -u sysAdminEmail:password -X DELETE \
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v

    Hiện tại, thuộc tính postgres-server trong uuids sẽ trống.

  13. Đăng ký nút chính và nút chờ PG mới với nhóm phân tích và nhóm người tiêu dùng:
    curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
    curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores?uuid=masterUUID,standbyUUID" -v
  14. Xác thực nhóm Analytics:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    Bạn sẽ thấy các mã nhận dạng duy nhất (UUID) của nút chính và nút chờ mới được liệt kê trong nhóm số liệu phân tích và nhóm người tiêu dùng.

  15. Khởi động lại Edge Management Server:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  16. Khởi động lại tất cả các máy chủ Qpid:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
  17. Khởi động lại tất cả các máy chủ Postgres:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  18. Xác minh trạng thái sao chép bằng cách phát các tập lệnh sau trên cả hai máy chủ. Hệ thống sẽ hiển thị kết quả giống nhau trên cả hai máy chủ để đảm bảo sao chép thành công:

    Trên trang cái mới, hãy chạy:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    Xác minh rằng đó là bản chính. Trên nút chế độ chờ cũ:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    Xác minh rằng đó là chế độ chờ.

  19. Lặp lại bước trước đó sau khi thực hiện một số yêu cầu API để đảm bảo rằng các nút đang ở đồng bộ hoá.
  20. Gỡ bỏ trình điều khiển Postgres cũ bằng cách sử dụng quy trình trong Cập nhật Apigee Edge 4.16.01/4.16.05 đến 4.17.09.

    Ngoài ra, bạn có thể gỡ cài đặt Qpid khỏi trang cái cũ và cài đặt Qpid trên nút chính mới. Sau khi gỡ cài đặt Qpid, bạn có thể gỡ cài đặt nút chính 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ủ:

  1. Ngừ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