Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến tài liệu về
Apigee X. thông tin
Khách hàng Cloud có tài khoản trả phí và tất cả khách hàng Edge for Private Cloud đều có thể tạo máy chủ ảo trong một tổ chức. Người dùng tạo máy chủ lưu trữ ảo phải có vai trò là quản trị viên tổ chức hoặc có vai trò tuỳ chỉnh có quyền sửa đổi máy chủ lưu trữ ảo. Người dùng ở các vai trò khác không có quyền tạo máy chủ lưu trữ ảo.
Xem video giới thiệu về máy chủ lưu trữ ảo.
Tạo máy chủ ảo
Hãy làm theo quy trình cơ bản sau để tạo máy chủ ảo. Quy trình thực tế mà bạn sử dụng sẽ dựa trên việc bạn là khách hàng của Google Cloud hay Google Cloud Private, cũng như việc bạn có bật TLS hay không:
- Tạo mục nhập DNS và bản ghi CNAME cho miền công khai của bạn.
- Nếu bật TLS trên máy chủ ảo:
- Tạo và định cấu hình kho khoá bằng cách sử dụng quy trình được mô tả tại đây: Kho khoá và kho tin cậy.
- Tải chứng chỉ và khoá lên kho khoá. Đảm bảo rằng tên miền do chứng chỉ của bạn chỉ định khớp với bí danh máy chủ lưu trữ mà bạn muốn sử dụng cho máy chủ lưu trữ ảo.
- Tạo tệp tham chiếu đến kho khoá bằng cách sử dụng giao diện người dùng hoặc API Edge. Thông tin tham chiếu chỉ định tên của kho khoá và loại tham chiếu là
KeyStore
. Hãy xem phần Xử lý tệp tham chiếu để biết thêm thông tin về cách tạo và sửa đổi tệp tham chiếu. - Nếu bạn đang thực hiện TLS hai chiều, hãy tạo một kho lưu trữ đáng tin cậy, tải chứng chỉ lên và tạo một tệp đối chiếu đến kho lưu trữ đáng tin cậy đó. Tạo kho tin cậy bằng cách sử dụng quy trình được mô tả tại đây: Kho khoá và kho tin cậy.
- Tạo máy chủ ảo bằng cách sử dụng API Tạo máy chủ ảo. Nếu bật TLS, hãy nhớ chỉ định đúng tham chiếu kho khoá, tham chiếu kho tin cậy và bí danh khoá.
- Nếu bạn có bất kỳ proxy API nào hiện có, hãy thêm máy chủ ảo vào ProxyEndpoint.
Máy chủ ảo được thêm tự động vào tất cả proxy API mới. Xem phần Định cấu hình proxy API để sử dụng máy chủ ảo.
Sau khi cập nhật proxy API để sử dụng máy chủ ảo và tạo mục nhập DNS và bản ghi CNAME cho bí danh máy chủ, bạn có thể truy cập vào proxy API như sau:
https://api.myCompany.com/v1/project-base-path/resource-path
Ví dụ:
https://api.myCompany.com/v1/weather/forecastrss?w=12797282
Tạo máy chủ lưu trữ ảo bằng API hoặc giao diện người dùng
Bạn có thể tạo máy chủ ảo bằng cách sử dụng Edge API hoặc giao diện người dùng Edge.
Hầu hết các ví dụ bên dưới đều sử dụng Edge API. Cách truy cập vào giao diện người dùng để tạo, sửa đổi và xoá máy chủ ảo trong giao diện người dùng Edge:
- Đăng nhập vào apigee.com/edge
Khách hàng Edge for Private Cloud sử dụng
http://ms-ip:9000
(tại chỗ), trong đó ms-ip là địa chỉ IP hoặc tên DNS của nút Máy chủ quản lý. - Chọn Quản trị > Máy chủ ảo trong thanh điều hướng bên trái.
- Chọn môi trường, chẳng hạn như prod hoặc test.
Các máy chủ ảo được xác định cho môi trường sẽ hiển thị. - Chọn + Virtual Host (Máy chủ ảo) để tạo máy chủ ảo hoặc chọn tên của máy chủ ảo hiện có để chỉnh sửa.
Tạo máy chủ ảo cho HTTP
Khách hàng Edge for Private Cloud có thể tạo máy chủ lưu trữ ảo bằng HTTP.
Để tạo một máy chủ ảo không hỗ trợ TLS, hãy tạo một đối tượng XML xác định máy chủ ảo. Ví dụ: đối tượng XML sau đây xác định một máy chủ ảo sử dụng giao thức HTTP:
<VirtualHost name="myVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Interfaces/> <Port>80</Port> </VirtualHost>
Trong định nghĩa này, bạn:
- Chỉ định tên là myVHost. Sử dụng tên để tham chiếu máy chủ ảo trong proxy API hoặc trong lệnh gọi API.
- Chỉ định bí danh máy chủ lưu trữ là api.myCompany.com. Đây là miền công khai dùng để truy cập vào các API của bạn theo định nghĩa DNS và bản ghi CNAME.
- Chỉ định số cổng là 80. Nếu bạn bỏ qua, theo mặc định, cổng sẽ được đặt thành 443.
Bạn có thể đặt thêm các thuộc tính trong máy chủ ảo. Để tham khảo tất cả các thuộc tính, hãy xem nội dung Tham khảo thuộc tính máy chủ lưu trữ ảo.
Nếu bạn có bất kỳ proxy API nào hiện có, hãy thêm máy chủ ảo vào phần tử <HTTPConnection>
trong Điểm cuối proxy. Máy chủ ảo được thêm tự động vào tất cả proxy API mới.
Xem phần Định cấu hình proxy API để sử dụng máy chủ ảo.
Nếu tạo một proxy API mới không thể truy cập được qua một máy chủ ảo cụ thể, thì bạn phải chỉnh sửa proxy API để xoá máy chủ ảo đó khỏi ProxyEndpoint.
Sau đó, bạn có thể truy cập vào proxy API thông qua máy chủ ảo này bằng cách đưa ra yêu cầu đến:
http://api.myCompany.com/proxy-base-path/resource-path https://api.myCompany.com/proxy-base-path/resource-path
Tạo máy chủ ảo bằng cách sử dụng API Tạo máy chủ ảo:
curl -X POST -H "Content-Type:application/xml" \ http://ms-IP:8080/v1/o/org_name/environments/env_name/virtualhosts \ -d '<VirtualHost name="myVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Interfaces/> <Port>80</Port> </VirtualHost>' \ -u sysAdminEmail:password
Tạo máy chủ ảo cho TLS một chiều
Đối tượng XML sau đây xác định một máy chủ ảo cho TLS một chiều:
<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo> </VirtualHost>
Trong định nghĩa này, bạn bật TLS bằng cách đặt phần tử <Enable>
thành true và sử dụng phần tử <KeyStore>
và <KeyAliase>
để chỉ định kho khoá và bí danh khoá mà kết nối TLS sử dụng.
Hãy xem phần TLS/SSL để biết thêm thông tin về cách sử dụng TLS.
Quyết định cách chỉ định tên kho khoá và kho tin cậy trong máy chủ ảo
Khi định cấu hình máy chủ ảo để hỗ trợ TLS, bạn chỉ định một kho khoá bằng cách sử dụng tham chiếu. Tham chiếu là một biến chứa tên của kho khoá hoặc kho tin cậy, thay vì chỉ định trực tiếp tên của kho khoá hoặc kho tin cậy, như minh hoạ dưới đây:
<SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo>
Ưu điểm của việc sử dụng tệp tham chiếu là bạn có thể thay đổi giá trị của tệp tham chiếu để thay đổi kho khoá mà máy chủ ảo sử dụng, thường là do chứng chỉ trong kho khoá hiện tại sắp hết hạn trong thời gian sắp tới. Bạn không cần phải khởi động lại Bộ định tuyến cạnh khi thay đổi giá trị của tệp tham chiếu. Hãy xem phần Xử lý tệp tham chiếu để biết thêm thông tin về cách tạo và sửa đổi tệp tham chiếu.
Bạn chỉ có thể sử dụng tham chiếu đến kho khoá và kho tin cậy; bạn không thể sử dụng tham chiếu đến bí danh. Khi bạn thay đổi tệp tham chiếu đến kho khoá, hãy đảm bảo rằng tên bí danh của chứng chỉ giống với tên trong kho khoá cũ.
Các quy định hạn chế trong việc sử dụng tệp tham chiếu đến kho khoá và kho tin cậy
Bạn phải tính đến quy định hạn chế sau đây khi sử dụng các tệp tham chiếu đến kho khoá và kho tin cậy:
- Bạn chỉ có thể sử dụng các tệp tham chiếu kho khoá và kho tin cậy trong máy chủ lưu trữ ảo nếu bạn hỗ trợ SNI và chấm dứt SSL trên Trình định tuyến Apigee.
- Nếu có trình cân bằng tải phía trước Trình định tuyến Apigee và bạn chấm dứt TLS trên trình cân bằng tải, thì bạn không thể sử dụng các tệp tham chiếu kho khoá và kho lưu trữ đáng tin cậy trong máy chủ ảo.
Tạo máy chủ lưu trữ ảo cho TLS hai chiều
Để bật TLS hai chiều, hãy đặt phần tử <ClientAuthEnabled>
thành true
và chỉ định kho lưu trữ tin cậy bằng cách sử dụng tham chiếu với phần tử <TrustStore>
. Kho lưu trữ đáng tin cậy chứa nhà phát hành chứng chỉ của ứng dụng và chuỗi CA của chứng chỉ (bắt buộc). Máy khách cũng phải được định cấu hình chính xác cho TLS hai chiều.
Để tạo máy chủ ảo cho TLS hai chiều, hãy tạo một đối tượng XML xác định máy chủ ảo:
<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>true</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> <TrustStore>ref://myTestTruststoreRef</TrustStore> </SSLInfo> </VirtualHost>
Trong định nghĩa này, bạn:
- Bật TLS hai chiều bằng cách đặt
<ClientAuthEnabled>
thành true. - Chỉ định tham chiếu đến kho lưu trữ tin cậy bằng phần tử
<TrustStore>
. Kho lưu trữ đáng tin cậy chứa nhà phát hành chứng chỉ của ứng dụng và chuỗi CA của chứng chỉ (bắt buộc).
Hãy xem phần TLS/SSL để biết thêm thông tin về cách sử dụng TLS.
Sửa đổi máy chủ ảo
Khách hàng Cloud có tài khoản trả phí và tất cả khách hàng Edge for Private Cloud đều có thể sử dụng API Cập nhật máy chủ ảo để cập nhật máy chủ ảo. API này cho phép bạn đặt tất cả các thuộc tính cho máy chủ lưu trữ ảo được mô tả tại Tài liệu tham khảo về thuộc tính máy chủ lưu trữ ảo.
Cập nhật máy chủ ảo bằng cách sử dụng API Cập nhật máy chủ ảo. Khi sử dụng API, bạn phải chỉ định định nghĩa đầy đủ của máy chủ ảo trong phần nội dung yêu cầu, chứ không chỉ các phần tử mà bạn muốn thay đổi.
Trong ví dụ này, bạn đặt giá trị của thuộc tính proxy_read_timeout
:
curl -X PUT -H "Content-Type:application/xml" \ https://api.enterprise.apigee.com/v1/o/org_name/e/env_name/virtualhosts/vhost_name \ -d '<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo> <Properties> <Property name="proxy_read_timeout">50</Property> </Properties> </VirtualHost>' \ -u orgAdminEmail:password
Xoá máy chủ lưu trữ ảo
Trước khi có thể xoá máy chủ ảo khỏi một môi trường, bạn phải cập nhật mọi proxy API tham chiếu đến máy chủ ảo để xoá tham chiếu đó. Xem phần Định cấu hình proxy API để sử dụng máy chủ lưu trữ ảo.
Xoá máy chủ ảo bằng cách sử dụng API Xoá máy chủ ảo:
curl -X DELETE \ https://api.enterprise.apigee.com/v1/o/org_name/e/env_name/virtualhosts/vhost_name \ -u orgAdminEmail:password
Xem thông tin về máy chủ lưu trữ ảo
Xem thông tin về máy chủ ảo được xác định trong một môi trường, như mô tả dưới đây.
Edge
Cách xem thông tin về máy chủ lưu trữ ảo bằng giao diện người dùng Edge:
- Đăng nhập vào apigee.com/edge.
Khách hàng Edge for Private Cloud sử dụng
http://ms-ip:9000
(tại chỗ), trong đó ms-ip là địa chỉ IP hoặc tên DNS của nút Máy chủ quản lý. - Chọn Quản trị > Máy chủ ảo trong thanh điều hướng bên trái.
- Chọn môi trường, chẳng hạn như prod hoặc test.
Các máy chủ ảo được xác định cho môi trường sẽ xuất hiện. Nếu máy chủ ảo được định cấu hình để sử dụng kho khoá hoặc kho tin cậy, hãy nhấp vào Hiện để xem thêm thông tin.
Nếu máy chủ ảo được định cấu hình để sử dụng TLS/SSL, thì biểu tượng khoá sẽ xuất hiện bên cạnh tên của máy chủ ảo. Điều đó có nghĩa là chứng chỉ TLS/SSL, khoá và chuỗi chứng chỉ đã được tải lên Edge và liên kết với máy chủ ảo. Cách xem thông tin về các chứng chỉ hiện có:
- Chọn Quản trị > Môi trường > Kho khoá TLS trong thanh điều hướng bên trái.
- Chọn Môi trường (thường là
prod
hoặctest
). - Mở rộng kho khoá để xem chứng chỉ.
Edge phiên bản cũ (Đám mây riêng)
Cách xem thông tin về máy chủ lưu trữ ảo bằng giao diện người dùng Edge cũ:
- Đăng nhập vào
http://ms-ip:9000
, trong đó ms-ip là địa chỉ IP hoặc tên DNS của nút Máy chủ quản lý. - Chọn Quản trị > Máy chủ ảo trong thanh điều hướng bên trái.
- Chọn môi trường, chẳng hạn như prod hoặc test.
- Nhấp vào thẻ Virtual Hosts (Máy chủ ảo).
Các máy chủ ảo được xác định cho môi trường sẽ xuất hiện. Nếu máy chủ ảo được định cấu hình để sử dụng kho khoá hoặc kho tin cậy, hãy nhấp vào Hiện để xem thêm thông tin.
Nếu máy chủ ảo được định cấu hình để sử dụng TLS/SSL, thì biểu tượng khoá sẽ xuất hiện bên cạnh tên của máy chủ ảo. Điều đó có nghĩa là chứng chỉ TLS/SSL, khoá và chuỗi chứng chỉ đã được tải lên Edge và liên kết với máy chủ ảo. Cách xem thông tin về các chứng chỉ hiện có:
- Chọn Quản trị > Chứng chỉ TLS trong thanh điều hướng trên cùng.
- Chọn Môi trường (thường là
prod
hoặctest
). - Mở rộng kho khoá để xem chứng chỉ.
Xem máy chủ ảo bằng Edge API
Bạn cũng có thể sử dụng các API Edge để xem thông tin về máy chủ lưu trữ ảo. Ví dụ: API List Virtual Hosts (Liệt kê máy chủ lưu trữ ảo) trả về danh sách tất cả máy chủ lưu trữ ảo:
curl -X GET -H "accept:application/xml" \ https://api.enterprise.apigee.com/v1/o/org_name/environments/env_name/virtualhosts \ -u orgAdminEmail:pWord
Trong đó, orgAdminEmail:pWord là tên người dùng và mật khẩu của quản trị viên tổ chức, còn org_name/env_name chỉ định tổ chức và môi trường chứa máy chủ lưu trữ ảo. Câu trả lời mẫu:
[ "default", "secure" ]
Để xem thông tin về một máy chủ lưu trữ ảo cụ thể, hãy sử dụng API Get Virtual Host (Lấy máy chủ lưu trữ ảo):
curl -X GET -H "accept:application/xml" \ https://api.enterprise.apigee.com/v1/o/org_name/environments/env_name/virtualhosts/vhost_name \ -u orgAdminEmail:pWord
Trong đó, vhost_name là tên của máy chủ lưu trữ ảo. Ví dụ: bạn có thể chỉ định vhost_name là "secure" (an toàn) để xem cấu hình của máy chủ ảo an toàn mặc định do Apigee tạo:
<VirtualHost name="secure"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <Properties/> <Interfaces/> <RetryOptions/> <SSLInfo> <ClientAuthEnabled>false</ClientAuthEnabled> <Enabled>true</Enabled> <KeyAlias>freetrial</KeyAlias> <KeyStore>ref://freetrial</KeyStore> <IgnoreValidationErrors>false</IgnoreValidationErrors> </SSLInfo> </VirtualHost>
Định cấu hình proxy API để sử dụng máy chủ ảo
Khi bạn tạo một proxy API mới, Edge sẽ tự động định cấu hình proxy đó để sử dụng tất cả máy chủ lưu trữ ảo có sẵn trong tổ chức. Yêu cầu gửi đến proxy API thông qua máy chủ ảo sử dụng biểu mẫu:
https://host-alias/proxy-base-path/resource-path
Trong trường hợp:
- host-alias thường là tên DNS của máy chủ ảo.
- proxy-base-path được xác định khi bạn tạo một proxy API và là duy nhất cho từng proxy API.
- resource-path đường dẫn đến tài nguyên có thể truy cập được thông qua proxy API.
Kiểm soát máy chủ ảo mà proxy API sử dụng
Trong cấu hình XML của proxy API, bạn sử dụng thẻ virtualhost
để chỉ định tên của máy chủ ảo được liên kết với proxy API:
<HTTPProxyConnection> <BasePath>/v1/my/proxy/basepath</BasePath> <VirtualHost>secure</VirtualHost> <VirtualHost>default</VirtualHost> </HTTPProxyConnection>
Ví dụ: <VirtualHost>secure</VirtualHost>
có nghĩa là ứng dụng khách có thể gọi proxy API bằng cách sử dụng bí danh máy chủ của máy chủ ảo "an toàn".
Thông thường, bạn sẽ sửa đổi máy chủ ảo được liên kết với proxy API khi:
- Bạn tạo một máy chủ ảo mới và có các proxy API hiện có. Bạn phải chỉnh sửa mọi proxy API hiện có để thêm máy chủ ảo mới.
- Bạn tạo một proxy API mới không thể truy cập được qua một máy chủ ảo cụ thể. Bạn phải chỉnh sửa proxy API để xoá máy chủ ảo đó khỏi định nghĩa của proxy.
Cách sửa đổi máy chủ ảo được liên kết với proxy API:
-
Truy cập vào trình chỉnh sửa proxy API như mô tả bên dưới.
Edge
Cách truy cập vào trình chỉnh sửa proxy API bằng giao diện người dùng Edge:
- Đăng nhập vào apigee.com/edge.
Khách hàng Edge for Private Cloud sử dụng
http://ms-ip:9000
(tại chỗ), trong đó ms-ip là địa chỉ IP hoặc tên DNS của nút Máy chủ quản lý. - Chọn Develop (Phát triển) > API proxies (Proxy API) trong thanh điều hướng bên trái.
- Chọn proxy API mà bạn muốn chỉnh sửa trong danh sách.
Edge phiên bản cũ (Đám mây riêng)
Cách truy cập trình chỉnh sửa proxy API bằng giao diện người dùng Edge cũ:
- Đăng nhập vào
http://ms-ip:9000
, trong đó ms-ip là địa chỉ IP hoặc tên DNS của nút Máy chủ quản lý. - Chọn API > Proxy API trong thanh điều hướng trên cùng.
- Chọn proxy API mà bạn muốn chỉnh sửa trong danh sách.
- Đăng nhập vào apigee.com/edge.
- Nhấp vào thẻ Phát triển.
- Trong phần Proxy Endpoints (Điểm cuối của proxy), hãy chọn default (mặc định).
- Trong khu vực mã:
- Xoá mọi phần tử
<VirtualHost>
cho máy chủ ảo không được proxy API hỗ trợ. - Thêm một phần tử
<VirtualHost>
mới có tên là máy chủ ảo mới. Ví dụ: nếu máy chủ ảo mới có tên là MyVirtualHost, hãy thêm thẻ sau:
<HTTPProxyConnection> <BasePath>/v1/my/proxy/basepath</BasePath> <VirtualHost>default</VirtualHost> <VirtualHost>secure</VirtualHost> <VirtualHost>MyVirtualHost</VirtualHost> </HTTPProxyConnection>
- Xoá mọi phần tử
- Lưu proxy API. Nếu bạn đã triển khai proxy API, thì việc lưu proxy sẽ triển khai lại proxy đó bằng chế độ cài đặt mới.
Đặt URL cơ sở hiển thị trên giao diện người dùng Edge cho proxy API
Giao diện người dùng Edge hiển thị URL của proxy API dựa trên chế độ cài đặt trong máy chủ ảo tương ứng với vị trí triển khai proxy. Màn hình này có thể bao gồm số cổng Bộ định tuyến của máy chủ ảo.
Trong hầu hết các trường hợp, URL hiển thị trong giao diện người dùng Edge là URL chính xác để tạo yêu cầu bên ngoài cho proxy. Tuy nhiên, đối với một số cấu hình, URL hiển thị không chính xác. Ví dụ: bất kỳ cấu hình nào sau đây đều có thể khiến URL hiển thị không tương ứng với URL thực tế dùng để thực hiện các yêu cầu bên ngoài cho proxy:
- Quá trình chấm dứt SSL diễn ra tại trình cân bằng tải
- Việc liên kết cổng xảy ra giữa trình cân bằng tải và Trình định tuyến Apigee
- Trình cân bằng tải được định cấu hình bằng tính năng ghi đè đường dẫn
Edge hỗ trợ một thuộc tính trên máy chủ ảo có tên là <BaseUrl>
, cho phép bạn ghi đè URL hiển thị trên giao diện người dùng Edge. Dưới đây là ví dụ cho thấy đối tượng máy chủ ảo có thuộc tính <BaseUrl>
.
Trong ví dụ này, giá trị "http://myCo.com" xuất hiện trong giao diện người dùng Edge:
<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <BaseUrl>http://myCo.com</BaseUrl> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo> </VirtualHost>
Xin lưu ý rằng giá trị của <BaseUrl>
phải bao gồm giao thức (tức là "http://" hoặc "https://").
Nếu bạn không đặt <BaseUrl>
, thì URL mặc định do giao diện người dùng Edge hiển thị sẽ xuất hiện dưới dạng: "api.myCompany.com", trong khi bí danh máy chủ lưu trữ thực tế là "http://myCo.com".