Yêu cầu về cổng

Nhu cầu quản lý tường lửa không chỉ giới hạn ở máy chủ ảo; cả tường lửa máy ảo và máy chủ vật lý đều phải cho phép lưu lượng truy cập cho các cổng mà các thành phần yêu cầu để giao tiếp với nhau.

Sơ đồ cổng

Các hình ảnh sau đây cho thấy các yêu cầu về cổng cho cả cấu hình một trung tâm dữ liệu và nhiều trung tâm dữ liệu:

Một trung tâm dữ liệu

Hình ảnh sau đây cho thấy các yêu cầu về cổng cho từng thành phần Edge trong cấu hình trung tâm dữ liệu duy nhất:

Yêu cầu về cổng cho từng thành phần Edge trong cấu hình một trung tâm dữ liệu

Lưu ý về sơ đồ này:

  • Các cổng có tiền tố "M" là các cổng dùng để quản lý thành phần và phải được mở trên thành phần để Máy chủ quản lý có thể truy cập.
  • Giao diện người dùng Edge cần có quyền truy cập vào Bộ định tuyến, trên các cổng do các proxy API hiển thị, để hỗ trợ nút Gửi trong công cụ theo dõi.
  • Bạn có thể định cấu hình quyền truy cập vào các cổng JMX để yêu cầu tên người dùng/mật khẩu. Hãy xem phần Cách giám sát để biết thêm thông tin.
  • Bạn có thể tuỳ ý định cấu hình quyền truy cập TLS/SSL cho một số kết nối nhất định. Các kết nối này có thể sử dụng các cổng khác nhau. Xem phần TLS/SSL để biết thêm thông tin.
  • Bạn có thể định cấu hình Máy chủ quản lý và Giao diện người dùng Edge để gửi email thông qua một máy chủ SMTP bên ngoài. Nếu có, bạn phải đảm bảo rằng Máy chủ quản lý và giao diện người dùng có thể truy cập vào cổng cần thiết trên máy chủ SMTP (không hiển thị). Đối với SMTP không có TLS, số cổng thường là 25. Đối với SMTP có TLS, cổng này thường là 465, nhưng hãy kiểm tra với nhà cung cấp SMTP của bạn.

Nhiều trung tâm dữ liệu

Nếu bạn cài đặt cấu hình cụm 12 nút với 2 trung tâm dữ liệu, hãy đảm bảo rằng các nút trong 2 trung tâm dữ liệu có thể giao tiếp qua các cổng bên dưới:

Yêu cầu về cổng cho mỗi nút trong cấu hình cụm gồm 12 nút

Xin lưu ý rằng:

  • Tất cả Máy chủ quản lý phải có thể truy cập vào tất cả các nút Cassandra trong tất cả các trung tâm dữ liệu khác.
  • Tất cả Trình xử lý tin nhắn trong tất cả các trung tâm dữ liệu đều phải có thể truy cập vào nhau qua cổng 4528.
  • Máy chủ quản lý phải có thể truy cập vào tất cả Trình xử lý thông báo qua cổng 8082.
  • Tất cả Máy chủ quản lý và tất cả các nút Qpid đều phải có thể truy cập vào Postgres ở tất cả các trung tâm dữ liệu khác.
  • Vì lý do bảo mật, ngoài các cổng nêu trên và mọi cổng khác mà yêu cầu mạng của bạn cần, không nên mở bất kỳ cổng nào khác giữa các trung tâm dữ liệu.

Theo mặc định, thông tin liên lạc giữa các thành phần không được mã hoá. Bạn có thể thêm lớp mã hoá bằng cách cài đặt Apigee mTLS. Để biết thêm thông tin, hãy xem bài viết Giới thiệu về Apigee mTLS.

Thông tin chi tiết về yêu cầu chuyển

Bảng dưới đây mô tả các cổng cần được mở trong tường lửa, theo thành phần Edge:

Thành phần Cổng Mô tả
Các cổng HTTP tiêu chuẩn 80.443 HTTP và mọi cổng khác mà bạn sử dụng cho máy chủ ảo
Apigee SSO 9099 Các kết nối từ IdP bên ngoài, Máy chủ quản lý và trình duyệt để xác thực.
Cassandra 7000, 9042 Các cổng Apache Cassandra để giao tiếp giữa các nút Cassandra và để các thành phần Edge khác truy cập.
7199 Cổng JMX. Phải mở để Máy chủ quản lý có thể truy cập.
LDAP 10389 SymasLDAP
Máy chủ quản lý 1099 Cổng JMX
4526 Cổng cho bộ nhớ đệm phân tán và các lệnh gọi quản lý. Bạn có thể định cấu hình cổng này.
5636 Cổng cho thông báo cam kết kiếm tiền.
8080 Cổng cho các lệnh gọi API quản lý Edge. Các thành phần này cần có quyền truy cập vào cổng 8080 trên Máy chủ quản lý: Bộ định tuyến, Trình xử lý thông báo, Giao diện người dùng, Postgres, Apigee SSO (nếu được bật) và Qpid.
Giao diện người dùng quản lý 9000 Cổng để trình duyệt truy cập vào giao diện người dùng quản lý
Trình xử lý thông báo 1101 Cổng JMX
4528 Đối với bộ nhớ đệm phân tán và các lệnh gọi quản lý giữa Bộ xử lý thông báo, cũng như đối với thông tin liên lạc từ Bộ định tuyến và Máy chủ quản lý.

Trình xử lý thông báo phải mở cổng 4528 làm cổng quản lý. Nếu bạn có nhiều Trình xử lý thông báo, thì tất cả các trình xử lý này phải có thể truy cập vào nhau qua cổng 4528 (được biểu thị bằng mũi tên vòng lặp trong sơ đồ ở trên cho cổng 4528 trên Trình xử lý thông báo). Nếu bạn có nhiều trung tâm dữ liệu, thì tất cả các Bộ xử lý thông báo trong tất cả các trung tâm dữ liệu đều phải truy cập được vào cổng này.

8082

Cổng quản lý mặc định cho Trình xử lý thông báo và phải được mở trên thành phần để Máy chủ quản lý truy cập.

Nếu bạn định cấu hình TLS/SSL giữa Bộ định tuyến và Trình xử lý thông báo, thì Bộ định tuyến sẽ dùng TLS/SSL để kiểm tra tình trạng của Trình xử lý thông báo.

Bạn chỉ cần mở cổng 8082 trên Trình xử lý tin nhắn để Bộ định tuyến truy cập khi định cấu hình TLS/SSL giữa Bộ định tuyến và Trình xử lý tin nhắn. Nếu bạn không định cấu hình TLS/SSL giữa Bộ định tuyến và Trình xử lý thông báo, thì cấu hình mặc định, cổng 8082 vẫn phải mở trên Trình xử lý thông báo để quản lý thành phần, nhưng Bộ định tuyến không yêu cầu quyền truy cập vào cổng này.

8443 Khi bật TLS giữa Bộ định tuyến và Trình xử lý thông báo, bạn phải mở cổng 8443 trên Trình xử lý thông báo để Bộ định tuyến truy cập.
8998 Cổng Message Processor để truyền thông tin từ Bộ định tuyến
Postgres 22 Nếu định cấu hình 2 nút Postgres để sử dụng tính năng sao chép chính-dự phòng, bạn phải mở cổng 22 trên mỗi nút để truy cập SSH.
1103 Cổng JMX
4530 Đối với lệnh gọi quản lý và bộ nhớ đệm phân tán
5432 Được dùng để giao tiếp từ Qpid/Máy chủ quản lý đến Postgres
8084 Cổng quản lý mặc định trên máy chủ Postgres; phải mở trên thành phần để Máy chủ quản lý có thể truy cập.
Qpid 1102 Cổng JMX
4529 Đối với lệnh gọi quản lý và bộ nhớ đệm phân tán
5672
  • Một trung tâm dữ liệu: Dùng để gửi số liệu phân tích từ Bộ định tuyến và Trình xử lý thông báo đến Qpid.
  • Nhiều trung tâm dữ liệu: Dùng cho hoạt động giao tiếp giữa các nút Qpid trong các trung tâm dữ liệu khác nhau.

Cũng được dùng để trao đổi thông tin giữa máy chủ Qpid và các thành phần của broker trên cùng một nút. Trong các cấu trúc liên kết có nhiều nút Qpid, máy chủ phải có thể kết nối với tất cả các broker trên cổng 5672.

8083 Cổng quản lý mặc định trên máy chủ Qpid và phải được mở trên thành phần để Máy chủ quản lý truy cập.
8090 Cổng mặc định cho Broker của Qpid; phải mở để truy cập vào bảng điều khiển quản lý hoặc API quản lý của Broker cho mục đích giám sát.
Bộ định tuyến 4527 Đối với lệnh gọi bộ nhớ đệm phân tán và lệnh gọi quản lý.

Bộ định tuyến phải mở cổng 4527 làm cổng quản lý. Nếu bạn có nhiều Bộ định tuyến, thì tất cả các Bộ định tuyến đó phải có thể truy cập vào nhau qua cổng 4527 (được biểu thị bằng mũi tên vòng lặp trong sơ đồ ở trên cho cổng 4527 trên Bộ định tuyến).

Mặc dù không bắt buộc, nhưng bạn có thể mở cổng 4527 trên Bộ định tuyến để cho phép bất kỳ Bộ xử lý thông báo nào truy cập. Nếu không, bạn có thể thấy thông báo lỗi trong tệp nhật ký Message Processor.

8081 Cổng quản lý mặc định cho Bộ định tuyến và phải được mở trên thành phần để Máy chủ quản lý có thể truy cập.
15999

Cổng kiểm tra tình trạng. Trình cân bằng tải sử dụng cổng này để xác định xem Bộ định tuyến có hoạt động hay không.

Để biết trạng thái của một Bộ định tuyến, bộ cân bằng tải sẽ gửi yêu cầu đến cổng 15999 trên Bộ định tuyến:

curl -v http://routerIP:15999/v1/servers/self/reachable

Nếu có thể truy cập vào Bộ định tuyến, yêu cầu sẽ trả về HTTP 200.

59001 Cổng dùng để kiểm thử quá trình cài đặt Edge bằng tiện ích apigee-validate. Tiện ích này cần có quyền truy cập vào cổng 59001 trên Bộ định tuyến. Hãy xem phần Kiểm thử quá trình cài đặt để biết thêm thông tin về cổng 59001.
SmartDocs 59002 Cổng trên bộ định tuyến Edge nơi các yêu cầu trang SmartDocs được gửi.
ZooKeeper 2181 Được dùng bởi các thành phần khác như Máy chủ quản lý, Bộ định tuyến, Trình xử lý thông báo, v.v.
2888, 3888 Được ZooKeeper sử dụng nội bộ cho cụm ZooKeeper (còn gọi là nhóm ZooKeeper) giao tiếp

Bảng tiếp theo cho thấy các cổng tương tự, được liệt kê theo số, với các thành phần nguồn và đích:

Số cổng Mục đích Thành phần nguồn Thành phần đích
virtual_host_port HTTP và mọi cổng khác mà bạn sử dụng cho lưu lượng truy cập lệnh gọi API máy chủ ảo. Các cổng 80 và 443 thường được dùng nhất; Bộ định tuyến thông báo có thể chấm dứt các kết nối TLS/SSL. Máy khách bên ngoài (hoặc trình cân bằng tải) Trình nghe trên Trình định tuyến thư
1099 đến 1103 Quản lý JMX Ứng dụng JMX Máy chủ quản lý (1099)
Bộ xử lý thông báo (1101)
Máy chủ Qpid (1102)
Máy chủ Postgres (1103)
2181 Giao tiếp với ứng dụng Zookeeper Máy chủ quản lý
Bộ định tuyến
Trình xử lý thông báo
Máy chủ Qpid
Máy chủ Postgres
Nhân viên sở thú
2888 và 3888 Quản lý các nút nội bộ của Zookeeper Nhân viên sở thú Nhân viên sở thú
4526 Cổng quản lý RPC Máy chủ quản lý Máy chủ quản lý
4527 Cổng quản lý RPC cho bộ nhớ đệm phân tán và các lệnh gọi quản lý, cũng như cho hoạt động giao tiếp giữa các Bộ định tuyến Bộ định tuyến
Máy chủ quản lý
Bộ định tuyến
4528 Đối với các lệnh gọi bộ nhớ đệm phân tán giữa các Trình xử lý thông báo và để giao tiếp từ Bộ định tuyến Máy chủ quản lý
Bộ định tuyến
Trình xử lý thông báo
Trình xử lý thông báo
4529 Cổng quản lý RPC cho bộ nhớ đệm phân tán và các lệnh gọi quản lý Máy chủ quản lý Máy chủ Qpid
4530 Cổng quản lý RPC cho bộ nhớ đệm phân tán và các lệnh gọi quản lý Máy chủ quản lý Máy chủ Postgres
5432 Ứng dụng Postgres Máy chủ Qpid Postgres
5636 Kiếm tiền Thành phần JMS bên ngoài Máy chủ quản lý
5672
  • Một trung tâm dữ liệu: Dùng để gửi số liệu phân tích từ Bộ định tuyến và Trình xử lý thông báo đến Qpid.
  • Nhiều trung tâm dữ liệu: Dùng cho hoạt động giao tiếp giữa các nút Qpid trong các trung tâm dữ liệu khác nhau.

Cũng được dùng để trao đổi thông tin giữa máy chủ Qpid và các thành phần của broker trên cùng một nút. Trong các cấu trúc liên kết có nhiều nút Qpid, máy chủ phải có thể kết nối với tất cả các broker trên cổng 5672.

Máy chủ Qpid Máy chủ Qpid
7000 Giao tiếp giữa các nút Cassandra Cassandra Nút Cassandra khác
7199 Quản lý JMX. Phải mở để Máy chủ quản lý truy cập vào nút Cassandra. Ứng dụng JMX Cassandra
8080 Cổng API quản lý Ứng dụng Management API Máy chủ quản lý
8081 đến 8084

Các cổng API thành phần, dùng để đưa ra yêu cầu API trực tiếp cho từng thành phần. Mỗi thành phần sẽ mở một cổng khác; cổng chính xác được sử dụng phụ thuộc vào cấu hình nhưng phải được mở trên thành phần để Máy chủ quản lý có thể truy cập

Ứng dụng Management API Bộ định tuyến (8081)
Trình xử lý thông báo (8082)
Máy chủ Qpid (8083)
Máy chủ Postgres (8084)
8090 Cổng quản lý mặc định cho Broker của Qpid để quản lý và giám sát hàng đợi. Trình duyệt hoặc ứng dụng API Trình môi giới Qpid (apigee-qpidd)
8443 Giao tiếp giữa Bộ định tuyến và Trình xử lý thông báo khi TLS được bật Bộ định tuyến Trình xử lý thông báo
8998 Giao tiếp giữa Bộ định tuyến và Trình xử lý thông báo Bộ định tuyến Trình xử lý thông báo
9000 Cổng giao diện người dùng quản lý Edge mặc định Trình duyệt Máy chủ giao diện người dùng quản lý
9042 Truyền tải gốc CQL Bộ định tuyến
Trình xử lý thông báo
Máy chủ quản lý
Cassandra
9099 Xác thực IDP bên ngoài IDP, trình duyệt và Máy chủ quản lý Apigee SSO
10389 Cổng LDAP Máy chủ quản lý SymasLDAP
15999 Cổng kiểm tra tình trạng. Trình cân bằng tải sử dụng cổng này để xác định xem Bộ định tuyến có hoạt động hay không. Trình cân bằng tải Bộ định tuyến
59001 Cổng mà tiện ích apigee-validate dùng để kiểm thử quá trình cài đặt Edge apigee-validate Bộ định tuyến
59002 Cổng bộ định tuyến nơi các yêu cầu trang SmartDocs được gửi SmartDocs Bộ định tuyến

Trình xử lý thông báo duy trì một nhóm kết nối chuyên dụng mở đến Cassandra, được định cấu hình để không bao giờ hết thời gian chờ. Khi tường lửa nằm giữa Trình xử lý thông báo và máy chủ Cassandra, tường lửa có thể hết thời gian chờ kết nối. Tuy nhiên, Message Processor không được thiết kế để thiết lập lại các kết nối với Cassandra.

Để ngăn chặn tình huống này, Apigee đề xuất rằng máy chủ Cassandra, Trình xử lý thông báo và Bộ định tuyến nằm trong cùng một mạng con để tường lửa không tham gia vào việc triển khai các thành phần này.

Nếu có tường lửa giữa Bộ định tuyến và Bộ xử lý thông báo, đồng thời tường lửa này có thời gian chờ TCP ở trạng thái rảnh, thì bạn nên làm như sau:

  1. Đặt net.ipv4.tcp_keepalive_time = 1800 trong phần cài đặt sysctl trên hệ điều hành Linux, trong đó 1800 phải thấp hơn thời gian chờ tcp ở trạng thái rảnh của tường lửa. Chế độ cài đặt này sẽ duy trì kết nối ở trạng thái đã thiết lập để tường lửa không ngắt kết nối.
  2. Trên tất cả Trình xử lý thông báo, hãy chỉnh sửa /opt/apigee/customer/application/message-processor.properties để thêm thuộc tính sau. Nếu tệp không tồn tại, hãy tạo tệp.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  3. Khởi động lại Trình xử lý tin nhắn:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  4. Trên tất cả các Bộ định tuyến, hãy chỉnh sửa /opt/apigee/customer/application/router.properties để thêm thuộc tính sau. Nếu tệp không tồn tại, hãy tạo tệp.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  5. Khởi động lại bộ định tuyến:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart