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 v4.18.05

Một bản cài đặt trên máy của Edge Private Cloud (Đám mây riêng tư Edge) 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 nhóm nút máy chủ. Hình ảnh sau đây cho thấy mối quan hệ giữa các 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 thực thể 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 áp dụng
Khu vực Một hoặc nhiều nhóm "dc-1"
Nhóm 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 Trình 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 Trình xử lý thông báo trong một nhóm được 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ủ 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 các khu vực hợp lý: bạn không tạo hoặc định cấu hình hành tinh một cách rõ ràng trong quá trình cài đặt Edge.

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

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

Khu vực Các nhóm trong khu vực
"dc-1" "cổng", "trung tâm", "phân tích"

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 định hướng lưu lượng truy cập đến nhóm "cổng". Vùng chứa "cổng" chứa các thành phần Bộ định tuyến cạnh 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 sẽ không cần phải tạo thêm khu vực.

Trong quá trình cài đặt phức tạp hơn, bạn có thể tạo hai hoặc nhiều vùng. 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 tải trên mạng. Trong trường hợp này, bạn lưu trữ các điểm cuối API để các điểm cuối đó gần người dùng các API đó về mặt địa lý.

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ừ 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

pod 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 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 mà 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 ba nhóm và liên kết các thành phần Edge và kho dữ liệu Cassandra sau đây với từng nhóm:

Nhóm Thành phần Edge

Kho dữ liệu Cassandra

"cổng" 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
"analytics" 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 đang 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 "central" (trung tâm) và "analytics" (phân tích) không bắt buộc phải xử lý API, nhưng sẽ thêm chức năng bổ sung vào Edge.

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

Bạn có thể thêm các nhóm Trình xử lý thông báo và Trình định tuyến bổ sung vào 3 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 Trình định tuyến và Trình 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 "cổng" chứa các thành phần Bộ định tuyến cạnh và Trình xử lý thông báo. Bộ định tuyến chỉ gửi yêu cầu đến Trình xử lý thông báo trong cùng một nhóm chứ không gửi đến Trình 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 hoàn tất 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ý và podName là một trong những giá trị sau:

  • gateway
  • central
  • analytics

Ví dụ: đối với nhóm "cổng":

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 tệp này liệt kê các kho dữ liệu Cassandra đã đăng ký trong vùng chứa. 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à một vùng chứa tất cả cá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 Trình xử lý thông báo.

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

  1. Người dùng đóng 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. Vùng chứa "cổng", vùng chứa các Trình 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" và "prod". Tuy nhiên, bạn có thể tạo thêm môi trường nếu cần, chẳng hạn như "tạo bản dựng", "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 ánh xạ khoá-giá trị (KVM) có sẵn ở cấp tổ chức, nghĩa 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 Apigee được phân vùng theo 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ả các đối tượng được xác định trên toàn cầu trong tổ chức và các đối tượng được xác định riêng cho một môi trường:

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

Môi trường là ngữ 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 API đó. Bạn có thể triển khai proxy API cho một môi trường 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 Trình 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 tên mà proxy API chạy trên đó. Mỗi môi trường có thể được liên kết với cùng một Trình xử lý thông báo hoặc với các Trình 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. Trình xử lý thông báo xử lý các yêu cầu proxy API cho môi trường. Các Trình xử lý thông báo này phải nằm trong một nhóm được 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ả Trình 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 tập hợp con của các Trình xử lý thông báo hiện có để các Trình xử lý thông báo khác nhau xử lý các yêu cầu đến các môi trường khác nhau.

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

  • Đối với môi trường "dev", bạn liên kết Trình 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 "kiểm thử", bạn liên kết Trình 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ả Trình xử lý thông báo A và B để xử lý khối lượng ở cấp sản xuất.

Tất cả Trình xử lý thông báo được chỉ định cho một môi trường đều có thể thuộc cùng một nhóm hoặc có thể thuộc nhiều nhóm, trải dài 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 "toàn cầu" trong tổ chức của mình bao gồm Trình xử lý thông báo từ ba khu vực, nghĩa là ba 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 "toàn cầu" sẽ khiến proxy API chạy trên Trình xử lý thông báo trong cả ba trung tâm dữ liệu. Lưu lượng truy cập API đến một Trình định tuyến trong bất kỳ trung tâm dữ liệu nào trong số đó sẽ chỉ được chuyển hướng đến Trình xử lý thông báo trong trung tâm dữ liệu đó vì Trình định tuyến chỉ chuyển hướng lưu lượng truy cập đến Trình xử lý thông báo trong cùng một nhóm.

Giới thiệu về máy chủ lưu trữ ảo

Máy chủ ảo xác định cổng trên Bộ định tuyến cạnh mà proxy API hiển thị, đồng thời mở rộng URL mà ứng dụng sử dụng để truy cập 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ủ ảo chỉ định đang mở trên nút Bộ định tuyến. Sau đó, bạn có thể truy cập vào 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-pathresource-name được xác định khi bạn tạo proxy API.

Thông thường, bạn không phát hành 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 nhập 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 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. Từ ví dụ trên, bạn sẽ chỉ định bí danh máy chủ lưu trữ là myAPI.myCo.com. Nếu bạn không có mục nhập DNS, hãy đặt bí danh máy chủ lưu trữ thành địa chỉ IP của Bộ định tuyến và cổng của máy chủ lưu trữ ảo, chẳng hạn như routerIP:port.

Để biết thêm thông tin, hãy xem bài viết Giới thiệu về máy chủ lưu trữ ả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, thao tác đầ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 "làm quen". Để 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 tệp cấu hình làm dữ liệu đầu vào để 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 mà bạn chọn để làm quản trị viên tổ chức
  • Một tổ chức có tên 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ả Trình 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 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ủ lưu trữ ảo bất kỳ.

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