Различия между Apigee Edge и Apigee X

Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X.
информация

В этом разделе описывается, чем Apigee X (иногда называемый просто «Apigee») отличается от Apigee Edge. Эта информация предназначена для существующих клиентов Apigee Edge, которые рассматривают возможность перехода на Apigee X.

Дополнительную информацию о функциях Apigee X см. в кратком описании функций Apigee X.

В следующей таблице перечислены продукты управления API Apigee, сравниваемые в этом разделе:

Продукт Где размещено Управляется
Apigee Edge для публичного облака Облако Апигея Апигей
Apigee Edge для частного облака Частный дата-центр клиента. Клиент
Апигей Икс Google Облако Апигей
Апигей гибридный И Google Cloud, и частный центр обработки данных клиента. Apigee управляет плоскостью управления, а клиент управляет плоскостью среды выполнения.

Сравнение функций Apigee Edge и Apigee X

В следующих разделах сравниваются функции публичного/частного облака Apigee Edge с доступностью функций в Apigee X и гибридной версии.

Обратите внимание, что ограничения Apigee X также отличаются от ограничений Apigee Edge .

Краткое изложение текущих различий в функциях

В следующей таблице описаны различия на уровне функций между Apigee X (и гибридом) и Apigee Edge для платформ публичного и частного облака.

Функция Apigee Edge Поддержка Apigee X и гибрида
Изменения API-прокси

Неизменяемый при развертывании

Активные проверки работоспособности Поддерживается для внешних MIG (которые используют виртуальные машины). Не поддерживается при использовании Private Service Connect. Информацию о типах маршрутизации см. в разделе Настройка маршрутизации .
Адаптер Apigee для Istio Устарело: вместо этого мы рекомендуем использовать адаптер Apigee для Envoy .
Компании и девелоперы

Существует похожее, но не идентичное решение. См. Использование групп приложений для организации владения приложениями .

CwC (код с конфигурацией)

Планируется

Развертывания
  • Асинхронные развертывания
  • Получение статуса развертывания зависит от того, когда в последний раз плоскость выполнения «регистрировалась» на плоскости управления.
Окружающая среда
  • Поддержка групп окружения
  • Самообслуживание через пользовательский интерфейс и API Apigee.
  • Больше гибкости в топологии обслуживания
  • Модуль MP может обслуживать только одну среду.

Дополнительные сведения см. в разделе О средах и группах сред .

Размещенные цели

Пожалуйста, используйте Cloud Run или Cloud Functions.

Обработка имени поля заголовка HTTP/1.1 Преобразует имена полей заголовка HTTP/1.1 в нижний регистр при пересылке на серверную часть. В Apigee Edge регистр имен полей заголовка сохраняется.
Роли IAM для детального управления доступом на основе ролей.

Планируется

JSONPath с использованием [@.length-x]

Использование [@.length-x] в выражениях JSONPath не поддерживается в Apigee X. В спецификации JSONPath указано, что выражения зависят от базового языка сценариев. length-x — это конструкция JavaScript, а не Java, и [@.length-x] не был реализован как часть спецификации. В Apigee X выражение [@.length-x] заменяется схемой индексации ( [-x] ).

Для этого примера:

{
    "books": [
      {
        "name": "A",
      },
      {
        "name": "B",
      }
    ]
}

Ввод: $.books[@.length-1] возвращает {“name”: “B”} в Apigee Edge и возвращает [{“name”: “B”}] в Apigee X.

Хранилища ключей/доверенные хранилища

Northbound управляется как секреты Kubernetes

КВМ
  • Вы можете создавать зашифрованные KVM с ограниченной областью действия в пользовательском интерфейсе Apigee. KVM всегда зашифрованы. Вы не можете добавлять, обновлять или просматривать записи KVM в пользовательском интерфейсе.
  • Используйте private. атрибут со всеми переменными при доступе к KVM с помощью команды GET чтобы скрыть информацию KVM в сеансе отладки (трассировки). Если private. атрибут не используется, KVM все еще зашифрован; однако информация KVM будет отображаться в расшифрованном виде в сеансе отладки Trace), и никаких исключений не будет.
  • Управлять записями KVM можно с помощью API keyvaluemaps.entries или политики KeyValueMapOperations .
  • Вы можете использовать наборы свойств для тех же случаев, что и KVM. См. Использование наборов свойств .
  • Элемент <MapName> позволяет политике KeyValueMapOperations определять, какой KVM использовать динамически во время выполнения.

Дополнительные сведения о создании KVM в пользовательском интерфейсе см. в разделе Использование карт значений ключа . См. также Доступ к данным конфигурации для получения информации о том, как выбрать правильный механизм сохранения данных.

Микрошлюз Вместо этого мы рекомендуем использовать адаптер Apigee для Envoy .
Монетизация См. раздел «Различия с монетизацией».
Node.js
  • Прокси-серверы Node.js API не поддерживаются.
  • Apigee рекомендует размещать приложения Node.js в отдельных контейнерах в Kubernetes (тот же или другой кластер).
mTLS на север Поддерживается через балансировщики нагрузки Google Cloud. См. раздел Apigee X Northbound Mutual TLS с использованием балансировщика нагрузки внешнего приложения .
OAuth Новая политика RevokeOAuthv2 отзывается по идентификатору конечного пользователя, идентификатору приложения или по тому и другому. Эта политика заменяет API Apigee Edge для отзыва токенов OAuth2.
Политика
  • Новые политики:
    • Политика AssertCondition : оценивает условный оператор во время выполнения в потоках запросов или ответов.
    • Политика CORS : позволяет вызовам JavaScript XMLHttpRequest (XHR), выполняемым на веб-странице, взаимодействовать с ресурсами из доменов, не являющихся источниками.
    • Политика DataCapture : заменяет политику СтатистикаКоллектор.
    • Политика ExternalCallout : отправляет запросы gRPC на ваш сервер gRPC для реализации пользовательского поведения, которое не поддерживается политиками Apigee.
    • Политика GraphQL : анализирует полезные данные GraphQL в переменных потока сообщений, проверяет запросы GraphQL на соответствие схеме или и то, и другое.
    • Политика PublishMessages : публикует информацию о потоке прокси-сервера API в теме Google Cloud Pub/Sub.
    • Политика RevokeOAuthv2 : отзывается по идентификатору пользователя, идентификатору приложения или по тому и другому.
    • Политика TraceCapture : добавляет дополнительные переменные в данные трассировки среды выполнения Apigee.
  • Политика не поддерживается:
    • Политика СтатистикаКоллектор (заменена новой политикой DataCapture)
  • Измененная политика:
причинаФраза Не поддерживается.
Ресурсы Невозможно использовать ресурсы уровня организации.
Роли и разрешения
  • Управляется через службу IAM консоли Google Cloud.
  • Доступны некоторые курируемые готовые роли.
  • Вы можете создавать собственные роли, которые могут включать в себя другие разрешения Google Cloud.

Дополнительные сведения см. в разделе Пользователи и роли .

Смысл Используйте расширенную безопасность API .
Службы SOAP в мастере создания прокси-сервера Не поддерживается. См. wsdl2apigee — проект с открытым исходным кодом, который предоставляет утилиты SOAP для использования с Apigee.
Сеансы трассировки/отладки См. Различия с трассировкой .
Виртуальные хосты

Для гибрида Apigee:

  • Вход реализован через Anthos Service Mesh.
  • Ключи и сертификаты развертываются непосредственно в Kubernetes.

Для Апиджи X:

  • Каждый экземпляр предоставляет конечную точку HTTPS через самозаверяющий сертификат. Центр сертификации для сертификата можно загрузить, отправив запрос в org.

Различия с трассировкой

В следующей таблице сравниваются различия в работе Trace в Apigee X и гибридном и Apigee Edge Cloud:

Особенность Облако Apigee Edge Apigee X и гибрид
Своевременность Реальное время; синхронный Небольшая задержка; асинхронный
Имя/идентификатор сеанса Принимает имя сеанса от пользователя Не принимает имя сеанса от пользователя
Фильтры Поддержка базовых фильтров, таких как фильтрация заголовков и параметров запроса. Поддержка сложной логики фильтрации, включая логические операции И и ИЛИ. Доступ к любой переменной потока, упомянутой в справочнике по переменным потока . Синтаксис тот же, что и для условных операторов, как показано в ссылке на условия .
Тайм-аут сеанса

Определяет продолжительность сеанса отладки, а также время хранения данных.

Значение по умолчанию — 20 минут при инициировании через вызовы API и 10 минут при инициировании в пользовательском интерфейсе.

Определяет только продолжительность сеанса отладки. Отправной точкой является получение процессором сообщений запроса на работу в режиме отладки.

Значение по умолчанию — 5 минут, если сеанс был инициирован с помощью API, и 10 минут, если он был инициирован через пользовательский интерфейс.

Данные сохраняются в течение 24 часов, после чего гибридная система автоматически удаляет их.

Срок действия сеанса

Продолжительность времени, в течение которого действителен запрос на создание сеанса. Если сеанс отладки не запустится в течение этого времени, синхронизаторы могут игнорировать запрос на создание сеанса. Обязательно синхронизируйте часы ваших синхронизаторов, как описано в разделе «Предварительные условия» .
Количество запросов трассировки Максимум 20 на процессор сообщений По умолчанию — 10 на процессор сообщений; максимум 15.
API Облако Apigee Edge Апигей Икс
Apigee X предоставляет API сеанса отладки и API данных сеанса отладки , но не поддерживает через API Apigee X следующее:
Остановить сеанс отладки

Удаление определенных транзакций

Различия с монетизацией

В следующей таблице представлено сравнение ключевых функций Apigee Edge Monetization и Apigee X Monetization.

Монетизация Apigee Edge Apigee X/гибридная монетизация
Тарифные планы связаны с пакетами продуктов API, которые можно прикрепить к нескольким продуктам API. Тарифные планы связаны с продуктами API (отношения один к одному).
Тарифные планы для разработчиков приложений Разработчики приложений приобретают продукты API
Квоты управляются на уровне прокси-сервера API. Квоты управляются на уровне продукта API (бизнес-уровень).
Опубликованные тарифные планы могут быть только с истекшим сроком действия; их нельзя редактировать или удалять Опубликованные тарифные планы могут быть просрочены, отредактированы, перемещены в черновик или удалены.
Сложная конфигурация (без мастера или инструмента предварительного просмотра) Упрощенная настройка тарифных планов с помощью мастера и инструмента предварительного просмотра.
Политика MonetizationLimitsCheck блокирует доступ после обработки первого вызова API, если разработчик приложения не приобрел подписку. Политика MonetizationLimitsCheck немедленно блокирует доступ, если разработчик приложения не приобрел подписку или превысил квоту.
Данные о монетизации транзакций можно собирать с помощью пользовательских переменных в политике записи транзакций. Apigee автоматически собирает данные монетизации, а данные монетизации транзакций можно переопределить с помощью политики DataCapture. Дополнительную информацию см. в разделе «Сбор данных о монетизации» .
Предоплаченные и постоплатные счета можно настроить как для разработчиков, так и для тарифных планов. Учетные записи с предоплатой и постоплатой могут быть настроены только для разработчиков.

Какие функции Apigee Edge не поддерживаются в Apigee X?

Google не планирует поддерживать следующие функции:

  • Расширения Apigee Edge
  • Магазин спецификаций OpenAPI
  • API для поиска или отзыва токенов доступа OAuth (поскольку токены хешируются)
  • Политика OAuth v1 или OAuth OAuthv1.0a
  • Трирема (прекращение действия 10.10.2019)
  • Заголовки с префиксом «X-Apigee-» не поддерживаются в Apigee X и удаляются из запросов и ответов перед отправкой целевым объектам и клиентам.

Сравнение API

В целом, большинство API Apigee Edge имеют эквиваленты API Apigee. В этом разделе представлены:

Сводка изменений с использованием API

Ниже перечислены изменения в поведении всех API Apigee X по сравнению с API Apigee Edge.

Поведение API-интерфейсы Apigee Edge API-интерфейсы Apigee X
Базовый домен api.enterprise.apigee.com apigee.googleapis.com
Типы носителей application/json
application/xml
application/json
Аутентификация OAuth2, SAML, базовый ОАут2
Временные метки в ключах формат int64
{
  "createdAt": 1234,
  "lastModifiedAt": 5678
}
String формат
{
  "createdAt": "1234",
  "lastModifiedAt": "5678"
}
Структура параметра expand=false
[
        "helloworld",
        "weather"
      ]
{
  "proxies": [
    {
      "name": "helloworld"
    },
    {
      "name": "weather"
    }
  ]
}
Параметры запроса с префиксом подчеркивания Поддерживается ( _optimal=true ) Не поддерживается ( optimal=true )
Свойства в полезных нагрузках:
  • created_by
  • modified_by
  • self
Поддерживается Не поддерживается
Значения по умолчанию в полезных нагрузках Включено Не включено
Структура обработки ошибок
{
        "code": "...",
        "message": "..",
        "contexts": []
      }
{
  "error": {
    "code": 409,
    "message": "...",
    "status": "ABORTED",
    "details": [...]
  }
}
Ответ на удаление кэша Возвращает: 200 OK и сведения о кэше. Возврат: 204 No Content
Операции API кэша Список , создание , получение , обновление , удаление , очистка всех и очистка параметров. Только список и удаление . Кратковременный кеш L1 автоматически создается при развертывании прокси-сервера API. Дополнительные сведения см. в разделе Внутреннее устройство кэша .

Различия между API метрик Apigee Edge и Apigee X

В сводке изменений с использованием API перечислены общие различия между API Apigee Edge и Apigee X API. В следующей таблице перечислены конкретные различия между API метрик:

Особенность API-интерфейсы Apigee Edge API-интерфейсы Apigee X
конечная точка API api.enterprise.apigee.com apigee.googleapis.com
Ежедневные аналитические письма API не поддерживаются
API списка асинхронных запросов Получить список запросов асинхронной аналитики Свойство userId опущено в ответе. См. метод: организации.environments.queries.list .
API пользовательских отчетов API отчетов Свойства createdBy и lastModifiedBy были удалены из ответа. См. API отчетов .

Неподдерживаемые API Apigee Edge

В следующей таблице перечислены неподдерживаемые API Apigee Edge (которые не имеют эквивалентов API Apigee X).

Категория API Неподдерживаемые API Apigee Edge
API-мониторинг API не поддерживаются
API-прокси
  • Принудительно отменить развертывание прокси-сервера API
  • Получить зависимости npm
  • Управление модулями npm
Аудиты Используйте API ведения журнала Stackdriver
Кэшированные журналы API не поддерживаются
Компании API не поддерживаются
Приложения компании API не поддерживаются
Семейство корпоративных приложений API не поддерживаются
Ключи приложения компании API не поддерживаются
Сеансы отладки
  • Невозможно остановить сеансы трассировки
  • Невозможно удалить отдельные транзакции

Дополнительные сведения см. в разделе Различия с Trace .

Приложение для разработчиков Получить количество ресурсов API
Семейство приложений для разработчиков API не поддерживаются
Расширения API не поддерживаются
Хранилище ключей: хранилище доверенных сертификатов Проверка хранилища ключей или хранилища доверенных сертификатов
ЛДАП API не поддерживаются
Монетизация API не поддерживаются
ОАутентификация 2. API не поддерживаются
Политика API не поддерживаются
Файлы ресурсов
  • Область изменения прокси-сервера API
  • Объем организации
Смысл API не поддерживаются
Пользователи и роли пользователей Используйте API-интерфейсы Google Identity and Access Management (IAM), как описано в разделе «Управление пользователями, ролями и разрешениями с помощью API».
Виртуальные хосты API не поддерживаются

Apigee Edge для частного облака и гибрид Apigee

В следующей таблице сравниваются Apigee Edge для частного облака и гибрид Apigee:

Услуга Продукт или область функций Apigee
Apigee Edge для частного облака Апигей гибридный
Аналитика Серверы Qpid и Postgres Модуль сбора данных в плоскости выполнения использует Fluentd и UDCA (универсальный агент сбора данных) для сбора аналитики и передачи данных в UAP (унифицированную аналитическую платформу) в плоскости управления.
API-прокси-шлюз Процессор сообщений Процессор сообщений (MP) обрабатывает входящие запросы. MP реализуются как одно или несколько контейнерных приложений в плоскости выполнения.
Упорство Узел или кольцо Кассандры Cassandra обеспечивает постоянство функций KMS, KVM, квот и кэша.
Развертывание смотритель зоопарка Синхронизатор обеспечивает актуальность конфигураций прокси-сервера API, информации о среде и других данных между плоскостью управления и плоскостью среды выполнения.
Административный пользовательский интерфейс Пользовательский интерфейс Apigee Edge размещается на сервере управления. Пользовательский интерфейс Apigee размещается на плоскости управления.
Балансировка нагрузки Маршрутизатор Контроллер Istio Ingress передает запросы контейнерному приложению процессора сообщений (MP) в плоскости выполнения.
API Сервер управления Доступ к API Apigee X осуществляется через Management Server и MART . MART взаимодействует с локальным хранилищем данных Cassandra и служит поставщиком API для API Apigee X для доступа к объектам данных времени выполнения и управления ими.
Метрики Каждый компонент настроен с помощью JMX Управляется одним сервером Prometheus на кластер для всех служб.