Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
ОБЛАСТЬ ПРИМЕНЕНИЯ: Разработчик | Премия
В этой статье приведена ссылка на обязательные и необязательные параметры, которые используются для настройки контейнера шлюза Управление API локального размещения.
Чтобы узнать больше о руководстве по рабочей среде (Kubernetes), рекомендуем ознакомиться с этой статьей.
Внимание
Справочник применяется только к локальному шлюзу версии 2. Предоставляются минимальные версии для доступности параметров.
Интеграция API конфигурации
API конфигурации используется локальным шлюзом для подключения к Azure Управление API для получения последней конфигурации и отправки метрик при включении.
Ниже приведен обзор всех параметров конфигурации:
| Имя | Описание | Обязательное поле | По умолчанию. | Доступность |
|---|---|---|---|---|
| gateway.name | Идентификатор ресурса локального шлюза. | Да, при использовании проверки подлинности Microsoft Entra | Н/П | v2.3+ |
| config.service.endpoint | Конечная точка конфигурации в Управлении API Azure для локального шлюза. Найдите это значение на портале Azure в разделе Шлюзы>Развертывание. | Да | Н/П | v2.0+ |
| config.service.auth | Определяет способ проверки подлинности локального шлюза в API конфигурации. В настоящее время поддерживаются маркер шлюза и проверка подлинности Microsoft Entra. | Да | Н/П | v2.0+ |
| config.service.auth.azureAd.tenantId | Идентификатор клиента Microsoft Entra. | Да, при использовании проверки подлинности Microsoft Entra | Н/П | v2.3+ |
| config.service.auth.azureAd.clientId | Идентификатор клиента приложения Microsoft Entra для проверки подлинности (также называется идентификатором приложения). | Да, при использовании проверки подлинности Microsoft Entra | Н/П | v2.3+ |
| config.service.auth.azureAd.clientSecret | Секрет приложения Microsoft Entra для проверки подлинности. | Да, при использовании проверки подлинности Microsoft Entra (если сертификат не указан) | Н/П | v2.3+ |
| config.service.auth.azureAd.certificatePath | Путь к сертификату для проверки подлинности для приложения Microsoft Entra. | Да, при использовании проверки подлинности Microsoft Entra (если секрет не указан) | Н/П | v2.3+ |
| config.service.auth.azureAd.authority | URL-адрес центра идентификатора Microsoft Entra. | нет | https://login.microsoftonline.com |
v2.3+ |
| config.service.auth.tokenAudience | Аудитория маркера, используемая для проверки подлинности Microsoft Entra | нет | https://azure-api.net/configuration |
v2.3+ |
| config.service.endpoint.disableCertificateValidation | Определяет, должен ли локальный шлюз проверить сертификат на стороне сервера API конфигурации. Рекомендуется использовать проверку сертификатов, отключать только для тестирования и с осторожностью, так как это может привести к риску безопасности. | нет | false |
v2.0+ |
| config.service.integration.timeout | Определяет время ожидания для взаимодействия с API конфигурации. | нет | 00:01:40 |
v2.3.5+ |
Локальный шлюз обеспечивает поддержку нескольких вариантов проверки подлинности для интеграции с API конфигурации, который можно определить с помощью config.service.auth.
Это руководство поможет вам предоставить необходимые сведения для определения способа проверки подлинности:
- Для проверки подлинности на основе маркера шлюза укажите маркер доступа (ключ проверки подлинности) локального шлюза в портал Azure в разделе "Развертывание шлюзов>".
- Для проверки подлинности на основе идентификаторов Microsoft Entra укажите и укажите
azureAdAppдополнительныеconfig.service.auth.azureAdпараметры проверки подлинности.
Обнаружение и синхронизация между экземплярами
| Имя | Описание | Обязательное поле | По умолчанию. | Доступность |
|---|---|---|---|---|
| neighborhood.host | DNS-имя, используемое для разрешения всех экземпляров локального развертывания шлюза для синхронизации между экземплярами. В Kubernetes его можно достичь с помощью службы без головы. | нет | Н/П | v2.0+ |
| neighborhood.heartbeat.port | Порт UDP, используемый для экземпляров локального развертывания шлюза для отправки пульса другим экземплярам. | нет | 4291 | v2.0+ |
| policy.rate-limit.sync.port | Порт UDP, используемый для экземпляров локального шлюза для синхронизации ограничения скорости между несколькими экземплярами. | нет | 4290 | v2.0+ |
HTTP
| Имя | Описание | Обязательное поле | По умолчанию. | Доступность |
|---|---|---|---|---|
| net.server.http.forwarded.proto.enabled | Возможность учитывать X-Forwarded-Proto заголовок для определения схемы для разрешения вызываемого маршрута API (только http/https). |
нет | неправда | v2.5+ |
Интеграция Kubernetes
Входящий трафик Kubernetes
Внимание
Поддержка входящего трафика Kubernetes в настоящее время экспериментальна и не рассматривается через службу поддержки Azure. Дополнительные сведения см. на сайте GitHub.
| Имя | Описание | Обязательное поле | По умолчанию. | Доступность |
|---|---|---|---|---|
| k8s.ingress.enabled | Включите интеграцию входящего трафика Kubernetes. | нет | false |
v2.0+ |
| k8s.ingress.namespace | Пространство имен Kubernetes для просмотра ресурсов входящего трафика Kubernetes. | нет | default |
v2.0+ |
| k8s.ingress.dns.suffix | Суффикс DNS для создания имени узла DNS для служб для отправки запросов. | нет | svc.cluster.local |
v2.4+ |
| k8s.ingress.config.path | Путь к конфигурации Kubernetes (Kubeconfig). | нет | Н/П | v2.4+ |
Метрики
| Имя | Описание | Обязательное поле | По умолчанию. | Доступность |
|---|---|---|---|---|
| telemetry.metrics.local | Включите локальный сбор метрик с помощью StatsD. Значение является одним из следующих параметров: none, statsd. |
нет | none |
v2.0+ |
| telemetry.metrics.local.statsd.endpoint | Конечная точка StatsD. | Да, если для telemetry.metrics.local задано значение statsd; в противном случае — нет. |
Н/П | v2.0+ |
| telemetry.metrics.local.statsd.sampling | Частота выборки метрик StatsD. Значение должно входит в диапазон 0–1 (по умолчанию: 0,5). | нет | Н/П | v2.0+ |
| telemetry.metrics.local.statsd.tag-format |
Формат тегирования экспортера StatsD. Значение является одним из следующих параметров: ibrato, dogStatsD, influxDB. |
нет | Н/П | v2.0+ |
| telemetry.metrics.cloud | Указывает, следует ли включать отправку метрик в Azure Monitor. | нет | true |
v2.0+ |
| observability.opentelemetry.enabled | Указывает, следует ли включать отправку метрик в сборщик OpenTelemetry в Kubernetes. | нет | false |
v2.0+ |
| observability.opentelemetry.collector.uri | URI сборщика OpenTelemetry для отправки метрик. | Да, если для observability.opentelemetry.enabled задано значение true; в противном случае — нет. |
Н/П | v2.0+ |
| observability.opentelemetry.system-metrics.enabled | Включите отправку системных метрик сборщику OpenTelemetry, например ЦП, памяти, сборки мусора и т. д. | нет | false |
v2.3+ |
| observability.opentelemetry.histogram.buckets | Контейнеры гистограммы, в которые должны поступать метрики OpenTelemetry. Формат: "x,y,z,...". | нет | "5,10,25,50,100,250,500,1000,2500,5000,10000" | v2.0+ |
Журналы
| Имя | Описание | Обязательное поле | По умолчанию. | Доступность |
|---|---|---|---|---|
| telemetry.logs.std |
Включите запись журнала в стандартный поток. Значение является одним из следующих параметров: none, text, json. |
нет | text |
v2.0+ |
| telemetry.logs.std.level | Определяет уровень журнала журналов, отправленных в стандартный поток. Значение является одним из следующих параметров: all, debug, info, warnerror или fatal. |
нет | info |
v2.0+ |
| telemetry.logs.std.color | Указывает, следует ли использовать цветные журналы в стандартном потоке. | нет | true |
v2.0+ |
| telemetry.logs.local |
Включите локальное ведение журнала. Значение является одним из следующих параметров: none, auto, localsyslog, rfc5424journaljson |
нет | auto |
v2.0+ |
| telemetry.logs.local.localsyslog.endpoint | Конечная точка localsyslog. | Да, если для telemetry.logs.local задано значение localsyslog; в противном случае — нет. Дополнительные сведения о конфигурации см . в документации по локальной системной системе. |
Н/П | v2.0+ |
| telemetry.logs.local.localsyslog.facility | Задает код устройства localsyslog, например 7. |
нет | Н/П | v2.0+ |
| telemetry.logs.local.rfc5424.endpoint | Конечная точка rfc5424. | Да, если для telemetry.logs.local задано значение rfc5424; в противном случае — нет. |
Н/П | v2.0+ |
| telemetry.logs.local.rfc5424.facility | Код объекта для rfc5424, например 7 |
нет | Н/П | v2.0+ |
| telemetry.logs.local.journal.endpoint | Конечная точка журнала. | Да, если для telemetry.logs.local задано значение journal; в противном случае — нет. |
Н/П | v2.0+ |
| telemetry.logs.local.json.endpoint | Конечная точка UDP, которая принимает данные JSON, указанная как путь к файлу, IP-адрес:порт или имя узла:порт. | Да, если для telemetry.logs.local задано значение json; в противном случае — нет. |
127.0.0.1:8888 | v2.0+ |
Безопасность
Сертификаты и шифры
| Имя | Описание | Обязательное поле | По умолчанию. | Доступность |
|---|---|---|---|---|
| certificates.local.ca.enabled | Указывает, следует ли локально размещенному шлюзу использовать локальные сертификаты ЦС, подключенные. Для запуска локального шлюза необходимо использовать корневой или с идентификатором пользователя 1001. | нет | false |
v2.0+ |
| net.server.tls.ciphers.allowed-suite | Разделенный запятыми список шифров, используемых для подключения TLS между клиентом API и локальным шлюзом. | нет | TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_DHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_DHE_RSA_WITH_AES_256_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA |
v2.0+ |
| net.client.tls.ciphers.allowed-suite | Разделенный запятыми список шифров, используемых для подключения TLS между локальным шлюзом и серверной частью. | нет | TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_DHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_DHE_RSA_WITH_AES_256_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA |
v2.0+ |
| security.certificate-revocation.validation.enabled | Предоставляет возможность включить или отключить проверку списка отзыва сертификатов | нет | false |
v2.3.6+ |
TLS
| Имя | Описание | Обязательное поле | По умолчанию. | Доступность |
|---|---|---|---|---|
| Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls13 | Указывает, разрешено ли протокол TLS 1.3 к серверной части. Аналогично управлению шифрами протоколов в управляемом шлюзе. | нет | true |
v2.0+ |
| Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls12 | Указывает, разрешено ли tls 1.2 к серверной части. Аналогично управлению шифрами протоколов в управляемом шлюзе. | нет | true |
v2.0+ |
| Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 | Указывает, разрешено ли tls 1.1 к серверной части. Аналогично управлению шифрами протоколов в управляемом шлюзе. | нет | false |
v2.0+ |
| Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 | Указывает, разрешено ли протокол TLS 1.0 к серверной части. Аналогично управлению шифрами протоколов в управляемом шлюзе. | нет | false |
v2.0+ |
| Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30 | Указывает, разрешено ли ssl 3.0 к серверной части. Аналогично управлению шифрами протоколов в управляемом шлюзе. | нет | false |
v2.0+ |
Национальные облака
Ниже приведен обзор параметров, которые должны быть настроены для работы с суверенными облаками:
| Имя | Общедоступный | Azure – Китай | Правительство США |
|---|---|---|---|
| config.service.auth.tokenAudience |
https://azure-api.net/configuration (по умолчанию) |
https://azure-api.cn/configuration |
https://azure-api.us/configuration |
| logs.applicationinsights.endpoint |
https://dc.services.visualstudio.com/v2/track (по умолчанию) |
https://dc.applicationinsights.azure.cn/v2/track |
https://dc.applicationinsights.us/v2/track |
Настройка параметров
YAML-файл Kubernetes
При развертывании локального шлюза в Kubernetes с помощью YAML-файла настройте параметры в виде пар имя-значение в элементе data ConfigMap шлюза. Например:
apiVersion: v1
kind: ConfigMap
metadata:
name: contoso-gateway-environment
data:
config.service.endpoint: "contoso.configuration.azure-api.net"
telemetry.logs.std: "text"
telemetry.logs.local.localsyslog.endpoint: "/dev/log"
telemetry.logs.local.localsyslog.facility: "7"
[...]
Диаграмма Helm
При использовании Helm для развертывания локального шлюза в Kubernetes передайте параметры конфигурации диаграммы в качестве параметров в команде helm install. Например:
helm install azure-api-management-gateway \
--set gateway.configuration.uri='contoso.configuration.azure-api.net' \
--set gateway.auth.key='GatewayKey contosogw&xxxxxxxxxxxxxx...' \
--set secret.createSecret=false \
--set secret.existingSecretName=`mysecret` \
azure-apim-gateway/azure-api-management-gateway
Связанный контент
- Дополнительные указания по запуску локального шлюза в Kubernetes в рабочей среде
- Развертывание локального шлюза в Docker
- Развертывание локального шлюза в Kubernetes
- Развертывание локального шлюза в кластере Kubernetes с поддержкой Azure Arc
- Включение поддержки Dapr в локальном шлюзе
- Дополнительные сведения о параметрах конфигурации для расширения Azure Arc