Edge для частного облака v4.18.05
Виртуальный хост в Edge определяет домены и порты Edge Router, на которых предоставляется прокси-сервер API, и, как следствие, URL-адрес, который приложения используют для доступа к прокси-серверу API. Виртуальный хост также определяет, осуществляется ли доступ к прокси-серверу API по протоколу HTTP или по зашифрованному протоколу HTTPS.
В рамках процесса адаптации Edge вам необходимо создать организацию, среду и виртуальный хост. Edge предоставляет команду setup-org
, чтобы упростить этот процесс для новых пользователей.
При создании виртуального хоста необходимо указать следующую информацию:
- Имя виртуального хоста, которое вы используете для ссылки на него в своих прокси-серверах API.
- Порт на маршрутизаторе для виртуального хоста. Обычно эти порты начинаются с 9001 и увеличиваются на единицу для каждого нового виртуального хоста.
- Псевдоним виртуального хоста. Обычно DNS-имя виртуального хоста.
Например, в файле конфигурации, переданном команде setup-org
, вы можете указать эту информацию как:
# 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
Edge Router сравнивает заголовок Host
входящего запроса со списком доступных псевдонимов хоста в рамках определения прокси-сервера API, который обрабатывает запрос. При выполнении запроса через виртуальный хост либо укажите доменное имя, соответствующее псевдониму виртуального хоста, либо укажите IP-адрес Маршрутизатора и заголовок Host
, содержащий псевдоним хоста.
Например, если вы создали виртуальный хост с псевдонимом myapis.apigee.net на порту 9001, то запрос cURL к API через этот виртуальный хост может использовать одну из следующих форм:
- Если у вас есть запись DNS для myapis.apigee.net :
curl http://myapis.apigee.net:9001/proxy-base-path/resource-path
- Если у вас нет записи DNS для myapis.apigee.net :
curl http://routerIP:9001/proxy-base-path/resource-path -H 'Host: myapis.apigee.net'
В этой форме вы указываете IP-адрес маршрутизатора и передаете псевдоним хоста в заголовке
Host
.
Варианты, когда у вас нет записи DNS для виртуального хоста
Один из вариантов, когда у вас нет записи DNS, — установить псевдоним хоста для IP-адреса маршрутизатора и порта виртуального хоста, например routerIP : port . Например:
VHOST_ALIAS=192.168.1.31:9001
Затем вы создаете команду Curl в форме ниже:
curl http://routerIP:9001/proxy-base-path/resource-path
Этот вариант предпочтителен, поскольку он хорошо работает с пользовательским интерфейсом Edge.
Если у вас несколько маршрутизаторов, добавьте псевдоним хоста для каждого маршрутизатора, указав IP-адрес каждого маршрутизатора и порт виртуального хоста:
# 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"
Альтернативно вы можете установить псевдоним хоста в значение, например temp.hostalias.com
. Затем вам необходимо передавать заголовок Host
при каждом запросе:
curl -v http://routerIP:9001/proxy-base-path/resource-path -H 'host: temp.hostalias.com'
Или добавьте псевдоним хоста в файл /etc/hosts
. Например, добавьте эту строку в /etc/hosts
:
192.168.1.31 temp.hostalias.com
Затем вы можете сделать запрос, как если бы у вас была запись DNS:
curl -v http://myapis.apigee.net:9001/proxy-base-path/resource-path