Thêm trung tâm dữ liệu

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

Tài liệu này mô tả cách thêm một trung tâm dữ liệu (còn gọi là khu vực) vào một trung tâm dữ liệu hiện có.

Những điều cần cân nhắc trước khi thêm trung tâm dữ liệu

Trước khi cài đặt thêm trung tâm dữ liệu, bạn phải hiểu cách định cấu hình các máy chủ Open LDAP, ZooKeeper, Cassandra và Postgres trên các trung tâm dữ liệu này. Bạn cũng phải đảm bảo rằng các cổng cần thiết được mở giữa các nút trong 2 trung tâm dữ liệu.

  • OpenLDAP
    Mỗi trung tâm dữ liệu đều có máy chủ OpenLDAP riêng được định cấu hình khi bật tính năng sao chép. Khi cài đặt trung tâm dữ liệu mới, bạn phải định cấu hình Open LDAP để sử dụng tính năng sao chép và bạn phải định cấu hình lại máy chủ OpenLDAP trong trung tâm dữ liệu hiện có để sử dụng tính năng sao chép.
  • ZooKeeper
    Đối với thuộc tính ZK_HOSTS cho cả hai trung tâm dữ liệu, hãy chỉ định địa chỉ IP hoặc tên DNS của tất cả các nút ZooKeeper từ cả hai trung tâm dữ liệu theo cùng một thứ tự và đánh dấu bất kỳ nút nào bằng đối tượng sửa đổi ":observer". Các nút không có đối tượng sửa đổi “:observer” được gọi là "voter". Bạn phải có một số "cái phiếu" lẻ trong cấu hình.

    Trong cấu trúc liên kết này, máy chủ ZooKeeper trên máy chủ 9 là đối tượng tiếp nhận dữ liệu:



    Trong tệp cấu hình ví dụ minh hoạ bên dưới, nút 9 được gắn thẻ với đối tượng sửa đổi ":observer" để bạn có 5 người bỏ phiếu: Nút 1, 2, 3, 7 và 8.

    Đối với thuộc tính ZK_CLIENT_HOSTS cho mỗi trung tâm dữ liệu, chỉ định địa chỉ IP hoặc tên DNS của các nút ZooKeeper trong trung tâm dữ liệu, theo cùng thứ tự, cho tất cả các nút ZooKeeper trong trung tâm dữ liệu.
  • Cassandra
    Tất cả các trung tâm dữ liệu phải có cùng số nút Cassandra.

    Đối với CASS_HOSTS cho mỗi trung tâm dữ liệu, hãy đảm bảo rằng bạn chỉ định tất cả địa chỉ IP Cassandra (không phải tên DNS) cho cả hai trung tâm dữ liệu. Đối với trung tâm dữ liệu 1, trước tiên, hãy liệt kê các nút Cassandra trong trung tâm dữ liệu đó. Đối với trung tâm dữ liệu 2, trước tiên, hãy liệt kê các nút Cassandra trong trung tâm dữ liệu đó. Liệt kê các nút Cassandra theo cùng một thứ tự cho tất cả các nút Cassandra trong trung tâm dữ liệu.

    Tất cả các nút Cassandra đều phải có hậu tố ":<d>,<r>", ví dụ: "<ip>:1,1 = trung tâm dữ liệu 1 và giá đỡ/vùng khả dụng 1 và "<ip>:2,1 = trung tâm dữ liệu 2 và giá đỡ/vùng sẵn có 1.
    Ví dụ: "192.168.124.201:1,1 192.168.124.202:1,1 192.168.124.203:1,1 192.168.124.204:2,1 192.1688.52, mỗi nút

    Trong mô hình triển khai này, cách thiết lập Cassandra sẽ có dạng như sau:


  • Postgres
    Theo mặc định, Edge sẽ cài đặt tất cả các nút Postgres ở chế độ chính. Tuy nhiên, khi có nhiều trung tâm dữ liệu, bạn nên định cấu hình nút Postgres để sử dụng tính năng sao chép chính của chế độ chờ sao cho nếu nút chính bị lỗi, nút chế độ chờ có thể tiếp tục cho lưu lượng truy cập máy chủ. Thông thường, bạn sẽ định cấu hình máy chủ Postgres chính trong một trung tâm dữ liệu và máy chủ dự phòng trong trung tâm dữ liệu thứ hai.

    Nếu trung tâm dữ liệu hiện có đã được định cấu hình để có 2 nút Postgres chạy ở chế độ chính/chế độ chờ, trong quy trình này, hãy huỷ đăng ký nút chờ hiện có và thay thế bằng một nút chế độ chờ trong trung tâm dữ liệu mới.

    Bảng sau đây trình bày cấu hình trước và sau của Postgres cho cả hai trường hợp:

    Trước

    Sau

    Nút Postgres chính trong dc-1

    Nút Postgres chính trong dc-1

    Nút Postgres dự phòng trong dc-2

    Nút Postgres chính trong dc-1

    Nút Postgres dự phòng trong dc-1

    Nút Postgres chính trong dc-1

    Nút Postgres dự phòng trong dc-2

    Huỷ đăng ký nút Chế độ chờ Postgres cũ trong dc-1

  • Yêu cầu về cổng
    Bạn phải đảm bảo rằng các cổng cần thiết đều được mở giữa các nút trong 2 trung tâm dữ liệu. Để biết sơ đồ cổng, hãy xem Yêu cầu về việc cài đặt.

Đang cập nhật trung tâm dữ liệu hiện có

Để thêm trung tâm dữ liệu, bạn sẽ phải thực hiện các bước để cài đặt và định cấu hình các nút mới của trung tâm dữ liệu, nhưng cũng cần phải cập nhật các nút trong trung tâm dữ liệu ban đầu. Những sửa đổi này là cần thiết vì bạn đang thêm các nút Cassandra và ZooKeeper mới trong trung tâm dữ liệu mới. Các nút này phải có thể truy cập được vào trung tâm dữ liệu hiện có và bạn phải định cấu hình lại Open LDAP để sử dụng tính năng sao chép.

Tạo tệp cấu hình

Dưới đây là các tệp cấu hình im lặng cho 2 trung tâm dữ liệu, trong đó mỗi trung tâm dữ liệu có 6 nút như minh hoạ trong Cấu trúc liên kết cài đặt. Lưu ý rằng tệp cấu hình cho dc-1 sẽ thêm các chế độ cài đặt bổ sung vào:

  • Định cấu hình Open LDAP bằng cơ chế sao chép trên hai nút OpenLDAP.
  • Thêm các nút Cassandra và ZooKeeper mới từ dc-2 vào tệp cấu hình cho dc-1.
# Datacenter 1
IP1=IPorDNSnameOfNode1
IP2=IPorDNSnameOfNode2
IP3=IPorDNSnameOfNode3
IP7=IPorDNSnameOfNode7
IP8=IPorDNSnameOfNode8
IP9=IPorDNSnameOfNode9 
HOSTIP=$(hostname -i)
MSIP=$IP1
ADMIN_EMAIL=opdk@google.com
APIGEE_ADMINPW=Secret123
LICENSE_FILE=/tmp/license.txt
USE_LDAP_REMOTE_HOST=n
LDAP_TYPE=2
LDAP_SID=1
LDAP_PEER=$IP7
APIGEE_LDAPPW=secret
MP_POD=gateway-1
REGION=dc-1
ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer"
ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3"
# Must use IP addresses for CASS_HOSTS, not DNS names.
CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1 $IP7:2,1 $IP8:2,1 $IP9:2,1"
SKIP_SMTP=n
SMTPHOST=smtp.example.com
SMTPUSER=smtp@example.com 
SMTPPASSWORD=smtppwd   
SMTPSSL=n
SMTPPORT=25
SMTPMAILFROM="My Company <myco@company.com>"
# Datacenter 2
IP1=IPorDNSnameOfNode1
IP2=IPorDNSnameOfNode2
IP3=IPorDNSnameOfNode3
IP7=IPorDNSnameOfNode7
IP8=IPorDNSnameOfNode8
IP9=IPorDNSnameOfNode9 
HOSTIP=$(hostname -i)
MSIP=$IP7
ADMIN_EMAIL=opdk@google.com
APIGEE_ADMINPW=Secret123
LICENSE_FILE=/tmp/license.txt
USE_LDAP_REMOTE_HOST=n
LDAP_TYPE=2
LDAP_SID=2
LDAP_PEER=$IP1
APIGEE_LDAPPW=secret
MP_POD=gateway-2
REGION=dc-2
ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer"
ZK_CLIENT_HOSTS="$IP7 $IP8 $IP9"
# Must use IP addresses for CASS_HOSTS, not DNS names.
CASS_HOSTS="$IP7:2,1 $IP8:2,1 $IP9:2,1 $IP1:1,1 $IP2:1,1 $IP3:1,1"
SKIP_SMTP=n
SMTPHOST=smtp.example.com
SMTPUSER=smtp@example.com 
SMTPPASSWORD=smtppwd   
SMTPSSL=n
SMTPPORT=25
SMTPMAILFROM="My Company <myco@company.com>"

Quy trình thêm trung tâm dữ liệu mới

Trong quy trình này, các trung tâm dữ liệu được đặt tên là:

  • dc-1: trung tâm dữ liệu hiện tại
  • dc-2: trung tâm dữ liệu mới
  1. Trên dc-1, hãy chạy lại setup.sh trên các nút Cassandra ban đầu bằng tệp confiig dc-1 mới bao gồm các nút Cassandra từ dc-2:
    /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile1
  2. Trên dc-1, hãy chạy lại setup.sh trên nút Máy chủ quản lý:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile1
  3. Trên dc-2, cài đặt apigee-setup trên tất cả các nút. Hãy xem bài viết Cài đặt tiện ích thiết lập apigee của Edge để biết thêm thông tin.
  4. Trên dc-2, hãy cài đặt Cassandra và ZooKeeper trên các nút thích hợp:
    /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile2
  5. Trên dc-2, chạy lệnh tạo lại trên tất cả các nút Cassandra, chỉ định tên vùng của dc-1:
    > /opt/apigee/apigee-cassandra/bin/nodetool -h cassIP khôi phục lại dc-1
  6. Trên dc-2, hãy cài đặt Máy chủ quản lý trên nút thích hợp:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile2
  7. Trên nút Máy chủ quản lý trong dc-2, hãy cài đặt apigee-vendor. Thao tác này sẽ cài đặt tiện ích apigee-adminapi.sh:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-vendor cài đặt
  8. Trên dc-2, hãy cài đặt Tuyến và Bộ xử lý thông báo trên các nút thích hợp:
    > /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile2
  9. Trên dc-2, hãy cài đặt Qpid trên các nút thích hợp:
    > /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile2
  10. Trên dc-2, hãy cài đặt Postgres trên nút thích hợp:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile2
  11. Thiết lập chính/chế độ chờ Postgres cho các nút Postgres. Nút Postgres trong dc-1 là nút chính và nút Postgres trong dc-2 là máy chủ dự phòng.

    Lưu ý: Nếu dc-1 đã được định cấu hình để có hai nút Postgres chạy ở chế độ chính/chế độ chờ, trong quy trình này, hãy sử dụng nút Postgres chính hiện có trong dc-1 làm nút chính và nút Postgres trong dc-2 làm máy chủ chờ. Trong phần sau của quy trình này, bạn sẽ huỷ đăng ký máy chủ chờ Postgres hiện có trong dc-1.
    1. Trên nút chính trong dc-1, hãy chỉnh sửa tệp cấu hình cần đặt:
      PG_MASTER=IPorDNSofDC1Master
      PG_STANDBY=IPorDNSofDC2 Nhóm chờ
    2. Bật tính năng nhân bản trên trang cái mới:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle
    3. Trên nút chờ trong dc-2, hãy chỉnh sửa tệp cấu hình cần thiết lập:
      PG_MASTER=IPorDNSofDC1Master
      PG_STANDBY=IPorDNSofDC2 Standby
    4. Trên nút chờ trong dc-2, dừng máy chủ rồi xoá mọi dữ liệu Postgres hiện có:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql dừng
      > rm -rf /opt/apigee/data/apigee-postgresql/

      Lưu ý: Nếu cần, bạn có thể xoá bản sao lưu này.
    5. Định cấu hình nút chế độ chờ trong dc-2:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
  12. Trên dc-1, hãy cập nhật cấu hình Analytics và định cấu hình các tổ chức.
    1. Trên nút Máy chủ quản lý của dc-1, hãy lấy UUID của nút Postgres:
      > danh sách máy chủ apigee-adminapi.sh -r dc-1 -p analytics -t postgres-server --admin adminEmail --pwd adminPword --host localhost

      UUID xuất hiện ở cuối dữ liệu được trả về. Lưu giá trị đó.

      Lưu ý: Nếu dc-1 được định cấu hình để có hai nút Postgres chạy ở chế độ chính/chế độ chờ, thì bạn sẽ thấy hai địa chỉ IP và UUID trong dữ liệu đầu ra. Lưu cả hai mã nhận dạng duy nhất (UUID). Từ các IP, bạn sẽ có thể xác định được mã nhận dạng duy nhất (UUID) nào dành cho nút chính và mã nhận dạng duy nhất nào dành cho nút chế độ chờ.
    2. Trên nút Máy chủ quản lý của dc-2, hãy lấy UUID của nút Postgres như minh hoạ trong bước trước. Lưu giá trị đó.
    3. Trên nút Máy chủ quản lý của dc-1, hãy xác định tên của các số liệu phân tích và nhóm người tiêu dùng. Nhiều lệnh dưới đây yêu cầu thông tin đó.
      Theo mặc định, tên của nhóm phân tích là axgroup-001 và tên của nhóm người tiêu dùng là nhóm người tiêu dùng-001. Trong tệp cấu hình im lặng cho một khu vực, bạn có thể đặt tên của nhóm phân tích bằng cách sử dụng thuộc tính AXGROUP.

      Nếu bạn không chắc chắn về tên của các nhóm phân tích và nhóm người tiêu dùng, hãy sử dụng lệnh sau để hiển thị các nhóm đó:
      > apigee-adminapi.sh analytics danh sách nhóm --admin adminEmail --pwd adminPword --host localhost

      Lệnh này trả về tên nhóm phân tích trong trường tên và tên nhóm người tiêu dùng trong trường nhóm người tiêu dùng.
    4. Trên nút Máy chủ quản lý của dc-1, hãy xoá máy chủ Postgres hiện có khỏi nhóm phân tích:
      1. Xoá nút Postgres khỏi nhóm người tiêu dùng:
        > apigee-adminapi.sh analytics groups consumer_groups datastores gỡ bỏ -g axgroup-001 -c consumer-group-001 -u UUID -Y --admin adminEmail --pwd adminPage -- chủ


      2. Xoá nút Postgres khỏi nhóm phân tích:
        > apigee-adminapi.sh analytics groups postgres_server remove -g axgroup-001 -u UUID -Y --admin adminEmail --pwd adminPword --host localhost



        của quản trị viên bị định cấu hình để có hai nút Postgres_server và xoá cả hai nút Postgres chủ/máy chủ
    5. Trên nút Máy chủ quản lý của dc-1, hãy thêm các máy chủ chính/chế độ chờ Postgres mới vào nhóm phân tích:
      1. Thêm cả hai máy chủ Postgres vào nhóm analytics:
        > apigee-adminapi.sh analytics groups postgres_server add -g axgroup-001 -u "UUID_1,UUID_2" --admin adminEmail --pwd adminPword --host localhost

        trong đó UUID_1 tương ứng với nút UUID_1 tương ứng với nút Postgres1 chính, UUID_1 tương ứng với nút Postgres1
        chính
      2. Thêm máy chủ PG vào nhóm người tiêu dùng làm nhóm chính/dự phòng:
        > apigee-adminapi.sh analytics groups consumer_groups datastores add -g axgroup-001 -c consumer-group-001 -u "UUID_1,UUID_2" --admin adminEmail --pwd adminPword --host localhost
    6. Thêm máy chủ Qpid từ dc-2 vào nhóm số liệu phân tích:
      1. Trên nút Máy chủ quản lý của dc-1, hãy lấy UUID của các nút Qpid trong dc-2:
        > apigee-adminapi.sh danh sách máy chủ -r dc-2 -p khóa -t qpid-server --admin adminEmail --pwd adminPword --host localhost

        Các UUID được trả về xuất hiện ở cuối Lưu các giá trị đó.
      2. Trên Nút Máy chủ Quản lý của dc-1, hãy thêm các nút Qpid vào nhóm phân tích (chạy cả hai lệnh):
        >apigee-adminapi.sh analytics groups qpid_server add -g axgroup-001 -u "UUID_1 --admin adminEmail adminPword-admin localhost
        -pwd adminPword --host local-host xpergee-server

      3. P0-1 User-groups của dc-1, thêm các nút Qpid vào nhóm người tiêu dùng (chạy cả hai lệnh):
        > apigee-adminapi.sh analyticsthực

    7. Huỷ đăng ký và xoá máy chủ chờ Postgres cũ khỏi dc-1:
      1. Huỷ đăng ký máy chủ chờ dc-1 Postgres hiện có:
        > apigee-adminapi.sh server deregister -u UUID -r dc-1 -p analytics -t postgres-server -Y --admin adminEmail --pwd adminPword --host localhost

        trong đó UUID là nút cũ trong chế độ chờ Postgres.
      2. Xoá máy chủ chờ dc-1 Postgres hiện có:
        Lưu ý: Lệnh này không gỡ cài đặt nút máy chủ Postgres. Thao tác này sẽ chỉ xoá thực thể đó khỏi danh sách các nút Edge. Sau đó, bạn có thể gỡ cài đặt Postgres khỏi nút (nếu cần).
        > apigee-adminapi.sh máy chủ delete -u UUID --admin adminEmail --pwd adminPword --host localhost
  13. Cập nhật không gian khoá Cassandra bằng hệ số sao chép chính xác cho hai trung tâm dữ liệu. Bạn chỉ phải chạy bước này một lần trên bất kỳ máy chủ Cassandra nào trong trung tâm dữ liệu:

    Lưu ý: Tất cả các lệnh bên dưới đều đặt hệ số nhân bản thành "3", cho biết có 3 nút Cassandra trong cụm. Hãy sửa đổi giá trị này nếu cần cho chế độ cài đặt của bạn.
    1. Khởi động tiện ích Cassandra cassah:
      > /opt/apigee/apigee-cassandra/bin/làm việc cassandraIP
    2. Thực thi các lệnh CQL sau đây tại lời nhắc "cpclsh>" để đặt mức sao chép cho không gian phím Cassandra:
      1. cClsh> ALTER KEYSPACE "identityzone" WITH sao chép = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
      2. cpclsh> ALTER KEYSPACE "system_traces" WITH sao chép = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
      3. Xem các không gian phím bằng cách dùng lệnh:
        cpclsh> select * from system.schema_keyspaces;
      4. Thoát cquash:
        cqualsh> thoát
  14. Chạy lệnh buttontool sau trên tất cả các nút Cassandra trong dc-1 để giải phóng bộ nhớ:
    > /opt/apigee/apigee-cassandra/bin/nodetool -h dọn dẹp cassandraIP
  15. Đối với mỗi tổ chức và mỗi môi trường mà bạn muốn hỗ trợ trong các trung tâm dữ liệu:
    1. Trên nút Quản lý máy chủ của dc-1, hãy thêm MP_POD mới vào Tổ chức:
      > apigee-adminapi.sh orgscác nhóm add -o orgName -r dc-2 -p gateway-2 --admin adminEmail --pwd adminPword --host localhost

      .PO trong đó tên cổng của tệp MP là cổng vào dc-2
    2. Thêm Bộ xử lý thư mới vào tổ chức và môi trường:
      1. Trên nút Máy chủ quản lý của dc-2, hãy lấy UUID của các nút Trình xử lý thông báo trong dc-2:
        > apigee-adminapi.sh danh sách máy chủ -r dc-2 -p gateway-2 -t message-processor --admin adminEmail --pwd adminPword --host localhost

        UUID được trả về. Lưu các giá trị đó.
      2. Trên nút Máy chủ quản lý của dc-1, đối với mỗi Bộ xử lý thông báo trong dc-2, hãy thêm Bộ xử lý thông báo vào một môi trường dành cho tổ chức:
        > apigee-adminapi.sh orgs envs server add -o orgName -e envName -u UUID --adminadminEmail --pwdhostPWord
    3. Trên nút Quản lý máy chủ của dc-1, hãy kiểm tra tổ chức:
      > apigee-adminapi.sh orgs apis triển khai -o orgName -a apiProxyName --admin adminEmail --pwd adminPword --host localhost

      trong đó apiProxyName là tên của một proxy API được triển khai trong tổ chức.