Khôi phục Apigee Edge 4.54.00

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

Bạn có thể khôi phục Edge 4.54.00 về bất kỳ phiên bản phát hành chính nào sau đây:

  • Phiên bản 4.53.00
  • Phiên bản 4.53.01

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

Thứ tự khôi phục

Bạn nên khôi phục các thành phần theo thứ tự ngược lại với thứ tự nâng cấp. Thứ tự chung điển hình để khôi phục cho Đám mây riêng tư 4.54.00 sẽ có dạng như sau:

  • Khôi phục Cassandra, Zookeeper.
  • Khôi phục Qpid, các thành phần khác liên quan đến số liệu phân tích và Postgres.
  • Giao diện người dùng khôi phục
  • Khôi phục LDAP.
  • Khôi phục máy chủ quản lý.
  • Khôi phục bộ định tuyến và bộ xử lý thông báo.

Ví dụ: giả sử bạn đã nâng cấp tất cả Bộ định tuyến và Bộ xử lý thông báo, tất cả máy chủ quản lý, LDAP và một vài nút giao diện người dùng lên phiên bản 4.54.00 từ phiên bản 4.53.00 (hoặc) 4.53.01 và muốn khôi phục. Trong trường hợp này, bạn sẽ:

  • Khôi phục các nút giao diện người dùng đã nâng cấp
  • Khôi phục các nút LDAP
  • Lần lượt khôi phục các nút máy chủ Quản lý
  • Khôi phục từng RMP một

Những người có thể thực hiện thao tá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 đang chạy với tư cách là người dùng gốc.

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à người dùng khác. Ví dụ: nếu Bộ đị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 Bộ đị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 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à một người dùng khác.

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 cụ thể, Cassandra sẽ sửa đổi giản đồ của dữ liệu được lưu trữ trên nút đó. Do đó, bạn không thể khôi phục trực tiếp tại chỗ.

Các trường hợp khôi phục

Bảng sau đây tóm tắt các chiến lược khôi phục mà bạn có thể sử dụng:

Trường hợp Chiến lược khôi phục
Một DC, một số nút Cassandra được nâng cấp Sử dụng phương thức thanh toán dự phòng
Nhiều DC, một số nút trong một DC được nâng cấp Xây dựng lại từ DC hiện có
Nhiều DC, tất cả các nút Cassandra trong một số DC đã được nâng cấp Xây dựng lại từ DC hiện có
Nhiều DC, nút Cassandra của DC cuối cùng đang được nâng cấp Hãy thử hoàn tất quá trình nâng cấp. Nếu không khả thi, hãy khôi phục 1 DC bằng bản sao lưu. Tạo lại các DC còn lại từ DC đã khôi phục.

Lưu ý chung

Khi cân nhắc việc khôi phục, hãy lưu ý những điều sau:

  • Quá trình khôi phục Cassandra trong quá trình nâng cấp Cassandra: Nếu gặp vấn đề trong quá trình nâng cấp Cassandra, bạn có thể cân nhắc khôi phục. Hãy làm theo các chiến lược khôi phục trong bài viết này dựa trên trạng thái của bạn trong quá trình nâng cấp.
  • Khôi phục bằng bản sao lưu: Bản sao lưu được lấy từ Cassandra 5.0.X không tương thích với bản sao lưu của Cassandra 4.0.X. Để khôi phục Cassandra bằng cách khôi phục bản sao lưu, bạn phải sao lưu Cassandra 4.0.X trước khi cố gắng nâng cấp.

Khôi phục Cassandra bằng cách tạo lại

Điều kiện tiên quyết

  • Bạn đang vận hành một cụm Edge cho đám mây riêng tư 4.53.00/4.53.01 trên nhiều trung tâm dữ liệu.
  • Bạn đang trong quá trình nâng cấp Cassandra từ phiên bản 4.0.X lên 5.0.X và gặp vấn đề trong quá trình nâng cấp.
  • Bạn có ít nhất một trung tâm dữ liệu hoạt động đầy đủ trong cụm vẫn đang chạy phiên bản Cassandra cũ (Cassandra 4.0.X).

Quy trình này dựa vào việc truyền dữ liệu từ một trung tâm dữ liệu hiện có. Quá trình này có thể mất một khoảng thời gian đáng kể, tuỳ thuộc vào lượng dữ liệu được lưu trữ trong Cassandra. Bạn nên chuẩn bị chuyển hướng lưu lượng truy cập trong thời gian chạy khỏi trung tâm dữ liệu này trong khi quá trình khôi phục đang diễn ra.

Các bước tổng quát

  1. Chọn một trung tâm dữ liệu (đã nâng cấp một phần hoặc toàn bộ) mà bạn muốn khôi phục. Chuyển hướng lưu lượng truy cập thời gian chạy đến một trung tâm dữ liệu đang hoạt động khác.
  2. Xác định nút hạt giống trong trung tâm dữ liệu và bắt đầu bằng một trong các nút hạt giống.
  3. Dừng, gỡ cài đặt và dọn dẹp nút Cassandra.
  4. Cài đặt phiên bản Cassandra cũ hơn trên nút và định cấu hình phiên bản đó nếu cần.
  5. Xoá các cấu hình bổ sung đã thêm trước đó.
  6. Lặp lại các bước trên cho tất cả nút gốc trong trung tâm dữ liệu, từng nút một.
  7. Lặp lại các bước trên cho tất cả các nút Cassandra còn lại trong trung tâm dữ liệu, từng nút một.
  8. Từng bước xây dựng lại các nút từ trung tâm dữ liệu chức năng hiện có.
  9. Khởi động lại tất cả các thành phần edge-* trong trung tâm dữ liệu được kết nối với Cassandra.
  10. Kiểm thử và chuyển lưu lượng truy cập trở lại trung tâm dữ liệu này.
  11. Lặp lại các bước cho từng trung tâm dữ liệu, từng trung tâm một.

Các bước chi tiết

  1. Chọn một trung tâm dữ liệu nơi tất cả hoặc một số nút Cassandra được nâng cấp. Chuyển hướng tất cả lưu lượng truy cập proxy thời gian chạy và lưu lượng truy cập quản lý khỏi trung tâm dữ liệu này trong khi các nút Cassandra trong trung tâm dữ liệu này đang được khôi phục. Đảm bảo tất cả các nút Cassandra đều ở trạng thái UN (Up/Normal) khi lệnh nodetool ring được thực thi trên các nút. Nếu một số nút nhất định không hoạt động, hãy khắc phục sự cố và đưa các nút đó hoạt động trở lại trước khi tiếp tục.

    Hãy xem ví dụ dưới đây:

    /opt/apigee/apigee-cassandra/bin/nodetool status
    Datacenter: dc-1
    ================
    Status=Up/Down
    |/ State=Normal/Leaving/Joining/Moving
    --  Address      Load       Tokens       Owns (effective)  Host ID                               Rack
    UN  DC1-1IP1  456.41 KiB  1            100.0%            78fc4ddd-2ed9-4a8c-98a2-63a38c2f1920  ra-1
    UN  DC1-1IP2  870.93 KiB  1            100.0%            160db01a-64ab-43a7-b9ea-3b7f8f66d52b  ra-1
    UN  DC1-1IP3  824.08 KiB  1            100.0%            21d61543-d59e-403a-bf5d-bfe7f664baa6  ra-1
    Datacenter: dc-2
    ================
    Status=Up/Down
    |/ State=Normal/Leaving/Joining/Moving
    --  Address      Load       Tokens       Owns (effective)  Host ID                               Rack
    UN  DC2-1IP1   802.08 KiB  1            100.0%            583e0576-336d-4ce7-9729-2ae74e0abde2  ra-1
    UN  DC2-1IP2   844.4 KiB   1            100.0%            fef794d5-f4c2-4a4e-bb05-9adaeb4aea4b  ra-1
    UN  DC2-1IP3   878.12 KiB  1            100.0%            3894b3d9-1f5a-444d-83db-7b1e338bbfc9  ra-1

    Bạn có thể chạy nodetool describecluster trên các nút để nắm được trạng thái hiện tại của toàn bộ cụm. Ví dụ: sau đây cho thấy một phiên bản của cụm gồm 2 trung tâm dữ liệu, trong đó tất cả các nút DC-1 đều ở phiên bản Cassandra 4, trong khi tất cả các nút DC-2 đều ở phiên bản Cassandra 3:

    # On nodes where Cassandra is upgraded
    /opt/apigee/apigee-cassandra/bin/nodetool describecluster
    Cluster Information:
        Name: Apigee
        Snitch: org.apache.cassandra.locator.PropertyFileSnitch
        DynamicEndPointSnitch: enabled
        Partitioner: org.apache.cassandra.dht.RandomPartitioner
        Schema versions:
            2eadcd74-0245-309a-9992-3625afa70038: [DC-1-IP1, DC-1-IP2, DC-1-IP3]
            129dc15e-198e-3c11-b64c-701044a3a1ad: [DC-2-IP1, DC-2-IP2, DC-2-IP3]
    
    Stats for all nodes:
        Live: 6
        Joining: 0
        Moving: 0
        Leaving: 0
        Unreachable: 0
    
    Data Centers:
        dc-1 #Nodes: 3 #Down: 0
        dc-2 #Nodes: 3 #Down: 0
    
    Database versions:
        5.0.8: [DC-1-IP1:7000, DC-1-IP2:7000, DC-1-IP3:7000]
        4.0.13: [DC-2-IP1:7000, DC-2-IP2:7000, DC-2-IP3:7000]
    
    Keyspaces:
        system_schema -> Replication class: LocalStrategy {}
        system -> Replication class: LocalStrategy {}
        auth -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        cache -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        devconnect -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        dek -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        user_settings -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        apprepo -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        kms -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        identityzone -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        audit -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        analytics -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        keyvaluemap -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        counter -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        apimodel_v2 -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        system_distributed -> Replication class: SimpleStrategy {replication_factor=3}
        system_traces -> Replication class: SimpleStrategy {replication_factor=2}
        system_auth -> Replication class: SimpleStrategy {replication_factor=1}
    
    # On nodes where Cassandra is not upgraded
    /opt/apigee/apigee-cassandra/bin/nodetool describecluster
    Cluster Information:
        Name: Apigee
        Snitch: org.apache.cassandra.locator.PropertyFileSnitch
        DynamicEndPointSnitch: enabled
        Partitioner: org.apache.cassandra.dht.RandomPartitioner
        Schema versions:
            2eadcd74-0245-309a-9992-3625afa70038: [DC-1-IP1, DC-1-IP2, DC-1-IP3]
            129dc15e-198e-3c11-b64c-701044a3a1ad: [DC-2-IP1, DC-2-IP2, DC-2-IP3]
            
  2. Xác định các nút hạt giống trong trung tâm dữ liệu: Tham khảo phần Cách xác định các nút hạt giống trong Phụ lục. Thực hiện các bước bên dưới trên một trong các nút ban đầu:
  3. Dừng, gỡ cài đặt và dọn dẹp dữ liệu khỏi nút của Cassandra. Chọn nút ban đầu đầu tiên trên Cassandra phiên bản 5 trong trung tâm dữ liệu này. Dừng lại.
    # Stop Cassandra service on the node
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    
    # Uninstall Cassandra software
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    
    # Wipe out Cassandra data
    rm -rf /opt/apigee/data/apigee-cassandra
            
  4. Cài đặt phần mềm Cassandra cũ trên nút và thiết lập một số cấu hình. Thực thi tệp khởi động của Edge cho Đám mây riêng tư 4.53.00/4.53.01.
  5. # Download bootstrap of 4.53.00
    curl https://software.apigee.com/bootstrap_4.53.00.sh -o /tmp/bootstrap_4.53.00.sh -u uName:pWord
    
    # Execute bootstrap of 4.53.00
    sudo bash /tmp/bootstrap_4.53.00.sh apigeeuser=uName apigeepassword=pWord
        
  6. Tạo hoặc chỉnh sửa tệp /opt/apigee/customer/application/cassandra.properties.
  7. Thêm nội dung sau vào tệp. ipOfNode là địa chỉ IP của nút mà Cassandra sử dụng để giao tiếp với các nút Cassandra khác:
    conf_jvm_options_custom_settings=-Dcassandra.replace_address=ipOfNode -Dcassandra.allow_unsafe_replace=true
  8. Đảm bảo tệp thuộc sở hữu và người dùng apigee có thể đọc được:
    chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
  9. Cài đặt và thiết lập Cassandra:
  10. # Install cassandra version 4.0.X
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra install
    # Setup cassandra while passing standard configuration file
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f configFile
    # Ensure Cassandra version is correct and service is running
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra version
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra status
  11. Xác minh rằng nút đã bắt đầu. Kiểm tra lệnh sau trên nút này và các nút khác trong cụm. Nút này phải báo cáo rằng nó đang ở trạng thái "UN" (Đang hoạt động/Bình thường):
    /opt/apigee/apigee-cassandra/bin/nodetool status
  12. Xoá các cấu hình thừa đã thêm trước đó khỏi tệp /opt/apigee/customer/application/cassandra.properties.
  13. Lặp lại các bước từ 3 đến 10 trên tất cả các nút hạt giống Cassandra trong trung tâm dữ liệu, từng nút một.
  14. Lặp lại các bước từ 3 đến 10 trên tất cả các nút Cassandra còn lại trong trung tâm dữ liệu, từng nút một.
  15. Tạo lại tất cả các nút trong trung tâm dữ liệu từ một trung tâm dữ liệu đang chạy phiên bản Cassandra cũ hơn. Thực hiện bước này cho từng nút một:
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild -dc <name of working DC>

    Quy trình này có thể mất chút thời gian. Bạn có thể điều chỉnh streamingthroughput nếu cần. Kiểm tra nodetool netstats để biết trạng thái hoàn tất thao tác.

  16. (Không bắt buộc) Thực thi lệnh sửa chữa trong nút Cassandra nếu dữ liệu không được tạo lại.
    /opt/apigee/apigee-cassandra/bin/nodetool -h node-IP repair -pr
  17. Khởi động lại tất cả các thành phần edge-* trong trung tâm dữ liệu, từng thành phần một:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  18. Xác thực và chuyển hướng lưu lượng truy cập trở lại trung tâm dữ liệu này. Chạy một số quy trình xác thực cho lưu lượng truy cập trong thời gian chạy và API quản lý trong trung tâm dữ liệu này, đồng thời bắt đầu định tuyến lại lưu lượng truy cập proxy và API quản lý về trung tâm dữ liệu này.
  19. Lặp lại các bước trên cho từng trung tâm dữ liệu mà bạn muốn khôi phục.

Khôi phục Cassandra bằng bản sao lưu

Điều kiện tiên quyết

  1. Bạn đang trong quá trình nâng cấp Cassandra từ phiên bản 4.0.X lên 5.0.X và gặp vấn đề trong quá trình nâng cấp.
  2. Bạn có bản sao lưu cho nút mà bạn đang khôi phục. Bản sao lưu được tạo trước khi bạn thử nâng cấp từ phiên bản 4.0.X lên 5.0.X.

Các bước

  1. Chọn một nút mà bạn muốn khôi phục. Nếu bạn đang khôi phục tất cả nút trong một trung tâm dữ liệu bằng bản sao lưu, hãy bắt đầu với các nút gốc trước. Tham khảo phần Cách xác định nút gốc trong Phụ lục.

  2. Dừng, gỡ cài đặt và dọn dẹp nút Cassandra:

    # Stop Cassandra service on the node
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    
    # Uninstall Cassandra software
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    
    # Wipe Cassandra data
    rm -rf /opt/apigee/data/apigee-cassandra
  3. Cài đặt phần mềm Cassandra cũ hơn trên nút và định cấu hình phần mềm đó:

    • Thực thi tệp khởi động cho Edge cho đám mây riêng tư 4.53.00/4.53.01:
    • # Download bootstrap for 4.53.00
      curl https://software.apigee.com/bootstrap_4.53.00.sh -o /tmp/bootstrap_4.53.00.sh -u uName:pWord
      
      # Execute bootstrap for 4.53.00
      sudo bash /tmp/bootstrap_4.53.00.sh apigeeuser=uName apigeepassword=pWord
    • Tạo hoặc chỉnh sửa tệp /opt/apigee/customer/application/cassandra.properties:
    • conf_jvm_options_custom_settings=-Dcassandra.replace_address=ipOfNode -Dcassandra.allow_unsafe_replace=true
    • Đảm bảo tệp thuộc sở hữu của người dùng apigee và có thể đọc được:
    • chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
    • Cài đặt và thiết lập Cassandra:
    • # Install Cassandra version 4.0.X
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra install
      
      # Set up Cassandra with the standard configuration file
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f configFile
      
      # Verify Cassandra version and check service status
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra version
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra status

    Xác minh rằng nút đã khởi động. Kiểm tra lệnh sau trên nút này và các nút khác trong cụm. Các nút phải báo cáo rằng nút này đang ở trạng thái "UN":

    /opt/apigee/apigee-cassandra/bin/nodetool status
  4. Dừng dịch vụ Cassandra và khôi phục bản sao lưu. Hãy tham khảo tài liệu về sao lưu và khôi phục để biết thêm thông tin:

    # Stop Cassandra service on the node
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    
    # Wipe the data directory in preparation for restore
    rm -rf /opt/apigee/data/apigee-cassandra/data
    
    # Restore the backup taken before the upgrade attempt
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restore backupFile
            
  5. Sau khi khôi phục bản sao lưu, hãy xoá các cấu hình bổ sung:

    Xoá cấu hình đã thêm trước đó khỏi tệp /opt/apigee/customer/application/cassandra.properties.

  6. Bắt đầu dịch vụ Cassandra trên nút:

    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra start
  7. Lặp lại các bước trên từng nút Cassandra mà bạn muốn khôi phục bằng cách sử dụng bản sao lưu, mỗi lần một nút.

  8. Sau khi khôi phục tất cả các nút Cassandra, hãy khởi động lại từng thành phần edge-*:

    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart

Tối ưu hoá sao lưu (tuỳ chọn nâng cao)

Bạn có thể giảm thiểu (hoặc loại bỏ) nguy cơ mất dữ liệu trong khi khôi phục bản sao lưu nếu có sẵn bản sao chứa dữ liệu mới nhất. Nếu có bản sao, sau khi khôi phục bản sao lưu, hãy chạy quy trình sửa chữa trên nút đã được khôi phục.

Phụ lục

Cách xác định các nút ban đầu

Trên bất kỳ nút Cassandra nào trong trung tâm dữ liệu, hãy chạy lệnh sau:

/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure -search conf_cassandra_seeds

Lệnh này sẽ xuất ra nhiều dòng. Tìm dòng cuối cùng của kết quả. Các địa chỉ IP được liệt kê ở dòng cuối cùng là các nút ban đầu. Trong ví dụ dưới đây, DC-1-IP1, DC-1-IP2, DC-2-IP1 và DC-2-IP2 là các IP của nút gốc:

Found key conf_cassandra_seeds, with value, "127.0.0.1", in /opt/apigee/apigee-cassandra/token/default.properties

Found key conf_cassandra_seeds, with value, 127.0.0.1, in /opt/apigee/apigee-cassandra/token/application/cassandra.properties

Found key conf_cassandra_seeds, with value, "DC-1-IP1, DC-1-IP2, DC-2-IP1, DC-2-IP2", in /opt/apigee/token/application/cassandra.properties
apigee-configutil: apigee-cassandra: # OK

Khôi phục ZooKeeper

Khôi phục

Trong trường hợp cần khôi phục:

  1. Trước tiên, hãy thực hiện các bước khôi phục trên người quan sát và người theo dõi. Vui lòng tham khảo bài viết Xác định người lãnh đạo, người theo dõi và người quan sát để chọn người quan sát và người theo dõi.
  2. Tải xuống và thực thi quy trình khởi động của phiên bản mà bạn đang khôi phục, tức là 4.53.00 hoặc 4.53.01. Quy trình này có thể khác nhau tuỳ thuộc vào việc nút có kết nối Internet bên ngoài hay không hoặc bạn đang thực hiện cài đặt khi không có mạng.
  3. Dừng Zookeeper nếu ứng dụng này đang chạy trên nút:
      /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper stop
  4. Gỡ cài đặt zookeeper hiện có:
      /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper uninstall
  5. Cài đặt Zookeeper như bình thường:
      /opt/apigee/apigee-setup/bin/setup.sh -p zk -f <silent-config-file>
  6. Sau khi tất cả các nút theo dõi và nút quan sát đã được khôi phục, hãy khôi phục nút chính bằng cách làm theo các bước từ 2 đến 5 trên nút chính.
  7. Sau khi tất cả các nút đã được khôi phục, hãy xác minh tình trạng của cụm và đảm bảo có một nút chính trong cụm.

Khôi phục bản sao lưu

Tham khảo bài viết Khôi phục từ bản sao lưu.

Khôi phục Qpid

Để khôi phục về Bản phát hành tính năng trước đó, hãy nhớ tải tệp bootstrap.sh xuống cho phiên bản mà bạn muốn khôi phục. Để quay lại phiên bản 4.53.00/4.53.01, hãy tải xuống bootstrap_4.53.00.sh.

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

  1. Dừng trình trung gian Qpid hiện có:
    apigee-service apigee-qpidd stop
  2. Chặn lưu lượng truy cập đến trên cổng trình trung gian 5672 từ tất cả bộ xử lý thông báo bằng cách áp dụng tường lửa. Bạn có thể áp dụng tường lửa này ở cấp phiên bản nút Qpid hoặc một số thành phần mạng/tường lửa bên ngoài khác.

    Bạn nên thực hiện bước tương tự cho tất cả địa chỉ IP của trình xử lý thông báo. Ví dụ: để DROP các yêu cầu đến từ địa chỉ IP của bộ xử lý thông báo đến nút Qpid trên cổng 5672 bằng IPTables, bạn có thể sử dụng một lệnh như sau:

    iptables -A INPUT -p tcp --dport 5672 -s MESSAGE_PROCESSOR_IP -j DROP
  3. Khởi động lại trình trung gian Qpid để loại bỏ các thông báo hiện có (nếu có):
    apigee-service apigee-qpidd start
  4. Đảm bảo các hàng đợi hiện có đều trống. Để kiểm tra, hãy đăng nhập vào cổng quản lý Qpid:
    http://QPID_NODE_IP:8090
  5. Sau khi xác minh rằng các hàng đợi đã được dọn sạch, hãy dừng và gỡ cài đặt Qpid:
    /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
  6. Xoá thư mục dữ liệu Qpid:
    rm -r APIGEE_ROOT/data/apigee-qpidd
  7. Cài đặt lại Qpid broker:
    /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
  8. Sau khi cài đặt lại trình trung gian Qpid, hãy xoá chế độ cài đặt tường lửa và liệt kê mọi chế độ cài đặt hiện có bằng các lệnh sau:
    iptables -F
    iptables -L

Khôi phục Postgres

Để hạ cấp từ phiên bản 4.54.00 xuống phiên bản 4.53.00/4.53.01, bạn phải khôi phục bản cập nhật Postgres 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ính-dự phòng:

  • Chuyển nút dự phòng mới thành nút chính Postgres. Postgres chính mới sẽ có cùng phiên bản với bản cài đặt Edge trước đây.
  • Định cấu hình nút dự phòng cũ làm nút dự phòng của nút chính mới. Nút dự phòng cũ sẽ có cùng phiên bản với bản cài đặt Edge trước đó của bạn.
  • Đăng ký các nút chính và nút dự phòng 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 quá trình khôi phục, nút chính cũ sẽ không còn cần thiết nữa. Sau đó, bạn có thể ngừng sử dụng nút chính cũ.

Trước khi bắt đầu

Trước khi thực hiện quy trình khôi phục Postgres 18 về 17/14, hãy thực hiện các bước sau trên cả máy chủ dự phòng mới và máy chủ dự phòng cũ để cập nhật thuộc tính max_locks_per_transaction trên apigee-postgresql:

  1. Nếu chưa có, hãy tạo tệp /opt/apigee/customer/application/postgresql.properties.
  2. Thay đổi quyền sở hữu tệp này thành apigee:
    sudo chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
  3. Thêm thuộc tính sau vào tệp:
    conf/postgresql.conf+max_locks_per_transaction=30000
  4. Định cấu hình apigee-postgresql:
    apigee-service apigee-postgresql configure
  5. Khởi động lại apigee-postgresql:
    apigee-service apigee-postgresql restart

Quy trình khôi phục chi tiết

  1. Đảm bảo rằng nút Postgres dự phòng 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:

    /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 dự phòng cũ:
    /opt/apigee/apigee-service/bin/apigee-all status

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

    /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 dự phòng cũ:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
  4. Quảng bá nút dự phòng mới làm nút chính của Postgres:
    1. Quảng bá nút dự phòng mới thành máy chủ chính mới:
      apigee-service apigee-postgresql promote-standby-to-master old_master_IP

      Nếu được nhắc, hãy nhập mật khẩu Postgres cho người dùng "apigee", mật khẩu này 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 nhằm chỉ định những nội dung 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 bản chính 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 dự phòng cũ lên phiên bản mới hơn, thì trước tiên, bạn phải hạ cấp phần mềm Apigee trên nút dự phòng cũ. Nếu vẫn còn phiên bản cũ trên nút dự phòng cũ, 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 dự phòng cũ:
      apigee-service apigee-postgresql stop
      apigee-service edge-postgres-server stop
    2. Gỡ cài đặt Postgres khỏi nút dự phòng cũ:
      apigee-service apigee-postgresql uninstall
      apigee-service edge-postgres-server uninstall
      apigee-service edge-analytics uninstall
    3. Xoá thư mục dữ liệu Postgres khỏi nút dự phòng cũ:
      cd /opt/apigee/data/apigee-postgresql/pgdata
      rm -rf *
    4. Tải xuống và chạy chương trình khởi động phiên bản cũ (cho phiên bản Apigee mà bạn đang khôi phục) trên nút dự phòng cũ. Các bước chính xác có thể thay đổi tuỳ thuộc vào việc bạn đang sử dụng phương thức cài đặt dựa trên Internet hay phương thức cài đặt ngoại tuyến. Việc chạy trình tự khởi động Apigee phiên bản cũ sẽ thiết lập kho lưu trữ yum bằng dữ liệu Apigee phiên bản cũ.
    5. Thiết lập các thành phần Postgres trên nút dự phòng 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 dự phòng cũ đã được khôi phục về phiên bản cũ:
      apigee-service apigee-postgresql version
      apigee-service edge-postgres-server version
  6. Tạo lại nút dự phòng 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 nhằm chỉ định những nội dung 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 dự phòng cũ:
      cd /opt/apigee/data/apigee-postgresql/pgdata
      rm -rf *
    3. Định cấu hình lại nút dự phòng cũ để làm nút dự phòng 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 dự phòng cũ:
      /opt/apigee/apigee-service/bin/apigee-all status

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

      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
  7. Xác minh rằng nút dự phòng mới đã được thêm bằng cách xem tệp /opt/apigee/apigee-postgresql/conf/pg_hba.conf trên nút chính mới.
  8. Xem thông tin về nhóm người tiêu dùng và số liệu phân tích hiện tại 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 phân tích trong trường name và tên nhóm người dùng trong trường name trong consumer-groups. Thao tác này cũng trả về UUID của các nút chính và nút dự phòng 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 máy chủ chính cũ bằng cách chạy lệnh curl sau đây trên nút máy chủ chính cũ:
    curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self

    Bạn sẽ thấy UUID của nút ở cuối đầu ra, dưới 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 dự phòng cũ và nút chính mới.
  11. Xoá các nút chính và nút dự phòng cũ khỏi nhóm người 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-001 và consumer-group-001 là tên mặc định của nhóm phân tích và nhóm người dùng. masterUUID,standbyUUID theo thứ tự giống như khi 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 các giá trị này là standbyUUID,masterUUID.

    Thuộc tính datastores cho consumer-groups hiện phải trống.

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

    Thuộc tính postgres-server trong uuids hiện phải trống.

  13. Đăng ký các nút chính và nút dự phòng PG mới với nhóm phân tích và nhóm người 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 số liệu phân tích:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    Bạn sẽ thấy UUID của các nút chính và nút dự phòng mới được liệt kê trong nhóm phân tích và nhóm người dùng.

  15. Khởi động lại Máy chủ quản lý Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  16. Khởi động lại tất 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ả 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 hành 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 quá trình sao chép diễn ra thành công:

    Trên máy chủ chính 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 dự phòng cũ, hãy chạy:

    /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 được đồng bộ hoá.
  20. Ngừng hoạt động của bản chính Postgres cũ:

    Ngoài ra, bạn có thể gỡ cài đặt Qpid khỏi nút chính 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ể ngừng hoạt động nút chính cũ.

Khôi phục giao diện người dùng mới của Edge

Apigee Edge cho Đám mây riêng tư 4.54.00 thay thế Giao diện người dùng cổ điển (edge-ui) bằng Giao diện người dùng Edge mới (edge-management-ui). Vì thành phần giao diện người dùng thay đổi trong phiên bản 4.54.00, nên việc quay lại phiên bản 4.53.00 hoặc 4.53.01 yêu cầu bạn phải gỡ cài đặt edge-management-ui và cài đặt lại hồ sơ giao diện người dùng trước đó:

  • Giao diện người dùng cổ điển (edge-ui): Cài đặt lại hồ sơ ui.
  • Giao diện người dùng Edge mới (edge-ui và edge-management-ui): Cài đặt lại cả hồ sơ ui và ue trong các nút tương ứng.

Cách khôi phục giao diện người dùng trên một nút:

  1. Dừng và gỡ cài đặt giao diện người dùng New Edge 4.54.00 rồi cài đặt phiên bản trước để quay lại:
    1. Dừng và gỡ cài đặt Giao diện người dùng Edge mới 4.54.00 (edge-management-ui):
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui stop
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui uninstall
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui-static uninstall
    2. Thực thi tệp tự khởi động cho Apigee Edge cho đám mây riêng tư 4.53.00/4.53.01:
      # Download bootstrap for 4.53.00
      curl https://software.apigee.com/bootstrap_4.53.00.sh -o /tmp/bootstrap_4.53.00.sh -u uName:pWord
      
      # Execute bootstrap for 4.53.00
      sudo bash /tmp/bootstrap_4.53.00.sh apigeeuser=uName apigeepassword=pWord
    3. Khôi phục apigee-setup từ phiên bản 4.54.00 về phiên bản trước đó:
      # Uninstall apigee-setup
      /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
      
      # Install apigee-setup
      /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  2. Khôi phục cấu hình giao diện người dùng 4.53.00/4.53.01:
    • Nếu bạn đã sao lưu tệp cấu hình im lặng từ bản cài đặt 4.53.00 hoặc 4.53.01, hãy sử dụng tệp sao lưu đó cho quy trình khôi phục. Nếu không, trong tệp cấu hình tự động 4.54.00, hãy khôi phục hoặc đánh dấu là nội dung nhận xét các thuộc tính giao diện người dùng 4.53.00 hoặc 4.53.01 đã bị xoá hoặc được đánh dấu là nội dung nhận xét trong quá trình nâng cấp. Để tham khảo, hãy xem phần nâng cấp giao diện người dùng.
    • Nếu /opt/apigee/customer/application/ui.properties bị xoá trong quá trình nâng cấp, hãy khôi phục tệp này từ thư mục sao lưu:
      cp -rf /opt/apigee/backup/ui/customer/application/ui.properties /opt/apigee/customer/application/
      chown apigee:apigee /opt/apigee/customer/application/ui.properties
  3. Cài đặt lại và định cấu hình phiên bản giao diện người dùng trước:
    • Quay lại giao diện người dùng cũ (edge-ui):
      1. Cài đặt và thiết lập Giao diện người dùng cũ (đối với Xác thực cơ bản, bạn không cần thực hiện thêm bước nào):
        /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
      2. Nếu SSO được bật, hãy định cấu hình SSO trên Giao diện người dùng cũ (đảm bảo apigee-sso đang chạy trước):
        /opt/apigee/apigee-service/bin/apigee-service edge-ui configure-sso -f configFile
    • Quay lại phiên bản 4.53.00 hoặc 4.53.01 của Giao diện người dùng Edge mới (edge-management-ui và Shoehorn edge-ui):
      1. Đảm bảo bạn đã đặt EDGEUI_ENABLE_UNIFIED_UI=y trong tệp cấu hình tự động, sau đó cài đặt và thiết lập hồ sơ ui và ue:
        /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
        /opt/apigee/apigee-setup/bin/setup.sh -p ue -f configFile
      2. Nếu SSO được bật, hãy định cấu hình SSO trên cả hai thành phần giao diện người dùng (đảm bảo apigee-sso đang chạy trước):
        /opt/apigee/apigee-service/bin/apigee-service edge-ui configure-sso -f configFile
        /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-sso -f configFile
  4. Xác minh trạng thái và phiên bản giao diện người dùng đã khôi phục:
    • Đối với giao diện người dùng cũ (edge-ui):
      /opt/apigee/apigee-service/bin/apigee-service edge-ui status
      /opt/apigee/apigee-service/bin/apigee-service edge-ui version
    • Đối với giao diện người dùng Edge mới (edge-management-ui):
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui status
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui version

Khôi phục OpenLDAP

Phần này cung cấp hướng dẫn từng bước để khôi phục Symas OpenLDAP 2.6.10 trong Edge cho Đám mây riêng tư 4.54.00 về OpenLDAP 2.4.46 (Edge cho Đám mây riêng tư 4.53.00) hoặc Symas OpenLDAP 2.6.7 (Edge cho Đám mây riêng tư 4.53.01). Bạn phải thực hiện việc khôi phục trên toàn bộ cụm LDAP bằng cách sử dụng bản sao lưu LDAP hợp lệ trước khi nâng cấp.

Mục tiêu chính là khôi phục toàn bộ cụm LDAP về trạng thái nhất quán từ một bản sao lưu tốt đã biết. Quy trình này là như nhau đối với tất cả các trường hợp: một máy chủ, đang hoạt động-đang hoạt động và đang hoạt động-thụ động.

Trước khi bắt đầu

  • Sao lưu không tương thích: Sử dụng bản sao lưu trước khi nâng cấp từ OpenLDAP 2.4.46 (Edge for Private Cloud 4.53.00) hoặc Symas OpenLDAP 2.6.7 (Edge for Private Cloud 4.53.01) được thực hiện bằng apigee-service apigee-openldap backup trước khi thử nâng cấp. Các bản sao lưu được tạo sau khi nâng cấp sẽ không tương thích và không thể sử dụng.
  • Thời gian ngừng hoạt động của API quản lý: Trong quá trình khôi phục LDAP, các API quản lý sẽ không hoạt động, điều này có thể ảnh hưởng đến các tác vụ quản trị. Tắt tất cả các phiên bản edge-management-server và edge-ui trước khi tiếp tục khôi phục LDAP.
  • Rủi ro mất dữ liệu: Nếu tiếp tục mà không có bản sao lưu hợp lệ và tương thích, bạn có nguy cơ mất dữ liệu vĩnh viễn.
  • Bản sao lưu hợp lệ: Bạn phải có bản sao lưu LDAP hợp lệ trước khi nâng cấp.
  • Sao lưu tệp silent.conf: Giữ lại bản sao lưu của tệp silent.conf từ cả phiên bản trước và phiên bản hiện tại để tránh nhầm lẫn về cấu hình trong quá trình nâng cấp và khôi phục.
  • Trình tự khôi phục: Hoàn tất quy trình khôi phục cho Cassandra, ZooKeeper, Qpid, PostgreSQL, apigee-sso và giao diện người dùng Edge trước khi khôi phục OpenLDAP.

Quy trình khôi phục

  1. Tắt Máy chủ quản lý và giao diện người dùng: Tắt tất cả các phiên bản edge-management-server và edge-ui trước khi tiến hành khôi phục LDAP:
    apigee-service edge-management-server stop
    apigee-service edge-ui stop
  2. Ghi lại số lượng mục nhập LDAP hiện tại (trước khi dừng LDAP): Lấy tổng số bản ghi để tham khảo từ tất cả máy chủ LDAP, thay thế YOUR_PASSWORD bằng mật khẩu quản trị viên LDAP hiện tại của bạn. (Số lượng bản ghi phải khớp trên tất cả các máy chủ LDAP.)
    # Note: Replace 'YOUR_PASSWORD' with your current LDAP manager password.
    ldapsearch -o ldif-wrap=no -b "dc=apigee,dc=com" -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w 'YOUR_PASSWORD' | wc -l
  3. Dừng và gỡ cài đặt LDAP 2.6 mới: Dừng dịch vụ apigee-openldap, đồng thời xoá cấu hình và thư mục dữ liệu của dịch vụ này. Thực hiện bước này trên tất cả máy chủ LDAP, mỗi lần một nút trong cụm, để đảm bảo tính nhất quán:
    apigee-service apigee-openldap stop
    apigee-service apigee-openldap uninstall
    rm -rf /opt/apigee/data/apigee-openldap/*
  4. Cài đặt phiên bản LDAP 2.4.46 hoặc 2.6.7 trước đó:
    • Cài đặt phiên bản LDAP cũ:
      /opt/apigee/apigee-setup/bin/setup.sh -p ld -f /opt/silent.conf
    • Xác thực phiên bản LDAP:
      source ~/.bash_profile
      ldapsearch -VV
      
      # Expected output if rolled back to 4.53.00:
      ldapsearch: @(#) $OpenLDAP: ldapsearch 2.4.46
      
      # Expected output if rolled back to 4.53.01:
      ldapsearch: @(#) $OpenLDAP: ldapsearch 2.6.7
    • Lặp lại các bước phụ trước đó trong bước 4 trên từng nút LDAP, mỗi lần một nút.
  5. Xoá dữ liệu còn sót lại: Trên tất cả máy chủ LDAP, hãy dừng dịch vụ mới cài đặt và xoá thư mục dữ liệu của dịch vụ đó để chuẩn bị khôi phục từ bản sao lưu:
    apigee-service apigee-openldap stop
    rm -rf /opt/apigee/data/apigee-openldap/*
  6. Khôi phục dữ liệu LDAP: Đối với chế độ thiết lập một máy chủ, hãy chuyển thẳng đến bước 6b. Đối với chế độ thiết lập nhiều máy chủ, hãy chuyển sang bước 6a.
    1. Xác định máy chủ LDAP đang hoạt động: Trước khi khôi phục dữ liệu LDAP, hãy xác định máy chủ (nhà cung cấp) đang hoạt động bằng cách chạy lệnh sau:
      grep -i '^olcSyncrepl:' /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase*.ldif
    2. Khôi phục dữ liệu LDAP (đảm bảo hoàn tất bước 5 trên tất cả các máy chủ trước khi khôi phục):
      • Trên máy chủ LDAP đơn lẻ hoặc đang hoạt động (được xác định ở bước 6a), hãy chuyển đến thư mục sao lưu và khôi phục bản sao lưu trước khi nâng cấp (ví dụ: 2025.07.28,13.59.00 hoặc bỏ qua dấu thời gian nếu bản sao lưu trước khi nâng cấp là bản sao lưu mới nhất trong thư mục):
        cd /opt/apigee/backup/openldap
        
        # To restore a specific backup, provide the timestamp as shown below:
        apigee-service apigee-openldap restore 2025.07.28,13.59.00
        
        # Note: If no timestamp is provided, the latest available backup will be restored by default:
        apigee-service apigee-openldap restore
        
        # It is recommended to specify the backup explicitly to avoid restoring an unintended version.
      • Bắt đầu dịch vụ apigee-openldap:
        apigee-service apigee-openldap start
  7. Khởi động các máy chủ LDAP còn lại: Nếu bạn có chế độ thiết lập nhiều máy chủ, hãy khởi động dịch vụ trên từng máy chủ LDAP còn lại:
    apigee-service apigee-openldap start
  8. Xác thực lần cuối:
    • Xác minh rằng quá trình khôi phục đã thành công và dữ liệu nhất quán trên toàn bộ cụm LDAP.
    • Chạy lệnh xác thực trên tất cả máy chủ LDAP, thay thế YOUR_PASSWORD bằng mật khẩu hiện tại của trình quản lý LDAP. Số lượng bản ghi phải giống nhau trên tất cả các máy chủ và phải khớp với số lượng bạn đã ghi lại ở bước 2:
      # Note: Replace 'YOUR_PASSWORD' with your current LDAP manager password.
      ldapsearch -o ldif-wrap=no -b "dc=apigee,dc=com" -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w 'YOUR_PASSWORD' | wc -l
    • Sau khi bạn xác nhận rằng dữ liệu là chính xác và nhất quán, hãy khởi động edge-management-server, edge-ui và mọi thành phần phụ thuộc khác theo quy trình chuẩn của tổ chức.

Khôi phục các thành phần Edge

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 trong số 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 này trên nút đó:

  • edge-management-server (Máy chủ quản lý)
  • edge-message-processor (Trình 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ô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.

Để 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.53.00/4.53.01, hãy tải xuống bootstrap_4.53.00.sh/bootstrap_4.53.01.sh
  2. Dừng thành phần để quay lại phiên bản trướ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ả 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 nào khác trên nút, hãy dừng thành phần đó:
      /opt/apigee/apigee-service/bin/apigee-service component stop
  3. Nếu bạn đang khôi phục 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 trên 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 và apigee-cassandra-client, như trong ví dụ sau:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra-client uninstall
    2. Cách khôi phục Nginx:
      ### Find the apigee-nginx RPM
      rpm -qa | grep -i "apigee-nginx"
      
      ### Remove the apigee-nginx RPM
      dnf remove apigee-nginx-1.30.x
      
    3. Để khôi phục bất kỳ thành phần nào khác trên nút, chỉ cần 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.

    4. Để khôi phục Bộ định tuyến biên, 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.54.00 của apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. Cài đặt tiện ích apigee-service phiên bản 4.53.00 và các phần phụ thuộc của tiện ích này. Ví dụ sau đây cài đặt phiên bản 4.53.00 của apigee-service:
    sudo bash /tmp/bootstrap_4.53.00.sh apigeeuser=uName apigeepassword=pWord

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

    Nếu bạn gặp lỗi, hãy nhớ rằng 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 cho phiên bản cũ.

  9. Nếu bạn đang khôi phục Qpid, hãy xoá 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.

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. 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