Định cấu hình nhiều trung tâm dữ liệu cho Apigee mTLS

Apigee mTLS hỗ trợ nhiều trung tâm dữ liệu để bạn có thể mở rộng cấu hình của mình bao gồm cả các cấu trúc phức tạp hơn, chẳng hạn như cài đặt cụm 12 nút.

Quy trình cài đặt cho mTLS trên một cấu trúc liên kết nhiều trung tâm dữ liệu cũng giống như quy trình cài đặt cho các cấu trúc liên kết đơn giản hơn. Tuy nhiên, bạn phải đảm bảo rằng quá trình cài đặt của mình đáp ứng các điều kiện tiên quyết và bạn thay đổi các tệp cấu hình như mô tả trong các phần sau.

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

Để sử dụng Apigee mTLS với nhiều trung tâm dữ liệu, bạn phải:

  • Gỡ cài đặt apigee-mtls rồi cài đặt lại bằng cấu hình nhiều trung tâm dữ liệu. Bạn không thể sửa đổi cấu hình hiện có. Để biết thêm thông tin, hãy xem phần Thay đổi cấu hình apigee-mtls hiện có.
  • Mở cổng 8302 trên mọi máy chủ đang chạy mTLS.
  • Đảm bảo rằng tất cả các thành viên trong cụm mTLS đều có địa chỉ IP riêng biệt, nhất quán với tất cả thành viên trong cụm.
  • Khi chỉ định tệp cấu hình, hãy sử dụng đường dẫn tuyệt đối trong các lệnh có thể có sự mơ hồ.
  • Thêm các thuộc tính cấu hình nhiều trung tâm dữ liệu, như mô tả trong phần Tệp cấu hình cho nhiều trung tâm dữ liệu.

Tệp cấu hình cho nhiều trung tâm dữ liệu

Để sử dụng Apigee mTLS với nhiều trung tâm dữ liệu, bạn tạo một tệp cấu hình riêng cho từng trung tâm dữ liệu.

Trong mỗi tệp cấu hình:

  1. Thay đổi giá trị của thuộc tính cấu hình ALL_IP để bao gồm tất cả địa chỉ IP của máy chủ lưu trữ ở tất cả khu vực.
  2. Đảm bảo rằng giá trị của thuộc tính REGION là tên của khu vực hoặc trung tâm dữ liệu hiện tại. Ví dụ: "dc-1".
  3. Thêm các thuộc tính sau:
    Thuộc tính Mô tả
    APIGEE_MTLS_MULTI_DC_ENABLE Liệu bạn có đang sử dụng cấu hình nhiều trung tâm dữ liệu hay không. Đặt thành "y" nếu bạn đang định cấu hình nhiều trung tâm dữ liệu. Nếu không, hãy bỏ qua hoặc đặt thành "n". Giá trị mặc định bị bỏ qua.
    MTLS_LOCAL_REGION_IP Danh sách được phân tách bằng dấu cách gồm tất cả địa chỉ IP mà khu vực hiện tại mà bạn đang định cấu hình sử dụng. Ví dụ: "10.0.0.1 10.0.0.2 10.0.0.3".

    Đối với vùng thứ hai trong cấu hình, hãy sử dụng thuộc tính MTLP_REMOTE_REGION_1_IP.

    MTLS_REMOTE_REGION_1_NAME Tên của khu vực thứ hai trong cấu hình nhiều trung tâm dữ liệu. Ví dụ: "dc-2".

    Trong tệp cấu hình của khu vực thứ hai, bạn sẽ sử dụng "dc-2" cho REGION và "dc-1" cho MTLS_REMOTE_REGION_1_NAME.

    MTLS_REMOTE_REGION_1_IP Danh sách được phân tách bằng dấu cách gồm tất cả địa chỉ IP mà khu vực thứ hai sử dụng trong cấu hình nhiều trung tâm dữ liệu. Ví dụ: "10.0.0.4 10.0.0.5 10.0.0.6".

Các ví dụ sau đây cho thấy tệp cấu hình của hai trung tâm dữ liệu ("dc-1" và "dc-2"). Các thuộc tính dành riêng cho cấu hình nhiều trung tâm dữ liệu sẽ được làm nổi bật):

Tệp cấu hình dc-1

ALL_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104 10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112"
LDAP_MTLS_HOSTS="10.126.0.114 10.126.0.106"
ZK_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95"
CASS_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95"
PG_MTLS_HOSTS="10.126.0.104 10.126.0.112"
RT_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95"
MS_MTLS_HOSTS="10.126.0.114 10.126.0.106"
MP_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95"
QP_MTLS_HOSTS="10.126.0.132 10.126.0.133 10.126.0.102 10.126.0.100"
ENABLE_SIDECAR_PROXY="y"
ENCRYPT_DATA="zRNQ9lhRySNTfegiLLLfIQ=="
PATH_TO_CA_CERT="/opt/consul-agent-ca.pem"
PATH_TO_CA_KEY="/opt/consul-agent-ca-key.pem"

APIGEE_MTLS_MULTI_DC_ENABLE="y"
REGION="dc-1"
MTLS_LOCAL_REGION_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104"
MTLS_REMOTE_REGION_1_NAME="dc-2"
MTLS_REMOTE_REGION_1_IP="10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112"

Tệp cấu hình dc-2

ALL_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104 10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112"
LDAP_MTLS_HOSTS="10.126.0.114 10.126.0.106"
ZK_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95"
CASS_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95"
PG_MTLS_HOSTS="10.126.0.104 10.126.0.112"
RT_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95"
MS_MTLS_HOSTS="10.126.0.114 10.126.0.106"
MP_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95"
QP_MTLS_HOSTS="10.126.0.132 10.126.0.133 10.126.0.102 10.126.0.100"
ENABLE_SIDECAR_PROXY="y"
ENCRYPT_DATA="zRNQ9lhRySNTfegiLLLfIQ=="
PATH_TO_CA_CERT="/opt/consul-agent-ca.pem"
PATH_TO_CA_KEY="/opt/consul-agent-ca-key.pem"

APIGEE_MTLS_MULTI_DC_ENABLE="y"
REGION="dc-2"
MTLS_LOCAL_REGION_IP="10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112"
MTLS_REMOTE_REGION_1_NAME="dc-1"
MTLS_REMOTE_REGION_1_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104"

Để biết thông tin về các thuộc tính cấu hình chuẩn, hãy xem phần Bước 1: Cập nhật tệp cấu hình.

Kiểm thử cấu hình nhiều trung tâm dữ liệu

Lệnh raft list-peers hiển thị danh sách địa chỉ IP được liên kết với tất cả các nút ZooKeeper (ZK) đang chạy quy trình Consul, như được chỉ báo bởi quy trình consul agent đang chạy trên máy chủ. Các máy chủ đồng cấp này không chỉ giới hạn ở một trung tâm dữ liệu mà trải dài trên tất cả các trung tâm dữ liệu trong cấu hình.

Các ví dụ sau đây cho thấy kết quả mẫu từ lệnh raft list-peers cho chế độ thiết lập 2 DC hỗ trợ mTLS:

$ /opt/apigee/apigee-mtls-consul/bin/consul operator raft list-peers
Node              ID                                    Address            State     Voter  RaftProtocol
prc-test-2-20036  0f30e0fc-a33b-2cf9-91fc-3dd0c02711c7  10.126.0.116:8300  leader    true   3
prc-test-0-20036  9b00b259-5848-c72b-623e-7991ea1a5d1c  10.126.0.121:8300  follower  true   3
prc-test-1-20036  e92cd7b3-e2f2-30a1-2b06-c434160372f5  10.126.0.122:8300  follower  true   3
prc-test-6-20036  b196a6a1-2813-49d6-e141-b4f0cce19383  10.126.0.118:8300  follower  true   3
prc-test-7-20036  3708ca5f-a17f-a31e-42ed-bb1f92b1506c  10.126.0.120:8300  follower  true   3
prc-test-8-20036  ed7f1658-ea4b-abec-148b-427203d4200c  10.126.0.115:8300  follower  true   3

Để khắc phục sự cố hoặc xác minh đầu ra raft list-peers, hãy đảm bảo rằng quy trình consul agent đang chạy trên tất cả các nút ZK. Bạn có thể xác nhận điều này bằng cách chạy lệnh sau:

$ ps -elf
4 S consul     77903       1  3  80   0 - 382742 -     Jan13 ?        00:41:10 /opt/apigee/apigee-mtls-consul/bin/consul agent -config-file=/opt/apigee/apigee-mtls-4.52.02-0.0.20256/conf/server.json

Lệnh này xác minh rằng quy trình Consul đang hoạt động và được định cấu hình chính xác trên mỗi nút trong chế độ thiết lập nhiều trung tâm dữ liệu.