Yêu cầu về cài đặt

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

Yêu cầu về phần cứng

Bạn phải đáp ứng các yêu cầu tối thiểu sau đây về phần cứng để có cơ sở hạ tầng có tính sẵn sàng cao trong môi trường cấp độ sản xuất. Đối với tất cả các trường hợp cài đặt được mô tả trong phần Cấu trúc cài đặt, các bảng sau đây liệt kê các yêu cầu tối thiểu về phần cứng cho các thành phần cài đặt.

Trong các bảng này, yêu cầu về ổ đĩa cứng là yêu cầu bổ sung cho dung lượng ổ đĩa cứng mà hệ điều hành yêu cầu. Tuỳ thuộc vào ứng dụng và lưu lượng truy cập mạng, quá trình cài đặt của bạn có thể cần nhiều hoặc ít tài nguyên hơn so với danh sách dưới đây.

Thành phần cài đặt

RAM

CPU

Dung lượng ổ đĩa cứng tối thiểu

Cassandra

16 GB

8 lõi

Bộ nhớ cục bộ 250 GB có ổ SSD hoặc ổ HDD nhanh hỗ trợ 2.000 IOPS

Bộ xử lý/Bộ định tuyến thông báo trên cùng một máy

8/16GB

4 nhân†

100 GB

Analytics – Postgres/Qpid trên cùng một máy chủ (không nên dùng cho môi trường thực tế)

16 GB*

8 lõi*

Bộ nhớ mạng*** 500 GB – 1 TB**, tốt nhất là có phần phụ trợ SSD, hỗ trợ 1.000 IOPS trở lên*.

Analytics – Postgres độc lập

16 GB*

8 lõi*

Bộ nhớ mạng 500 GB – 1 TB**, tốt nhất là có phần phụ trợ SSD, hỗ trợ 1000 IOPS trở lên*.

Analytics – Qpid độc lập

8GB

4 lõi

Bộ nhớ cục bộ 30 GB – 50 GB có SSD hoặc HDD nhanh

Đối với các bản cài đặt có TPS lớn hơn 250, bạn nên sử dụng ổ cứng HDD có bộ nhớ cục bộ hỗ trợ 1000 IOPS.

Khác (OpenLDAP, Giao diện người dùng, Máy chủ quản lý)

4 GB

2 lõi

60 GB

† Điều chỉnh yêu cầu về hệ thống của Bộ xử lý thông báo dựa trên công suất:

Bạn nên sử dụng tối thiểu 4 lõi và 8 lõi cho hệ thống có thông lượng cao. Bạn có thể chạy kiểm thử hiệu suất để xác định kích thước tối ưu cho API của mình.

*Điều chỉnh yêu cầu về hệ thống của Postgres dựa trên công suất:

  • Dưới 250 TPS: Có thể cân nhắc sử dụng bộ nhớ 8 GB, 4 lõi với bộ nhớ mạng được quản lý*** hỗ trợ 1.000 IOPS trở lên
  • Lớn hơn 250 TPS: 16 GB, 8 lõi, bộ nhớ mạng được quản lý*** hỗ trợ 1000 IOPS trở lên
  • Lớn hơn 1000 TPS: 16 GB, 8 lõi, bộ nhớ mạng được quản lý*** hỗ trợ 2000 IOPS trở lên
  • Lớn hơn 2000 TPS: 32 GB, 16 lõi, bộ nhớ mạng được quản lý*** hỗ trợ 2000 IOPS trở lên
  • Lớn hơn 4000 TPS: 64 GB, 32 lõi, bộ nhớ mạng được quản lý*** hỗ trợ 4000 IOPS trở lên

**Giá trị ổ đĩa cứng Postgres dựa trên số liệu phân tích có sẵn do Edge thu thập. Nếu bạn thêm giá trị tuỳ chỉnh vào dữ liệu phân tích, thì các giá trị này phải được tăng lên tương ứng. Sử dụng công thức sau để ước tính dung lượng lưu trữ cần thiết:

(số byte/yêu cầu) * (số yêu cầu mỗi giây) * (số giây mỗi giờ) * (số giờ sử dụng cao điểm mỗi ngày) * (số ngày mỗi tháng) * (số tháng giữ lại dữ liệu) = số byte dung lượng lưu trữ cần thiết

Ví dụ:

(2 nghìn byte dữ liệu phân tích mỗi yêu cầu) * 100 yêu cầu/giây * 3600 giây/giờ * 18 giờ sử dụng cao điểm mỗi ngày * 30 ngày/tháng * 3 tháng giữ lại dữ liệu = 1.194.393.600.000 byte hoặc 1194,4 GB.

*** Bạn nên sử dụng Bộ nhớ mạng cho cơ sở dữ liệu Postgresql vì:

  • Tính năng này cho phép tăng kích thước bộ nhớ một cách linh động nếu và khi cần.
  • Bạn có thể điều chỉnh IOPS mạng một cách nhanh chóng trong hầu hết các hệ thống con về môi trường/bộ nhớ/mạng hiện nay.
  • Bạn có thể bật ảnh chụp nhanh ở cấp bộ nhớ trong các giải pháp sao lưu và khôi phục.

Ngoài ra, sau đây là danh sách các yêu cầu về phần cứng nếu bạn muốn cài đặt Dịch vụ kiếm tiền:

Thành phần có tính năng kiếm tiền

RAM

CPU

Đĩa cứng

Máy chủ quản lý (có Dịch vụ kiếm tiền)

8GB

4 lõi

60 GB

Analytics – Postgres/Qpid trên cùng một máy chủ

16 GB

8 lõi

Bộ nhớ mạng 500 GB – 1 TB, tốt nhất là có phần phụ trợ SSD, hỗ trợ 1.000 IOPS trở lên hoặc sử dụng quy tắc trong bảng trên.

Analytics – Postgres độc lập

16 GB

8 lõi

Bộ nhớ mạng 500 GB – 1 TB, tốt nhất là có phần phụ trợ SSD, hỗ trợ 1.000 IOPS trở lên hoặc sử dụng quy tắc trong bảng trên.

Analytics – Qpid độc lập

8GB

4 lõi

40 GB

Sau đây là các yêu cầu về phần cứng nếu bạn muốn cài đặt API BaaS:

Thành phần BaaS của API

RAM

CPU

Đĩa cứng

ElasticSearch*

8GB

4 lõi

60 – 80 GB

API BaaS Stack *

8GB

4 lõi

60 – 80 GB

API BaaS Portal

1 GB

2 lõi

20 GB

Cassandra (Không bắt buộc — thường thì bạn sử dụng cùng một cụm Cassandra cho cả Edge và Dịch vụ BaaS API)

16 GB

8 lõi

Bộ nhớ cục bộ 250 GB có ổ SSD hoặc ổ HDD nhanh hỗ trợ 2.000 IOPS

* Bạn có thể cài đặt ElasticSearch và API BaaS Stack trên cùng một nút. Nếu có, hãy định cấu hình ElasticSearch để sử dụng 4 GB bộ nhớ (mặc định). Nếu ElasticSearch được cài đặt trên nút riêng, hãy định cấu hình để ElasticSearch sử dụng 6 GB bộ nhớ.

Lưu ý:

  • Nếu hệ thống tệp gốc không đủ lớn để cài đặt, bạn nên đặt dữ liệu vào một ổ đĩa lớn hơn.
  • Nếu bạn đã cài đặt phiên bản Apigee Edge cho đám mây riêng tư cũ hơn trên máy, hãy nhớ xoá thư mục /tmp/java trước khi cài đặt phiên bản mới.
  • Thư mục tạm thời trên toàn hệ thống /tmp cần có quyền thực thi để khởi động Cassandra.
  • Nếu người dùng "apigee" được tạo trước khi cài đặt, hãy đảm bảo rằng "/home/apigee" tồn tại dưới dạng thư mục gốc và thuộc sở hữu của "apigee:apigee".

Yêu cầu về hệ điều hành và phần mềm bên thứ ba

Những hướng dẫn cài đặt này và các tệp cài đặt được cung cấp đã được thử nghiệm trên các hệ điều hành và phần mềm bên thứ ba được liệt kê tại đây: https://apigee.com/docs/api-services/reference/supported-software.

Tạo người dùng apigee

Quy trình cài đặt sẽ tạo một người dùng hệ thống Unix có tên là "apigee". Các thư mục và tệp Edge thuộc sở hữu của "apigee", cũng như các quy trình Edge. Điều đó có nghĩa là các thành phần Edge chạy dưới dạng người dùng "apigee". Nếu cần, bạn có thể chạy các thành phần dưới dạng một người dùng khác. Hãy xem phần "Liên kết Bộ định tuyến với một cổng được bảo vệ" trong bài viết Cài đặt các thành phần Edge trên một nút để xem ví dụ.

Thư mục cài đặt

Theo mặc định, trình cài đặt sẽ ghi tất cả tệp vào thư mục /opt/apigee. Bạn không thể thay đổi vị trí thư mục này.

Trong hướng dẫn này, thư mục cài đặt được ghi chú là /<inst_root>/apigee, trong đó /<inst_root> là /opt theo mặc định.

Java

Bạn cần cài đặt phiên bản Java 1.8 được hỗ trợ trên mỗi máy trước khi cài đặt. Các JDK được hỗ trợ được liệt kê tại đây:

https://apigee.com/docs/api-services/reference/supported-software

Đảm bảo rằng JAVA_HOME trỏ đến thư mục gốc của JDK cho người dùng thực hiện cài đặt.

Cài đặt mạng

Bạn nên kiểm tra chế độ cài đặt mạng trước khi cài đặt. Trình cài đặt yêu cầu tất cả máy đều có địa chỉ IP cố định. Sử dụng các lệnh sau để xác thực chế độ cài đặt:

  • hostname trả về tên của máy
  • hostname -i trả về địa chỉ IP cho tên máy chủ có thể được xử lý từ các máy khác.

Tuỳ thuộc vào loại và phiên bản hệ điều hành, bạn có thể phải chỉnh sửa /etc/hosts và /etc/sysconfig/network nếu tên máy chủ không được đặt chính xác. Hãy xem tài liệu về hệ điều hành cụ thể của bạn để biết thêm thông tin.

Cassandra

Tất cả các nút Cassandra phải được kết nối với một vòng. Cassandra lưu trữ các bản sao dữ liệu trên nhiều nút để đảm bảo độ tin cậy và khả năng chịu lỗi. Chiến lược sao chép cho mỗi không gian khoá Edge xác định các nút Cassandra nơi đặt bản sao. Để biết thêm thông tin,hãy xem bài viết Giới thiệu về hệ số sao chép và mức độ nhất quán của Cassandra.

Cassandra tự động điều chỉnh kích thước vùng nhớ khối xếp Java dựa trên bộ nhớ còn trống. Để biết thêm thông tin, hãy xem bài viết Điều chỉnh tài nguyên Java. Trong trường hợp hiệu suất bị giảm hoặc mức tiêu thụ bộ nhớ cao.

Sau khi cài đặt Edge cho đám mây riêng tư, bạn có thể kiểm tra để đảm bảo Cassandra được định cấu hình chính xác bằng cách kiểm tra tệp /<inst_root>/apigee/apigee-cassandra/conf/cassandra.yaml. Ví dụ: đảm bảo rằng tập lệnh cài đặt Edge cho đám mây riêng tư đặt các thuộc tính sau:

  • cluster_name
  • initial_token
  • partitioner
  • hạt giống
  • listen_address
  • rpc_address
  • snitch

Cảnh báo: Đừng chỉnh sửa tệp này.

Cơ sở dữ liệu PostgreSQL

Sau khi cài đặt Edge, bạn có thể điều chỉnh các chế độ cài đặt cơ sở dữ liệu PostgreSQL sau đây dựa trên dung lượng RAM có sẵn trên hệ thống:

conf_postgresql_shared_buffers = 35% of RAM      # min 128kB
conf_postgresql_effective_cache_size = 45% of RAM
conf_postgresql_work_mem = 512MB       # min 64kB

Cách đặt các giá trị này:

  1. Chỉnh sửa postgresql.properties:
    > vi /<inst_root>/apigee/customer/application/postgresql.properties

    Nếu tệp không tồn tại, hãy tạo tệp.
  2. Đặt các thuộc tính nêu trên.
  3. Lưu nội dung chỉnh sửa.
  4. Khởi động lại cơ sở dữ liệu PostgreSQL:
    > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql restart

jsvc

"jsvc" là điều kiện tiên quyết để sử dụng API BaaS. Phiên bản 1.0.15-dev được cài đặt khi bạn cài đặt API BaaS.

Dịch vụ bảo mật mạng (NSS)

Dịch vụ bảo mật mạng (NSS) là một tập hợp các thư viện hỗ trợ phát triển các ứng dụng máy khách và máy chủ có hỗ trợ bảo mật. Bạn nên đảm bảo rằng bạn đã cài đặt NSS phiên bản 3.19 trở lên.

Cách kiểm tra phiên bản hiện tại:

> yum info nss

Cách cập nhật NSS:

> yum update nss

Hãy xem bài viết này của RedHat để biết thêm thông tin.

Tắt IPv6 trên Google Cloud Platform cho RedHat/CentOS 7

Nếu đang cài đặt Edge trên RedHat 7 hoặc CentOS 7 trên Google Cloud Platform, thì bạn phải tắt IPv6 trên tất cả các nút Qpid.

Hãy xem tài liệu về RedHat hoặc CentOS cho phiên bản hệ điều hành cụ thể của bạn để biết hướng dẫn về cách tắt IPv6.

AWS AMI

Nếu đang cài đặt Edge trên Amazon Machine Image (AMI) của AWS cho Red Hat Enterprise Linux 7.x, trước tiên, bạn phải chạy lệnh sau:

> yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional

Công cụ

Trình cài đặt sử dụng các công cụ UNIX sau đây trong phiên bản tiêu chuẩn do EL5 hoặc EL6 cung cấp.

awk

dirname

ls

nhịp thở/phút

giải nén

basename

echo

perl

rpm2cpio

useradd

bash

expr

pgrep (từ procps)

sed

wc

bc

grep

ps

tar

ngon

curl

hostname

pwd

tr

chkconfig

date

id

python

uname

sudo

Lưu ý:

  • Tệp thực thi cho công cụ "useradd" nằm trong /usr/sbin và cho chkconfig trong /sbin.
  • Khi có quyền truy cập sudo, bạn có thể truy cập vào môi trường của người dùng gọi, ví dụ: thường thì bạn sẽ gọi "sudo <command>" hoặc "sudo PATH=$PATH:/usr/sbin:/sbin <command>".
  • Đảm bảo rằng bạn đã cài đặt công cụ "bản vá" trước khi cài đặt gói dịch vụ (bản vá).

ntpdate – Bạn nên đồng bộ hoá thời gian của máy chủ. Nếu chưa được định cấu hình, thì tiện ích "ntpdate" có thể phục vụ mục đích này, tức là xác minh xem các máy chủ có được đồng bộ hoá thời gian hay không. Bạn có thể dùng lệnh "yum install ntp" để cài đặt tiện ích này. Điều này đặc biệt hữu ích khi sao chép các chế độ thiết lập OpenLDAP. Lưu ý rằng bạn thiết lập múi giờ của máy chủ theo giờ UTC.

openldap 2.4 – Quá trình cài đặt tại chỗ yêu cầu OpenLDAP 2.4. Nếu máy chủ của bạn có kết nối Internet, thì tập lệnh cài đặt Edge sẽ tải xuống và cài đặt OpenLDAP. Nếu máy chủ của bạn không có kết nối Internet, bạn phải đảm bảo rằng OpenLDAP đã được cài đặt trước khi chạy tập lệnh cài đặt Edge. Trên RHEL/CentOS, bạn có thể chạy lệnh "yum install openldap-clients openldap-servers" để cài đặt OpenLDAP.

Đối với các bản cài đặt 13 máy chủ và 12 máy chủ có hai Trung tâm dữ liệu, bạn cần có Sao chép OpenLDAP vì có nhiều nút lưu trữ OpenLDAP.

Tường lửa và máy chủ ảo

Thuật ngữ "ảo" thường bị quá tải trong lĩnh vực CNTT, và do đó, thuật ngữ này cũng được dùng trong Apigee Edge cho việc triển khai Đám mây riêng tư và máy chủ ảo. Để làm rõ, có hai cách sử dụng chính của thuật ngữ "ảo":

  • Máy ảo (VM): Không bắt buộc, nhưng một số hoạt động triển khai sử dụng công nghệ máy ảo để tạo máy chủ tách biệt cho các thành phần Apigee. Máy chủ lưu trữ máy ảo, giống như máy chủ lưu trữ vật lý, có thể có giao diện mạng và tường lửa. Những hướng dẫn cài đặt này không hỗ trợ cụ thể cho việc cài đặt máy ảo.
  • Máy chủ ảo: Điểm cuối web, tương tự như máy chủ ảo Apache.

Bộ định tuyến trong máy ảo có thể hiển thị nhiều máy chủ ảo (miễn là chúng khác nhau về bí danh máy chủ hoặc cổng giao diện).

Ví dụ về cách đặt tên: một máy chủ vật lý "A" có thể đang chạy hai máy ảo, có tên là "VM1" và "VM2". Giả sử VM1 hiển thị một giao diện Ethernet ảo, được đặt tên là eth0 bên trong máy ảo và được gán địa chỉ IP 111.111.111.111 bằng máy ảo hoá hoặc máy chủ DHCP mạng; sau đó giả sử VM2 hiển thị một giao diện Ethernet ảo cũng có tên là eth0 và được gán địa chỉ IP 111.111.111.222.

Chúng ta có thể có một bộ định tuyến Apigee chạy trong mỗi máy ảo. Bộ định tuyến hiển thị các điểm cuối của máy chủ ảo như trong ví dụ giả định sau:

Bộ định tuyến Apigee trong VM1 hiển thị ba máy chủ ảo trên giao diện eth0 (có một số địa chỉ IP cụ thể), api.mycompany.com:80, api.mycompany.com:443 và test.mycompany.com:80.

Bộ định tuyến trong VM2 hiển thị api.mycompany.com:80 (cùng tên và cổng như VM1).

Hệ điều hành của máy chủ vật lý có thể có tường lửa mạng; nếu có, tường lửa đó phải được định cấu hình để truyền lưu lượng TCP đến các cổng đang được hiển thị trên giao diện ảo hoá (111.111.111.111:{80, 443} và 111.111.111.222:80). Ngoài ra, hệ điều hành của mỗi máy ảo có thể cung cấp tường lửa riêng trên giao diện eth0 và các tường lửa này cũng phải cho phép lưu lượng truy cập qua cổng 80 và 443 kết nối.

Đường dẫn cơ sở là thành phần thứ ba liên quan đến việc định tuyến lệnh gọi API đến các proxy API khác nhau mà bạn có thể đã triển khai. Các gói proxy API có thể dùng chung một điểm cuối nếu có các đường dẫn cơ sở khác nhau. Ví dụ: một đường dẫn cơ sở có thể được xác định là http://api.mycompany.com:80/ và một đường dẫn khác được xác định là http://api.mycompany.com:80/salesdemo.

Trong trường hợp này, bạn cần có một trình cân bằng tải hoặc trình điều hướng lưu lượng truy cập để phân chia lưu lượng truy cập http://api.mycompany.com:80/ giữa hai địa chỉ IP (111.111.111.111 trên VM1 và 111.111.111.222 trên VM2). Chức năng này dành riêng cho chế độ cài đặt cụ thể của bạn và do nhóm mạng cục bộ của bạn định cấu hình.

Đường dẫn cơ sở được đặt khi bạn triển khai một API. Từ ví dụ trên, bạn có thể triển khai hai API, mycompany và testmycompany, cho tổ chức mycompany-org bằng máy chủ lưu trữ ảo có bí danh máy chủ lưu trữ là api.mycompany.com và cổng được đặt thành 80. Nếu bạn không khai báo đường dẫn cơ sở trong quá trình triển khai, thì bộ định tuyến sẽ không biết nên gửi yêu cầu đến API nào.

Tuy nhiên, nếu bạn triển khai API testmycompany có URL cơ sở là /salesdemo, thì người dùng sẽ truy cập vào API đó bằng http://api.mycompany.com:80/salesdemo. Nếu bạn triển khai API mycompany với URL cơ sở là /, thì người dùng sẽ truy cập vào API bằng URL http://api.mycompany.com:80/.

Yêu cầu về cổng biên

Nhu cầu quản lý tường lửa không chỉ dừng lại ở các 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 cần để giao tiếp với nhau.

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:

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

  • *Cổng 8082 trên Bộ xử lý thông báo chỉ phải mở để Bộ định tuyến truy cập khi bạn định cấu hình TLS/SSL giữa Bộ định tuyến và Bộ xử lý thông báo. Nếu bạn không định cấu hình TLS/SSL giữa Bộ định tuyến và Bộ xử lý thông báo, thì cấu hình mặc định, cổng 8082 vẫn phải mở trên Bộ xử lý thông báo để quản lý thành phần, nhưng Bộ định tuyến không cần quyền truy cập vào thành phần đó.
  • 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 mở trên thành phần để Máy chủ quản lý có thể truy cập.
  • Các thành phần sau đâ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, Bộ xử lý thông báo, Giao diện người dùng, Postgres và Qpid.
  • Bộ 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 Bộ xử lý thông báo, thì tất cả các bộ xử lý đó đều 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 Bộ xử lý thông báo). Nếu bạn có nhiều Trung tâm dữ liệu, thì tất cả Bộ xử lý thông báo trong tất cả Trung tâm dữ liệu đều phải truy cập được vào cổng này.
  • 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 để bất kỳ Bộ xử lý thông báo nào cũng có thể 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ý của Bộ xử lý thông báo.
  • 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).
  • 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 proxy API hiển thị, để hỗ trợ nút Gửi trong công cụ theo dõi.
  • Máy chủ quản lý cần có quyền truy cập vào cổng JMX trên các nút Cassandra.
  • Bạn có thể định cấu hình quyền truy cập vào 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ó thể sử dụng các cổng khác nhau. Hãy xem phần TLS/SSL để biết thêm thông tin.
  • Nếu định cấu hình hai 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. Bạn có thể mở các cổng trên từng nút để cho phép truy cập ssh.
  • 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 SMTP bên ngoài máy chủ. 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. Đối với SMTP không phải TLS, số cổng thường là 25. Đối với SMTP hỗ trợ 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.

Bảng dưới đây cho thấy 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

Nội dung mô tả

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

Máy chủ quản lý

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, Bộ xử lý thông báo, Giao diện người dùng, Postgres và Qpid.

1099

Cổng JMX

4526

Đối với các lệnh gọi quản lý và bộ nhớ đệm phân tán

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ý

Bộ xử lý thông báo

8998

Cổng Bộ xử lý thông báo để liên lạc từ Bộ định tuyến

8082

Cổng quản lý mặc định cho Bộ xử lý thông báo và phải 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à Bộ xử lý thông báo, thì Bộ định tuyến sẽ sử dụng TLS/SSL để kiểm tra tình trạng trên Bộ xử lý thông báo.

1101

Cổng JMX

4528

Đối với các lệnh gọi quản lý và bộ nhớ đệm phân tán giữa các Bộ xử lý thông báo, cũng như để giao tiếp từ Bộ định tuyến

Bộ định tuyến

8081

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

4527

Đối với các lệnh gọi quản lý và bộ nhớ đệm phân tán

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ó khả dụng hay không.

Để lấy trạng thái của Bộ định tuyến, trình 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ể kết nối với Bộ định tuyến, thì yêu cầu sẽ trả về HTTP 200.

ZooKeeper

2181

Được các thành phần khác sử dụng như Máy chủ quản lý, Bộ định tuyến, Bộ xử lý thông báo, v.v.

2888, 3888

Được ZooKeeper sử dụng nội bộ để giao tiếp trong cụm ZooKeeper (gọi là nhóm ZooKeeper)

Cassandra

7000, 9042, 9160

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.

Qpid

5672

Dùng để liên lạc từ Bộ định tuyến và Bộ xử lý thông báo đến máy chủ Qpid

8083

Cổng quản lý mặc định trên máy chủ Qpid và phải mở trên thành phần để Máy chủ quản lý truy cập.

1102

Cổng JMX

4529

Đối với các lệnh gọi quản lý và bộ nhớ đệm phân tán

Postgres

5432

Dùng để giao tiếp giữa Qpid/Máy chủ quản lý và Postgres

8084

Cổng quản lý mặc định trên máy chủ Postgres và phải mở trên thành phần để Máy chủ quản lý truy cập.

1103

Cổng JMX

4530

Đối với các lệnh gọi quản lý và bộ nhớ đệm phân tán

22

Nếu định cấu hình hai 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.

LDAP

10389

OpenLDAP

SmartDocs

59002

Cổng trên bộ định tuyến Edge nơi các yêu cầu trang SmartDocs được gửi đến.

Lưu ý: Ngoài ra, bạn có thể cần mở các cổng trong tường lửa để thử nghiệm. Ví dụ: 59001, v.v.

Bảng tiếp theo cho thấy các cổng tương tự, được liệt kê theo số, cùng 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 đến

<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 của máy chủ lưu trữ ảo. Cổng 80 và 443 được sử dụng phổ biến nhất; Bộ định tuyến thư có thể chấm dứt kết nối TLS/SSL.

Ứng dụng bên ngoài (hoặc trình cân bằng tải)

Trình nghe trên Bộ định tuyến thông báo

1099 đến 1103

Quản lý JMX

Ứng dụng JMX

Máy chủ quản lý (1099)

Trình 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

Bộ xử lý thông báo

Máy chủ Qpid

Máy chủ Postgres

Người trông coi vườn thú

2888 và 3888

Quản lý nút nội bộ của Zookeeper

Người trông coi vườn thú

Người trông coi vườn thú

4526 đến 4530

Cổng quản lý RPC dùng cho bộ nhớ đệm phân tán và các lệnh gọi từ Máy chủ quản lý đến các thành phần khác

Máy chủ quản lý

Máy chủ quản lý (4526)

Bộ định tuyến (4527)

Message Processor (4528)

Máy chủ Qpid (4529)

Máy chủ Postgres (4530)

4528

Đối với các lệnh gọi bộ nhớ đệm phân tán giữa các Bộ xử lý thông báo và để giao tiếp từ Bộ định tuyến

Bộ định tuyến

Bộ xử lý thông báo

Bộ xử lý thông báo

5432

Ứng dụng Postgres

Máy chủ Qpid

Postgres

5672

Dùng để gửi dữ liệu phân tích từ Bộ định tuyến và Bộ xử lý thông báo đến Qpid

Bộ định tuyến

Bộ xử lý thông báo

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 API quản lý

Máy chủ quản lý

8081 đến 8084

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

Ứng dụng API quản lý

Bộ định tuyến (8081)

Trình xử lý thông báo (8082)

Máy chủ Qpid (8083)

Máy chủ Postgres (8084)

8998

Giao tiếp giữa bộ định tuyến và bộ xử lý thông báo

Bộ định tuyến

Bộ 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

Bộ xử lý thông báo

Máy chủ quản lý

Cassandra

9160

Ứng dụng Cassandra Thrift

Bộ định tuyến

Bộ xử lý thông báo

Máy chủ quản lý

Cassandra

10389

Cổng LDAP

Máy chủ quản lý

OpenLDAP

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ó khả dụng hay không.

Trình cân bằng tải Bộ định tuyến

59002

Cổng bộ định tuyến nơi gửi yêu cầu trang SmartDocs

SmartDocs

Bộ định tuyến

Bộ xử lý thông báo duy trì một nhóm kết nối chuyên dụng mở cho 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 bộ xử lý thông báo và máy chủ Cassandra, tường lửa có thể làm hết thời gian chờ của kết nối. Tuy nhiên, trình xử lý thông báo không được thiết kế để thiết lập lại 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, bộ xử lý thông báo và bộ định tuyến phải nằm trong cùng một mạng con để tường lửa không tham gia vào quá trình triển khai các thành phần này.

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

  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 khi tường lửa ở trạng thái rảnh. Chế độ cài đặt này sẽ giữ 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ả Bộ xử lý thông báo, hãy chỉnh sửa /<inst_root>/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_casssandra.maxconnecttimeinmillis=-1
  3. Khởi động lại Trình xử lý thông báo:
    > /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  4. Trên tất cả Bộ định tuyến, hãy chỉnh sửa /<inst_root>/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_casssandra.maxconnecttimeinmillis=-1
  5. Khởi động lại Bộ định tuyến:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router restart

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

Yêu cầu về cổng API BaaS

Nếu chọn cài đặt API BaaS, bạn sẽ thêm các thành phần API BaaS Stack và API BaaS Portal. Các thành phần này sử dụng các cổng như trong hình dưới đây:

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

  • Cổng API BaaS không bao giờ gửi yêu cầu trực tiếp đến nút BaaS Stack. Khi nhà phát triển đăng nhập vào Cổng thông tin, ứng dụng Cổng thông tin sẽ được tải xuống trình duyệt. Sau đó, ứng dụng Cổng thông tin chạy trong trình duyệt sẽ gửi yêu cầu đến các nút BaaS Stack.
  • Bản cài đặt chính thức của API BaaS sử dụng trình cân bằng tải giữa nút Cổng API BaaS và các nút Ngăn xếp API BaaS. Khi định cấu hình Cổng thông tin và khi thực hiện lệnh gọi API BaaS, bạn chỉ định địa chỉ IP hoặc tên DNS của trình cân bằng tải, chứ không phải của các nút Ngăn xếp.
  • Bạn phải định cấu hình tất cả các nút Baas Stack để gửi email thông qua một máy chủ SMTP bên ngoài. Đối với SMTP không phải TLS, số cổng thường là 25. Đối với SMTP hỗ trợ 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.
  • Các nút Cassandra có thể được dành riêng cho API BaaS hoặc có thể được chia sẻ với Edge.

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

Thành phần

Cổng

Nội dung mô tả

Cổng API BaaS

9000

Cổng cho giao diện người dùng API BaaS

Ngăn xếp API BaaS

8080

Cổng nhận yêu cầu API

ElasticSearch

9200 đến 9400

Để giao tiếp với API BaaS Stack và để giao tiếp giữa các nút ElasticSearch

Cấp phép

Mỗi lượt cài đặt Edge đều yêu cầu một tệp giấy phép riêng biệt mà bạn nhận được từ Apigee. Bạn sẽ cần cung cấp đường dẫn đến tệp giấy phép khi cài đặt máy chủ quản lý, ví dụ: /tmp/license.txt.

Trình cài đặt sao chép tệp giấy phép vào /<inst_root>/apigee/customer/conf/license.txt.

Nếu tệp giấy phép hợp lệ, máy chủ quản lý sẽ xác thực thời hạn và số lượng Bộ xử lý thông báo (MP) được phép. Nếu bất kỳ chế độ cài đặt giấy phép nào hết hạn, bạn có thể tìm thấy nhật ký ở vị trí sau: /<inst_root>/apigee/var/log/edge-management-server/logs. Trong trường hợp này, bạn có thể liên hệ với Nhóm hỗ trợ Apigee để biết thông tin chi tiết về việc di chuyển.