Di chuyển máy chủ Apigee

Edge cho đám mây riêng tư phiên bản 4.19.01

Việc di chuyển các thành phần từ máy này sang máy khác có thể gây ra cấu hình không khớp nếu bạn không đồng bộ hoá địa chỉ IP trong các tệp cấu hình thành phần.

Phần này mô tả cách chẩn đoán và khắc phục trường hợp cấu hình không khớp.

Địa chỉ IP so với tên máy chủ

Bạn nên sử dụng địa chỉ IP thay vì tên máy chủ lưu trữ trong các tệp cấu hình thành phần của mình.

Mặc dù một số tệp cấu hình thành phần cho phép bạn sử dụng tên máy chủ thay vì địa chỉ IP, nhưng việc sử dụng tên máy chủ có thể khiến việc khắc phục sự cố trở nên phức tạp. Ví dụ: tên máy chủ lưu trữ có thể là nguồn gốc gây ra các vấn đề liên quan đến khả năng kết nối với máy chủ DNS, lỗi tra cứu và đồng bộ hoá.

Do đó, Apigee khuyên bạn nên sử dụng địa chỉ IP cho tất cả các cấu hình thành phần. Trong một số trường hợp, chẳng hạn như với Cassandra, bạn phải sử dụng địa chỉ IP và không được dùng tên máy chủ. Hầu hết các ví dụ trong tài liệu này đều sử dụng địa chỉ IP để định cấu hình thành phần.

Đối với tên máy chủ và địa chỉ IP, hãy cân nhắc ảnh hưởng của các tình huống sau đây khi di chuyển máy chủ Apigee:

Trường hợp Tác động đến việc di chuyển máy chủ
Thay đổi địa chỉ IP Cập nhật mọi tệp liên quan có tham chiếu đến địa chỉ IP ban đầu
Thay đổi tên máy chủ mà không thay đổi địa chỉ IP Không ảnh hưởng gì
Thay đổi tên máy chủ kèm theo thay đổi địa chỉ IP Giống như việc thay đổi địa chỉ IP

Thay đổi địa chỉ IP của nút Cassandra

Để thay đổi địa chỉ IP của nút Cassandra, hãy thực hiện các bước sau:

Đối với cấu hình có một nút Cassandra

  1. Chỉnh sửa /opt/apigee/customer/application/cassandra.properties trên hệ thống đang được sửa đổi. Hãy tạo tệp nếu chưa có.
  2. Thay đổi các thông số sau:
    • Đặt các tham số conf_cassandra_seedsconf_cassandra_listen_address để chỉ định địa chỉ IP mới của hệ thống.
    • Thay đổi conf_cassandra_rpc_address để sử dụng địa chỉ IP mới hoặc 0.0.0.0 (cho phép Cassandra Thrift nghe trên tất cả các giao diện).
  3. Mở /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties trong một trình chỉnh sửa. Bạn sẽ thấy địa chỉ IP cũ và chế độ cài đặt mặc định trong biểu mẫu:
    192.168.56.101=dc-1:ra-1
    default=dc-1:ra-1

    Hãy lưu thông tin đó.

  4. Chỉnh sửa /opt/apigee/customer/application/cassandra.properties để thay đổi địa chỉ IP cũ được chỉ định thành địa chỉ IP mới:
    conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n

    Đảm bảo rằng bạn chèn "\n" sau địa chỉ IP và chỉ định cùng các chế độ cài đặt mặc định như bạn tìm thấy ở trên trong Bước 3.

  5. Khởi động lại Cassandra:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. Nếu cần, bạn cũng nên sửa cả ZooKeeper (xem bên dưới), nếu không, hãy khởi động lại mọi thành phần của nền tảng Apigee bắt đầu bằng Máy chủ quản lý.

Đối với cấu hình có nhiều nút Cassandra (nhẫn)

  1. Nếu nút đang được thay đổi là nút gốc, hãy chỉnh sửa tệp /opt/apigee/customer/application/cassandra.properties trên từng hệ thống trong vòng và thay đổi tham số conf_cassandra_seeds để bao gồm IP mới của hệ thống đã sửa đổi. Nếu tệp cassandra.properties chưa có, hãy tạo tệp đó.
  2. Chỉnh sửa /opt/apigee/customer/application/cassandra.properties trên hệ thống đang được sửa đổi và thay đổi các tham số sau:
    • Đặt conf_cassandra_listen_address để sử dụng địa chỉ IP mới.
    • Đặt conf_cassandra_rpc_address để sử dụng địa chỉ IP mới hoặc "0.0.0.0" (cho phép Cassandra Thrift nghe trên tất cả các giao diện).
  3. Mở /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties trong một trình chỉnh sửa. Bạn sẽ thấy tất cả địa chỉ IP của Cassandra và chế độ cài đặt mặc định có trong biểu mẫu:
    192.168.56.101=dc-1:ra-1
    192.168.56.102=dc-1:ra-1
    192.168.56.103=dc-1:ra-1
    default=dc-1:ra-1

    Hãy lưu thông tin đó.

  4. Chỉnh sửa /opt/apigee/customer/application/cassandra.properties để thay đổi địa chỉ IP cũ được chỉ định thành địa chỉ IP mới:
    conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n

    Đảm bảo bạn chèn "\n" sau mỗi địa chỉ IP và sử dụng cùng chế độ cài đặt mặc định như đã ghi ở trên trong Bước 3.

  5. Khởi động lại Cassandra trên hệ thống đã sửa đổi. Nếu hệ thống được sửa đổi là nút gốc, hãy khởi động lại từng hệ thống có dùng nút gốc đã sửa đổi.
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. Chạy lệnh nodetool ring trên nút đã sửa đổi để đảm bảo rằng vòng lặp đã hoàn tất. Bạn có thể tìm thấy tiện ích này tại /opt/apigee/apigee-cassandra/bin.
    nodetool [-u username -pw password] -h localhost ring

    Bạn chỉ cần truyền tên người dùng và mật khẩu nếu đã bật phương thức xác thực JMX cho Cassandra.

  7. Chạy nodetool repair trên nút đã sửa đổi. Xin lưu ý rằng quá trình này có thể mất chút thời gian. Vì vậy, bạn không nên làm việc này trong những giờ có lưu lượng truy cập API cao nhất.
    nodetool [-u username -pw password] -h localhost repair -pr
  8. Nếu cần, hãy sửa chữa ZooKeeper (xem bên dưới), sau đó khởi động lại mọi thành phần của nền tảng Apigee, bắt đầu bằng Máy chủ quản lý.

Cập nhật gói đăng ký kho dữ liệu

  1. Tìm mã nhận dạng duy nhất (UUID) của các lượt đăng ký kho dữ liệu chỉ định địa chỉ IP cũ bằng cách dùng các lệnh bên dưới. Ghi lại các thông số "type" và "UUID":
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics&region=DC" | egrep -i '[type|internalip|uuid|region]'

      Trong đó DC là tên trung tâm dữ liệu. Trong một lần cài đặt trung tâm dữ liệu, giá trị thường là "dc-1".

  2. Đăng ký địa chỉ IP mới bằng một trong các lệnh bên dưới. Lệnh cần dùng sẽ phụ thuộc vào loại nút được thay đổi.
    • Đối với type="application-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP&region=REGION&pod=central" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST
    • Đối với type="km-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \
        &InternalIP=NEWIP&region=REGION&pod=GATEWAY_POD" -H 'content-type: \
        application/x-www-form-urlencoded' -X POST
    • Đối với type="reportcrud-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \
        "Type=reportcrud-datastore&InternalIP=NEW_IP&region=REGION&pod=analytics" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST 
  3. Xoá các lượt đăng ký cũ cho mã nhận dạng duy nhất (UUID) của hệ thống mà địa chỉ IP đã thay đổi. Đối với từng vấn đề về mã nhận dạng duy nhất (UUID) sau đây:
    curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE

Thay đổi địa chỉ IP của nút ZooKeeper

Hãy làm theo các bước bên dưới để thay đổi địa chỉ IP của nút ZooKeeper:

Thay đổi Địa chỉ IP và khởi động lại quần thể ZooKeeper (chỉ dành cho các cấu hình tập hợp nhiều nút)

  1. Mở /opt/apigee/apigee-zookeeper/conf/zoo.cfg trong trình chỉnh sửa. Bạn sẽ thấy tất cả địa chỉ IP của ZooKeeper và chế độ cài đặt mặc định có trong biểu mẫu:
    server.1=192.168.56.101:2888:3888
    server.2=192.168.56.102:2888:3888
    server.3=192.168.56.103:2888:3888

    Hãy lưu thông tin đó.

  2. Trên mỗi nút ZooKeeper, hãy chỉnh sửa tệp /opt/apigee/customer/application/zookeeper.properties để đặt thuộc tính conf_zoo_quorum thành các địa chỉ IP chính xác. Tệp này chưa có sẵn, hãy tạo tệp đó.
    conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n

    Đảm bảo rằng bạn chèn "\n" sau mỗi địa chỉ IP và các mục nhập theo cùng một thứ tự trên mỗi nút.

  3. Tìm trưởng nhóm của ZooKeeper bằng cách sử dụng lệnh sau (thay thế node bằng địa chỉ IP của máy ZooKeeper):
    echo srvr | nc node 2181

    Dòng Chế độ trong dữ liệu đầu ra sẽ có nội dung là "leader".

  4. Khởi động lại một ZooKeeper sau lệnh khác bắt đầu bằng trưởng nhóm và kết thúc bằng nút mà địa chỉ IP đã thay đổi. Nếu nhiều nút của người quản lý vườn thú thay đổi địa chỉ IP, thì có thể bạn cần phải khởi động lại tất cả các nút.
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
  5. Sử dụng lệnh echo được mô tả ở trên để xác minh từng nút ZooKeeper.

Thông báo cho các nút Apigee về cấu hình đã thay đổi

  1. Trên mỗi nút Bộ định tuyến, hãy chỉnh sửa tệp /opt/apigee/customer/application/router.properties như sau. Hãy tạo tệp nếu chưa có.
    • Thay đổi tham số conf_zookeeper_connection.string để đưa vào địa chỉ IP mới
    • Thay đổi tham số conf_zookeeper_zk1.host để đưa vào địa chỉ IP mới
  2. Trên mọi nút Bộ xử lý thông báo, hãy chỉnh sửa tệp /opt/apigee/customer/application/message-processor.properties như sau. Hãy tạo tệp nếu chưa có.
    • Thay đổi tham số conf_zookeeper_connection.string để đưa vào địa chỉ IP mới
    • Thay đổi tham số conf_zookeeper_zk1.host để đưa vào địa chỉ IP mới
  3. Trên nút Máy chủ quản lý, hãy chỉnh sửa tệp /opt/apigee/customer/application/management-server.properties như sau. Hãy tạo tệp nếu chưa có.
    • Thay đổi tham số conf_zookeeper_connection.string để đưa vào địa chỉ IP mới
    • Thay đổi tham số conf_zookeeper_zk1.host để đưa vào địa chỉ IP mới
  4. Khởi động lại tất cả thành phần của nền tảng Apigee bằng cách chạy lệnh sau trên mỗi nút:
    /opt/apigee/apigee-service/bin/apigee-all restart

Thay đổi địa chỉ IP của máy chủ LDAP (OpenLDAP)

Để thay đổi địa chỉ IP của nút OpenLDAP, hãy làm như sau:

  1. Trên nút Máy chủ quản lý, hãy chỉnh sửa tệp /opt/apigee/customer/application/management-server.properties. Hãy tạo tệp nếu chưa có.
  2. Trong tệp management-server.properties, hãy đặt tham số conf_security_ldap.server.host thành địa chỉ IP mới.
  3. Khởi động lại máy chủ quản lý:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Thay đổi địa chỉ IP của các loại nút Apigee khác

Cách thay đổi địa chỉ IP của bất kỳ loại nút nào trong số này (Bộ định tuyến, Bộ xử lý thông báo, Máy chủ Postgres (không phải postgresql) và Máy chủ Qpid (không qpidd):

  1. Sử dụng lệnh curl sau để đăng ký địa chỉ IP nội bộ và bên ngoài mới:
    curl -u ADMINEMAIL:PW -X PUT \
      http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
    curl -u ADMINEMAIL:PW -X PUT \
      http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip

    Trong đó uuid là mã nhận dạng duy nhất (UUID) của nút.

Để biết thông tin về cách lấy UUID của một thành phần, hãy xem phần Lấy UUID.