Thiết lập máy chủ ảo

Máy chủ ảo trên Edge xác định các miền và cổng Bộ định tuyến Edge mà trên đó proxy API hiển thị, và theo tiện ích là URL mà các ứng dụng dùng để truy cập proxy API. Máy chủ ảo cũng xác định xem proxy API được truy cập bằng giao thức HTTP hay giao thức HTTPS đã mã hoá.

Trong quá trình làm quen với Edge, bạn phải tạo một tổ chức, môi trường và máy chủ ảo. Edge cung cấp lệnh setup-org để giúp quá trình này dễ dàng hơn cho người dùng mới.

Khi tạo máy chủ ảo, bạn phải chỉ định thông tin sau:

  • Tên của máy chủ ảo mà bạn dùng để tham chiếu đến máy chủ đó trong các proxy API của mình.
  • Cổng trên Bộ định tuyến cho máy chủ ảo. Thông thường, các cổng này bắt đầu từ 9001 và tăng thêm 1 cổng đối với mỗi máy chủ ảo mới.
  • Bí danh máy chủ lưu trữ của máy chủ ảo. Thường là tên DNS của máy chủ ảo.

Ví dụ: trong tệp cấu hình được truyền đến lệnh setup-org, bạn có thể chỉ định thông tin này là:

# Specify virtual host information
VHOST_PORT=9001
VHOST_NAME=default

# If you have a DNS entry for the virtual host
VHOST_ALIAS=myapis.apigee.net

Bộ định tuyến cạnh so sánh tiêu đề Host của yêu cầu đến với danh sách các bí danh của máy chủ hiện có trong quá trình xác định proxy API xử lý yêu cầu. Khi gửi yêu cầu thông qua một máy chủ ảo, hãy chỉ định một tên miền khớp với bí danh của máy chủ ảo hoặc chỉ định địa chỉ IP của Bộ định tuyến và tiêu đề Host chứa bí danh của máy chủ.

Ví dụ: nếu bạn đã tạo một máy chủ ảo có bí danh của máy chủ là myapis.apigee.net trên cổng 9001, thì yêu cầu cURL tới một API thông qua máy chủ ảo đó có thể sử dụng một trong các biểu mẫu sau:

  • Nếu bạn có mục DNS cho myapis.apigee.net:
    curl http://myapis.apigee.net:9001/proxy-base-path/resource-path
  • Nếu bạn không có mục DNS cho myapis.apigee.net, hãy làm như sau:
    curl http://routerIP:9001/proxy-base-path/resource-path -H 'Host: myapis.apigee.net'

    Trong biểu mẫu này, bạn chỉ định địa chỉ IP của Bộ định tuyến và truyền bí danh của máy chủ lưu trữ trong tiêu đề Host.

Các tuỳ chọn khi bạn không có mục nhập DNS cho máy chủ ảo

Khi bạn không có mục nhập DNS, có một lựa chọn là đặt bí danh của 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. Ví dụ:

VHOST_ALIAS=192.168.1.31:9001

Sau đó, bạn tạo một lệnh curl trong biểu mẫu bên dưới:

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

Tuỳ chọn này được ưu tiên vì hoạt động hiệu quả với giao diện người dùng Edge.

Nếu bạn có nhiều Bộ định tuyến, hãy thêm bí danh của máy chủ cho mỗi Bộ định tuyến, chỉ định địa chỉ IP của từng Bộ định tuyến và cổng của máy chủ ảo:

# Specify the IP and port of each router as a space-separated list enclosed in quotes:
# VHOST_ALIAS="192.168.1.31:9001 192.168.1.32:9001"

Ngoài ra, bạn có thể đặt bí danh của máy chủ lưu trữ thành một giá trị, chẳng hạn như temp.hostalias.com. Sau đó, bạn phải chuyển tiêu đề Host trên mọi yêu cầu:

curl -v http://routerIP:9001/proxy-base-path/resource-path -H 'host: temp.hostalias.com'

Hoặc thêm bí danh của máy chủ lưu trữ vào tệp /etc/hosts. Ví dụ: thêm dòng này vào /etc/hosts:

192.168.1.31   temp.hostalias.com

Sau đó, bạn có thể gửi yêu cầu như thể bạn có mục nhập DNS:

curl -v http://myapis.apigee.net:9001/proxy-base-path/resource-path