Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X. информация
Размещенные цели позволяют запускать приложения Node.js в собственной среде выполнения, размещенной на сервере Apigee. Цель Hosted Targets проста: позволить вам развертывать приложения в собственной, безопасной, масштабируемой и изолированной среде, где прокси-серверы Edge API могут вызывать их как целевые службы.
Как показано на следующем рисунке, прокси-сервер Edge API вызывает приложение Node.js, которое развернуто в среде размещенных целевых объектов. Обратите внимание, что среда размещенных целевых объектов находится в пределах организации Apigee: среда.
Чтобы прокси-сервер Edge API мог взаимодействовать с правильно созданным и развернутым приложением Hosted Targets, требуется простая настройка целевой конечной точки прокси-сервера. Чтобы начать, перейдите к руководствам по размещенным целям .
Какие среды выполнения приложений поддерживают Hosted Targets?
В настоящее время вы можете развертывать приложения Node.js только на размещенных целевых объектах.
Установка размещенных целей
Размещенные цели доступны во всех организациях Edge Public Cloud. Для использования Hosted Targets вам не нужно ничего устанавливать.
Проверка включения размещенных целевых объектов
Если вы хотите убедиться, что в вашей организации включены размещенные целевые объекты, получите сведения о своей организации и убедитесь, что для свойства features.isEdgeFunctionsEnabled
установлено значение true. Свойство доступно только для чтения.
Например:
https://api.enterprise.apigee.com/v1/organizations/myorg
{ "createdAt":1507572884047, "createdBy":"jdoe@apigee.com", "displayName":"myorg", "environments":[ "prod", "dev", "test", "portal" ], "lastModifiedAt":1507578673194, "lastModifiedBy":"jdoe@apigee.com", "name":"jdoe", "properties":{ "property":[ { "name":"features.isSmbOrganization", "value":"false" }, { "name":"self.service.virtual.host.enabled", "value":"true" }, { "name":"features.isCpsEnabled", "value":"true" }, { "name":"features.isEdgeFunctionsEnabled", "value":"true" } ] }, "type":"paid" }
Что нужно знать о размещенных целях
Hosted Targets позволяет приложениям Node.js работать в собственной среде, которая не зависит от какой-либо технологии выполнения, специфичной для Apigee. Вы можете отлаживать и тестировать свое приложение локально перед его развертыванием и быть уверенными, что развернутая версия будет работать точно так же, как и локально. Во время развертывания вы можете выбрать любую версию среды выполнения приложения для запуска вашего приложения в размещенных целевых объектах. Например, вы можете специально выбрать запуск приложения Node.js в среде v8.10.0.
Пределы
Ограничения на использование размещенных целей см. в разделе Ограничения продукта Apigee .
Основные шаги, которые необходимо выполнить
Если вы знакомы с разработкой Edge-прокси, вам нужно всего лишь изучить несколько простых шагов для успешного использования Hosted Targets. По сути, вы создаете, развертываете и управляете прокси-серверами Edge для размещенных целей так же, как и для любого другого прокси-сервера Apigee Edge .
Чтобы использовать размещенные цели, вам необходимо выполнить следующие задачи. В учебных пособиях подробно рассматривается каждая из этих задач.
- Разработайте и протестируйте приложение Node.js локально.
- Создайте файл манифеста в корневом каталоге проекта приложения. Манифест — это файл YAML, в котором указана информация, необходимая для сборки и развертывания приложения.
- Добавьте свое приложение к прокси-серверу Edge в качестве типа размещенного ресурса.
- В целевой конечной точке прокси добавьте пустой тег
<HostedTarget/>
. Этот тег сообщает Edge о необходимости развернуть приложение Node.js в среде размещенных целевых объектов. Например:
<?xml version="1.0" encoding="UTF-8"?> <TargetEndpoint name="default"> <PreFlow name="PreFlow"> <Request /> <Response /> </PreFlow> <PostFlow name="PostFlow"> <Request /> <Response /> </PostFlow> <Flows /> <HostedTarget /> </TargetEndpoint>
Область применения приложений Hosted Targets
Приложения Hosted Targets привязаны к пограничной среде организации. Эта область такая же, как и для любого прокси-сервера Edge.
Могут ли приложения Hosted Targets получать доступ к данным прокси?
Приложения Hosted Targets в настоящее время не имеют доступа к среде выполнения прокси. Это означает, что вы не можете получить доступ к переменным потока, кэшам и другим объектам непосредственно из приложений Hosted Targets.
Благодаря встроенному Node.js (традиционная поддержка Node.js на основе Trireme в Edge) вы можете использовать доступ к API для доступа к переменным потока и другим объектам в Edge. Однако Hosted Targets не поддерживает модуль apigee-access
для развертываний Node.js. См. также Можно ли обойти отсутствие доступа к Apigee?
Миграция существующего кода приложения в Hosted Targets
В настоящее время не существует автоматизированного пути перехода от традиционного встроенного приложения Node.js на основе Trireme к размещенным целям. Однако вы можете преобразовать существующий код приложения в размещенные целевые объекты вручную. Пример см. в разделе Миграция существующего прокси-сервера Node.js на прокси-сервер Hosted Targets .