Локальная установка Edge Private Cloud или экземпляр Edge состоит из нескольких компонентов Edge, установленных на наборе узлов сервера. На следующем изображении показаны взаимосвязи между планетой, регионами, подами, организациями, средами и виртуальными хостами, из которых состоит экземпляр Edge:

В таблице ниже описаны эти связи.
| Компонент | Содержит | Связано с | По умолчанию |
|---|---|---|---|
| Planet | Один или несколько регионов | – | |
| Регион | Один или несколько пакетов | "dc-1" | |
| Pod | Один или несколько компонентов Edge. | "central" "gateway" "analytics" |
|
| Организация | к одной или нескольким средам; | Один или несколько подов, содержащих Message Processor, и пользователь, действующий как администратор организации. | Нет |
| Среда | Один или несколько виртуальных хостов. | Один или несколько процессоров сообщений в поде, связанном с родительской организацией. | Нет |
| Виртуальный хост | Один или несколько псевдонимов хоста. | Нет |
О планетах
Планета представляет собой всю аппаратную и программную среду Edge и может содержать один или несколько регионов. В Edge планета – это логическая группировка регионов. Вы не создаете и не настраиваете планету явным образом в процессе установки Edge.
О регионах
Регион – это группа из одного или нескольких подов. По умолчанию при установке Edge установщик создает один регион с именем dc-1, содержащий три pod-модуля, как показано в следующей таблице:
| Регион | Pods in the region |
|---|---|
| "dc-1" | "gateway", "central", "analytics" |
На изображении ниже показаны регионы по умолчанию.

На этом изображении показано, как балансировщик нагрузки направляет трафик на шлюз. Pod-модуль gateway содержит компоненты Edge Router и Message Processor, которые обрабатывают запросы к API. Если вы не определяете несколько центров обработки данных, вам не нужно создавать дополнительные регионы.
В более сложных случаях можно создать два или более регионов. Одна из причин создания нескольких регионов – географическая организация машин, которая минимизирует время передачи данных по сети. В этом случае вы размещаете конечные точки API так, чтобы они были географически близки к потребителям этих API.
В Edge каждый регион называется центром обработки данных. Например, центр обработки данных на востоке США может обрабатывать запросы из Бостона, а центр в Сингапуре – запросы с устройств и компьютеров в Азии.
Например, на изображении ниже показаны два региона, соответствующие двум центрам обработки данных:

О пакетах
Pod – это группа, состоящая из одного или нескольких компонентов Edge и хранилищ данных Cassandra. Компоненты Edge можно установить на одном узле, но чаще их устанавливают на разных узлах. Хранилище данных Cassandra – это репозиторий данных, используемый компонентами Edge в поде.
По умолчанию при установке Edge установщик создает три pod-модуля и связывает с каждым из них следующие компоненты Edge и хранилища данных Cassandra:
| Pod | Компоненты Edge | Хранилища данных Cassandra |
|
|---|---|---|---|
| "gateway" | Router, Message Processor | cache-datastore counter-datastore dc-datastore |
keyvaluemap-datastore kms-datastore |
| "central" | Management Server, Zookeeper, LDAP, UI, 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 |
Компоненты Edge и хранилища данных Cassandra в поде gateway необходимы для обработки API. Для обработки запросов к API эти компоненты и хранилища данных должны быть запущены и работать. Компоненты и хранилища данных в модулях central и analytics не требуются для обработки API, но добавляют в Edge дополнительные функции.
На изображении ниже показаны компоненты каждого блока.

Вы можете добавить дополнительные поды Message Processor и Router к трем, созданным по умолчанию. Вы также можете добавить дополнительные компоненты Edge в существующий pod. Например, вы можете добавить дополнительные маршрутизаторы и процессоры сообщений в pod-сегмент шлюза, чтобы справиться с возросшей нагрузкой.
Обратите внимание, что pod-модуль gateway содержит компоненты Edge Router и Message Processor. Маршрутизаторы отправляют запросы только обработчикам сообщений в том же поде, а не в других подах.
Чтобы посмотреть сведения о регистрации сервера в конце установки для каждого pod-файла, используйте следующий вызов API: Это полезный инструмент мониторинга.
curl -u adminEmail:pword http://ms_IP:8080/v1/servers?pod=podName
где ms_IP – IP-адрес или DNS-имя сервера управления, а podName – одно из следующих значений:
gatewaycentralanalytics
Например, для pod-модуля gateway:
curl -u adminEmail:pword http://ms_IP:8080/v1/servers?pod=gateway
Apigee возвращает выходные данные, похожие на следующие:
[ { "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" } ]
Атрибут type указывает тип компонента. Обратите внимание, что в нем перечислены хранилища данных Cassandra, зарегистрированные в pod-модуле. Хотя узлы Cassandra устанавливаются в pod-модуле gateway, вы увидите, что хранилища данных Cassandra зарегистрированы во всех pod-модулях.
Об организациях
Организация – это контейнер для всех объектов в аккаунте Apigee, включая API, продукты API, приложения и разработчиков. Организация связана с одним или несколькими модулями, каждый из которых должен содержать один или несколько процессоров сообщений.
В локальной установке Edge Private Cloud по умолчанию нет организаций. При создании организации вы указываете два типа информации:
- Пользователь, который выполняет функции администратора организации. Этот пользователь может добавлять в организацию других пользователей и назначать им роли.
- Pod-модуль gateway, содержащий Message Processor.
В организации может быть одна или несколько сред. При стандартной установке Edge вам будет предложено создать две среды: test и prod. Однако при необходимости вы можете создать дополнительные среды, например "промежуточная", "эксперименты" и т. д.
Организация предоставляет область действия для некоторых возможностей Apigee. Например, данные карты "ключ-значение" (KVM) доступны на уровне организации, то есть из всех сред. Другие возможности, например кеширование, ограничены определенной средой. Аналитические данные Apigee разделяются по комбинации организации и среды.
Ниже показаны основные объекты организации, включая те, которые определены глобально в организации, и те, которые определены специально для среды:

О средах
Среда – это контекст выполнения для прокси-серверов API в организации. Чтобы получить доступ к прокси-серверу API, его необходимо развернуть в среде. Прокси-сервер API можно развернуть в одной или нескольких средах.
В организации может быть несколько сред. Например, в организации можно определить среды dev, test и prod.
При создании среды вы связываете ее с одним или несколькими процессорами сообщений. Среда – это именованный набор процессоров сообщений, на которых работают прокси-серверы API. Каждая среда может быть связана с одними и теми же или разными процессорами сообщений.
Чтобы создать среду, укажите два параметра:
- Организация, в которой находится среда.
- Процессоры сообщений, которые обрабатывают запросы прокси-сервера API к среде. Эти Message Processor должны находиться в модуле, связанном с родительской организацией среды.
По умолчанию при создании среды Edge связывает с ней все доступные обработчики сообщений в поде gateway. Вы также можете указать подмножество доступных процессоров сообщений, чтобы разные процессоры обрабатывали запросы к разным средам.
Процессор сообщений может быть связан с несколькими средами. Например, в вашей установке Edge есть два Message Processor: A и B. Затем вы создаете в организации три среды: dev, test и prod.
- Для среды dev вы связываете Message Processor A, поскольку не ожидаете большого объема трафика.
- Для среды test вы связываете Message Processor B, поскольку не ожидаете большого объема трафика.
- Для среды prod вы связываете оба процессора сообщений, чтобы обрабатывать объем трафика на уровне рабочей среды.
Процессоры сообщений, назначенные среде, могут быть из одного или нескольких подов, охватывающих несколько регионов и центров обработки данных. Например, вы определяете среду global в своей организации, которая включает Message Processor из трех регионов, то есть трех разных центров обработки данных: США, Японии и Германии.
Развертывание прокси-сервера API в глобальной среде приводит к тому, что прокси-сервер API запускается на процессорах сообщений во всех трех центрах обработки данных. Трафик API, поступающий на маршрутизатор в любом из этих центров обработки данных, будет направляться только в Message Processor в этом центре обработки данных, поскольку маршрутизаторы направляют трафик только в Message Processor в том же поде.
О виртуальных хостах
Виртуальный хост определяет порт на маршрутизаторе Edge, на котором размещен прокси-сервер API, и, как следствие, URL, который приложения используют для доступа к прокси-серверу API. В каждой среде должен быть определен хотя бы один виртуальный хост.
Убедитесь, что номер порта, указанный виртуальным хостом, открыт на узле маршрутизатора. После этого вы сможете получить доступ к прокси-серверу API, отправив запрос по следующим URL:
http://routerIP:port/proxy-base-path/resource-name https://routerIP:port/proxy-base-path/resource-name
Где:
httpилиhttps. Если виртуальный хост настроен на поддержку TLS/SSL, используйте HTTPS. Если виртуальный хост не поддерживает TLS/SSL, используйте HTTP.- routerIP:port – IP-адрес и номер порта виртуального хоста.
- proxy-base-path и resource-name определяются при создании прокси-сервера API.
Обычно вы не публикуете свои API для клиентов с IP-адресом и номером порта. Вместо этого вы определяете запись DNS для маршрутизатора и порта. Пример:
http://myAPI.myCo.com/proxy-base-path/resource-name https://myAPI.myCo.com/proxy-base-path/resource-name
Также необходимо создать псевдоним хоста для виртуального хоста, соответствующий доменному имени записи DNS. В примере выше псевдоним хоста – myAPI.myCo.com. Если у вас нет записи DNS, укажите в качестве псевдонима хоста IP-адрес маршрутизатора и порт виртуального хоста, например routerIP:port.
Подробнее о виртуальных хостах…
Создание первой организации, среды и виртуального хоста
После завершения установки Edge вашим первым действием обычно является создание организации, среды и виртуального хоста в процессе «регистрации». Чтобы выполнить регистрацию, запустите следующую команду на узле сервера управления Edge:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile
В качестве входных данных эта команда принимает файл конфигурации, в котором определены пользователь, организация, среда и виртуальный хост.
Например, вы создаете:
- Пользователь, которого вы назначите администратором организации.
- Организация
example - Среда в организации с названием
prod, которая связана со всеми Message Processor в поде gateway. - Виртуальный хост в среде с названием
default, который разрешает доступ по протоколу HTTP через порт 9001. - Псевдоним виртуального хоста.
После запуска этого скрипта вы можете получить доступ к своим API, используя URL в следующем формате:
http://routerIP:9001/proxy-base-path/resource-name
Позже вы сможете добавить любое количество организаций, сред и виртуальных хостов.
Подробнее о том, как зарегистрировать организацию…