Giới thiệu về các hành tinh, khu vực, nhóm, tổ chức, môi trường và máy chủ ảo

Edge for Private Cloud phiên bản 4.18.05

Một bản cài đặt tại chỗ của Edge Private Cloud hoặc một phiên bản Edge bao gồm nhiều thành phần Edge được cài đặt trên một tập hợp các nút máy chủ. Hình ảnh sau đây cho thấy mối quan hệ giữa hành tinh, khu vực, nhóm, tổ chức, môi trường và máy chủ ảo tạo nên một phiên bản Edge:

Bảng sau đây mô tả các mối quan hệ này:

Thành phần Chứa Liên kết với Mặc định
Hành tinh Một hoặc nhiều khu vực Không có
Khu vực Một hoặc nhiều pod "dc-1"
Pod Một hoặc nhiều thành phần Edge "central"
"gateway"
"analytics"
Tổ chức Một hoặc nhiều môi trường Một hoặc nhiều nhóm chứa Bộ xử lý thông báo và một người dùng đóng vai trò là quản trị viên tổ chức không có
Môi trường Một hoặc nhiều máy chủ ảo Một hoặc nhiều Bộ xử lý thông báo trong một nhóm liên kết với tổ chức mẹ không có
Máy chủ ảo Một hoặc nhiều bí danh máy chủ lưu trữ không có

Giới thiệu về hành tinh

Hành tinh đại diện cho toàn bộ môi trường phần cứng và phần mềm Edge, đồng thời có thể chứa một hoặc nhiều khu vực. Trong Edge, hành tinh là một nhóm logic gồm các khu vực: bạn không tạo hoặc định cấu hình rõ ràng một hành tinh trong quá trình cài đặt Edge.

Giới thiệu về khu vực

Khu vực là một nhóm gồm một hoặc nhiều nhóm. Theo mặc định, khi bạn cài đặt Edge, trình cài đặt sẽ tạo một khu vực duy nhất có tên là "dc-1" chứa 3 nhóm, như bảng sau đây cho thấy:

Khu vực Pod trong khu vực
"dc-1" "gateway", "central", "analytics"

Hình ảnh sau đây cho thấy các khu vực mặc định:

Hình ảnh này cho thấy bộ cân bằng tải đang chuyển hướng lưu lượng truy cập đến nhóm "cổng". Nhóm "cổng" chứa các thành phần Bộ định tuyến biên và Bộ xử lý thông báo xử lý các yêu cầu API. Trừ phi bạn xác định nhiều trung tâm dữ liệu, bạn không cần phải tạo thêm khu vực.

Trong một quy trình cài đặt phức tạp hơn, bạn có thể tạo hai hoặc nhiều khu vực. Một lý do để tạo nhiều khu vực là để sắp xếp các máy theo vị trí địa lý, giúp giảm thiểu thời gian truyền dữ liệu qua mạng. Trong trường hợp này, bạn lưu trữ các điểm cuối API sao cho chúng gần về mặt địa lý với người dùng của các API đó.

Trong Edge, mỗi khu vực được gọi là một trung tâm dữ liệu. Sau đó, một trung tâm dữ liệu ở miền Đông Hoa Kỳ có thể xử lý các yêu cầu đến từ Boston, Massachusetts, trong khi một trung tâm dữ liệu ở Singapore có thể xử lý các yêu cầu bắt nguồn từ các thiết bị hoặc máy tính ở Châu Á.

Ví dụ: hình ảnh sau đây cho thấy hai khu vực, tương ứng với hai trung tâm dữ liệu:

Giới thiệu về Pod

Nhóm là một nhóm gồm một hoặc nhiều thành phần Edge và kho dữ liệu Cassandra. Bạn có thể cài đặt các thành phần Edge trên cùng một nút, nhưng thường thì các thành phần này được cài đặt trên các nút khác nhau. Kho dữ liệu Cassandra là một kho lưu trữ dữ liệu được các thành phần Edge trong nhóm sử dụng.

Theo mặc định, khi bạn cài đặt Edge, trình cài đặt sẽ tạo 3 nhóm và liên kết các thành phần Edge cũng như kho dữ liệu Cassandra sau đây với mỗi nhóm:

Pod Thành phần biên

Kho dữ liệu Cassandra

"gateway" Bộ định tuyến, Bộ xử lý thông báo cache-datastore
counter-datastore
dc-datastore
keyvaluemap-datastore
kms-datastore
"central" Máy chủ quản lý, Zookeeper, LDAP, Giao diện người dùng, Qpid application-datastore
apimodel-datastore
audit-datastore
auth-datastore
identityzone-datastore
edgenotification-datastore
management-server
scheduler-datastore
user-settings-datastore
"số liệu phân tích" Postgres analytics-datastore reportcrud-datastore

Các thành phần Edge và kho dữ liệu Cassandra trong nhóm "cổng" là bắt buộc để xử lý API. Các thành phần và kho dữ liệu này phải hoạt động để xử lý các yêu cầu API. Các thành phần và kho dữ liệu trong nhóm "trung tâm" và "phân tích" không bắt buộc phải xử lý API, nhưng sẽ bổ sung thêm chức năng cho Edge.

Hình ảnh sau đây cho thấy các thành phần trong mỗi pod:

Bạn có thể thêm các nhóm Bộ xử lý thông báo và Bộ định tuyến bổ sung vào ba nhóm được tạo theo mặc định. Ngoài ra, bạn có thể thêm các thành phần Edge khác vào một nhóm hiện có. Ví dụ: bạn có thể thêm Bộ định tuyến và Bộ xử lý thông báo vào nhóm "cổng" để xử lý lưu lượng truy cập tăng lên.

Lưu ý rằng nhóm "gateway" (cổng) chứa các thành phần Bộ định tuyến biên và Bộ xử lý thông báo. Bộ định tuyến chỉ gửi yêu cầu đến Bộ xử lý thông báo trong cùng một nhóm chứ không gửi đến Bộ xử lý thông báo trong các nhóm khác.

Bạn có thể sử dụng lệnh gọi API sau đây để xem thông tin đăng ký máy chủ khi kết thúc quá trình cài đặt cho mỗi nhóm. Đây là một công cụ giám sát hữu ích.

curl -u adminEmail:pword http://ms_IP:8080/v1/servers?pod=podName

Trong đó, ms_IP là địa chỉ IP hoặc tên DNS của Máy chủ quản lý, còn podName là một trong những giá trị sau:

  • gateway
  • central
  • analytics

Ví dụ: đối với nhóm "gateway":

curl -u adminEmail:pword http://ms_IP:8080/v1/servers?pod=gateway

Apigee trả về kết quả tương tự như sau:

[ {
  "externalHostName" : "localhost",
  "externalIP" : "192.168.1.11",
  "internalHostName" : "localhost",
  "internalIP" : "192.168.1.11",
  "isUp" : true,
  "pod" : "gateway",
  "reachable" : true,
  "region" : "dc-1",
  "tags" : {
    "property" : [ {
      "name" : "jmx.rmi.port",
      "value" : "1101"
    }, ... ]
  },
  "type" : [ "message-processor" ],
  "uUID" : "276bc250-7dd0-46a5-a583-fd11eba786f8"
}, 
{
  "internalIP" : "192.168.1.11",
  "isUp" : true,
  "pod" : "gateway",
  "reachable" : true,
  "region" : "dc-1",
  "tags" : {
    "property" : [ ]
  },
  "type" : [ "dc-datastore", "management-server", "cache-datastore", "keyvaluemap-datastore", "counter-datastore", "kms-datastore" ],
  "uUID" : "13cee956-d3a7-4577-8f0f-1694564179e4"
},
{
  "externalHostName" : "localhost",
  "externalIP" : "192.168.1.11",
  "internalHostName" : "localhost",
  "internalIP" : "192.168.1.11",
  "isUp" : true,
  "pod" : "gateway",
  "reachable" : true,
  "region" : "dc-1",
  "tags" : {
    "property" : [ {
      "name" : "jmx.rmi.port",
      "value" : "1100"
    }, ... ]
  },
  "type" : [ "router" ],
  "uUID" : "de8a0200-e405-43a3-a5f9-eabafdd990e2"
} ]

Thuộc tính type liệt kê loại thành phần. Xin lưu ý rằng lệnh này liệt kê các kho dữ liệu Cassandra đã đăng ký trong nhóm. Mặc dù các nút Cassandra được cài đặt trong nhóm "cổng", nhưng bạn sẽ thấy các kho dữ liệu Cassandra được đăng ký với tất cả các nhóm.

Giới thiệu về Tổ chức

Tổ chức là vùng chứa cho tất cả đối tượng trong tài khoản Apigee, bao gồm cả API, sản phẩm API, ứng dụng và nhà phát triển. Một tổ chức được liên kết với một hoặc nhiều nhóm, trong đó mỗi nhóm phải chứa một hoặc nhiều Bộ xử lý thông báo.

Trong quá trình cài đặt Edge Private Cloud tại chỗ, theo mặc định, không có tổ chức nào. Khi tạo một tổ chức, bạn cần chỉ định hai thông tin:

  1. Người dùng có vai trò là quản trị viên tổ chức. Sau đó, người dùng đó có thể thêm người dùng khác vào tổ chức và đặt vai trò cho từng người dùng.
  2. Nhóm "cổng", nhóm chứa Bộ xử lý thông báo.

Một tổ chức có thể chứa một hoặc nhiều môi trường. Quy trình cài đặt Edge mặc định sẽ nhắc bạn tạo hai môi trường: "test" (kiểm thử) và "prod" (môi trường thực tế). Tuy nhiên, bạn có thể tạo thêm môi trường nếu cần, chẳng hạn như "môi trường thử nghiệm", "thử nghiệm", v.v.

Tổ chức cung cấp phạm vi cho một số chức năng của Apigee. Ví dụ: dữ liệu bản đồ khoá-giá trị (KVM) có sẵn ở cấp tổ chức, tức là từ tất cả môi trường. Các chức năng khác, chẳng hạn như lưu vào bộ nhớ đệm, được giới hạn trong một môi trường cụ thể. Dữ liệu phân tích của Apigee được phân vùng theo sự kết hợp giữa tổ chức và môi trường.

Dưới đây là các đối tượng chính của một tổ chức, bao gồm cả những đối tượng được xác định trên toàn cầu trong tổ chức và những đối tượng được xác định cụ thể cho một môi trường:

Giới thiệu về môi trường

Môi trường là bối cảnh thực thi thời gian chạy cho các proxy API trong một tổ chức. Bạn phải triển khai proxy API cho một môi trường thì mới có thể truy cập vào proxy đó. Bạn có thể triển khai proxy API cho một hoặc nhiều môi trường.

Một tổ chức có thể chứa nhiều môi trường. Ví dụ: bạn có thể xác định môi trường "dev", "test" và "prod" trong một tổ chức.

Khi tạo một môi trường, bạn sẽ liên kết môi trường đó với một hoặc nhiều Bộ xử lý thông báo. Bạn có thể coi môi trường là một tập hợp Bộ xử lý thông báo có tên mà trên đó các proxy API chạy. Mỗi môi trường có thể được liên kết với cùng một Bộ xử lý thông báo hoặc với các Bộ xử lý thông báo khác nhau.

Để tạo một môi trường, hãy chỉ định hai thông tin:

  1. Tổ chức chứa môi trường.
  2. Bộ xử lý thông báo xử lý các yêu cầu proxy API đến môi trường. Các Bộ xử lý thông báo này phải nằm trong một nhóm liên kết với tổ chức mẹ của môi trường.
    Theo mặc định, khi bạn tạo một môi trường, Edge sẽ liên kết tất cả Bộ xử lý thông báo có sẵn trong nhóm "cổng" với môi trường đó. Ngoài ra, bạn có thể chỉ định một nhóm nhỏ Bộ xử lý thông báo có sẵn để các Bộ xử lý thông báo khác nhau xử lý yêu cầu đến các môi trường khác nhau.

Một Bộ xử lý thông báo có thể liên kết với nhiều môi trường. Ví dụ: bản cài đặt Edge của bạn chứa hai Bộ xử lý thông báo: A và B. Sau đó, bạn tạo 3 môi trường trong tổ chức của mình: "dev", "test" và "prod":

  • Đối với môi trường "dev", bạn liên kết Bộ xử lý thông báo A vì bạn không mong đợi lưu lượng truy cập lớn.
  • Đối với môi trường "thử nghiệm", bạn liên kết Bộ xử lý thông báo B vì bạn không mong đợi lưu lượng truy cập lớn.
  • Đối với môi trường "prod", bạn liên kết cả Bộ xử lý thông báo A và B để xử lý khối lượng ở cấp độ sản xuất.

Các Bộ xử lý thông báo được chỉ định cho một môi trường có thể đều thuộc cùng một nhóm hoặc có thể thuộc nhiều nhóm, trải rộng trên nhiều khu vực và trung tâm dữ liệu. Ví dụ: bạn xác định môi trường "global" (toàn cầu) trong tổ chức của mình, bao gồm cả Bộ xử lý thông báo từ 3 khu vực, tức là 3 trung tâm dữ liệu khác nhau: Hoa Kỳ, Nhật Bản và Đức.

Việc triển khai proxy API cho môi trường "global" (toàn cầu) sẽ khiến proxy API chạy trên Bộ xử lý thông báo trong cả ba trung tâm dữ liệu. Lưu lượng truy cập API đến Bộ định tuyến trong bất kỳ một trong các trung tâm dữ liệu đó sẽ chỉ được chuyển đến Bộ xử lý thông báo trong trung tâm dữ liệu đó vì Bộ định tuyến chỉ chuyển lưu lượng truy cập đến Bộ xử lý thông báo trong cùng một nhóm.

Giới thiệu về máy chủ ảo

Máy chủ ảo xác định cổng trên Bộ định tuyến Edge mà proxy API được hiển thị và theo đó, URL mà ứng dụng sử dụng để truy cập vào proxy API. Mỗi môi trường phải xác định ít nhất một máy chủ ảo.

Đảm bảo rằng số cổng do máy chủ lưu trữ ảo chỉ định đang mở trên nút Bộ định tuyến. Sau đó, bạn có thể truy cập vào một proxy API bằng cách gửi yêu cầu đến các URL sau:

http://routerIP:port/proxy-base-path/resource-name
https://routerIP:port/proxy-base-path/resource-name

Trong trường hợp:

  • http hoặc https: Nếu máy chủ ảo được định cấu hình để hỗ trợ TLS/SSL, hãy sử dụng HTTPS. Nếu máy chủ ảo không hỗ trợ TLS/SSL, hãy sử dụng HTTP.
  • routerIP:port là địa chỉ IP và số cổng của máy chủ ảo.
  • proxy-base-path và resource-name được xác định khi bạn tạo proxy API.

Thông thường, bạn không xuất bản API cho khách hàng bằng địa chỉ IP và số cổng. Thay vào đó, bạn xác định một mục DNS cho Bộ định tuyến và cổng. Ví dụ:

http://myAPI.myCo.com/proxy-base-path/resource-name
https://myAPI.myCo.com/proxy-base-path/resource-name

Bạn cũng phải tạo một bí danh máy chủ lưu trữ cho máy chủ lưu trữ ảo khớp với tên miền của mục nhập DNS. Trong ví dụ trên, bạn sẽ chỉ định một bí danh máy chủ là myAPI.myCo.com. Nếu bạn không có mục DNS, hãy đặt bí danh máy chủ thành địa chỉ IP của Bộ định tuyến và cổng của máy chủ ảo, dưới dạng routerIP:port.

Để biết thêm thông tin, hãy xem bài viết Giới thiệu về máy chủ ảo.

Tạo tổ chức, môi trường và máy chủ ảo đầu tiên

Sau khi hoàn tất quy trình cài đặt Edge, hành động đầu tiên của bạn thường là tạo một tổ chức, môi trường và máy chủ ảo thông qua quy trình "tham gia". Để thực hiện quy trình làm quen, hãy chạy lệnh sau trên nút Máy chủ quản lý Edge:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile

Lệnh này lấy dữ liệu đầu vào là một tệp cấu hình xác định người dùng, tổ chức, môi trường và máy chủ ảo.

Ví dụ: bạn tạo:

  • Một người dùng do bạn chọn để đóng vai trò là quản trị viên tổ chức
  • Một tổ chức có tên là example
  • Một môi trường trong tổ chức có tên là prod được liên kết với tất cả Bộ xử lý thông báo trong nhóm "cổng"
  • Một máy chủ ảo trong môi trường có tên là default cho phép truy cập HTTP trên cổng 9001
  • Bí danh máy chủ lưu trữ cho máy chủ lưu trữ ảo

Sau khi chạy tập lệnh đó, bạn có thể truy cập vào các API của mình bằng cách sử dụng URL ở dạng:

http://routerIP:9001/proxy-base-path/resource-name

Sau này, bạn có thể thêm số lượng tổ chức, môi trường và máy chủ ảo tuỳ ý.

Để biết thêm thông tin, hãy xem bài viết Đăng ký cho tổ chức.