【Azure API 管理】APIM Self-Host Gateway 自建本地环境中的网关数量超过10个且它们的出口IP为同一个时出现的429错误

简介: 【Azure API 管理】APIM Self-Host Gateway 自建本地环境中的网关数量超过10个且它们的出口IP为同一个时出现的429错误

问题描述

Azure API Management服务支持使用自建网关来实现API服务,这样APIM的所有请求都可以走在自管理的企业内网中。流量都更加安全。当根据官网文档搭建后,如果在本地环境中部署超过10个Self-host gateway,并且这些Self-host gateway的主机出口IP地址(公网IP)都是同一个的时候,就会遇见429错误: [HeartbeatError], exception: System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 ().

更多的错误消息

(c) Microsoft Corporation. All rights reserved.
This software is licensed to you as part of your or your company's subscription license for Microsoft Azure Services.
You may only use the software with Microsoft Azure Services and subject to the terms and conditions of the agreement under which you obtained Microsoft Azure Services.
If you do not have an active subscription license for Microsoft Azure Services, you may not use the software.
See Microsoft Azure Legal Information: https://azure.microsoft.com/en-us/support/legal/
     __       __   ___          __                             __   ___        ___      ___
/\   / |  | |__) |__      /\  |__) |     |\/|  /\  |\ |  /\  / _` |__   |\/| |__  |\ |  |
/~~\ /_ \__/ |  \ |___    /~~\ |    |     |  | /~~\ | \| /~~\ \__> |___  |  | |___ | \|  |
   ____           _    __           _   _                 _                _      ____           _
/ ___|    ___  | |  / _|         | | | |   ___    ___  | |_    ___    __| |    / ___|   __ _  | |_    ___  __      __   __ _   _   _
\___ \   / _ \ | | | |_   _____  | |_| |  / _ \  / __| | __|  / _ \  / _` |   | |  _   / _` | | __|  / _ \ \ \ /\ / /  / _` | | | | |
  ___) | |  __/ | | |  _| |_____| |  _  | | (_) | \__ \ | |_  |  __/ | (_| |   | |_| | | (_| | | |_  |  __/  \ V  V /  | (_| | | |_| |
|____/   \___| |_| |_|           |_| |_|  \___/  |___/  \__|  \___|  \__,_|    \____|  \__,_|  \__|  \___|   \_/\_/    \__,_|  \__, |
                                                                                                                                |___/
               .%*
                         /##(
                                   #####.
                                            ,%%%#%%/
                                                      #%%%%%%%%
                                                     (((#####((((#/
                                                   ((((##(((//////((
                                                  ((((##(///*******//.
                                                 /(((%#(//**,,..,,,*//
   %%%%%%%%############(/############%%%%%%%%%%%%%%%%%((/**,..  ..,,**
                                         .**(/%/%%%%%%((/**,... ..,***
                                                  (((%#((/**,,,,,,**/.
                                                   (((%#((//****,,//
                                                     ((%##((((///(*
                                                        ,%%####
                                                  %%%%%,
                                          *%%#%
                                   (###
                            ##(
                    ,#/
             (,
  _                                     _
| |__     ___    ___   _ __           | |__     ___    ___   _ __
| '_ \   / _ \  / _ \ | '_ \   _____  | '_ \   / _ \  / _ \ | '_ \
| |_) | |  __/ |  __/ | |_) | |_____| | |_) | |  __/ |  __/ | |_) |
|_.__/   \___|  \___| | .__/          |_.__/   \___|  \___| | .__/
                       |_|                                   |_|
version: 1.2.5.0
commit: 2781a2bc38328bb1f9b425342e847a683105b7fa
[Warn] 2021-12-7T10:26:33.418 [LoadBackupLocationNotFound], message: /apim/config, source: BackupMetadataProvider
[Info] 2021-12-7T10:26:33.471 [HostBootstrapperStarting]
[Info] 2021-12-7T10:26:33.471 [ComponentStarting], message: EventListenerComponent
[Info] 2021-12-7T10:26:33.471 [ComponentStarted], message: EventListenerComponent
[Info] 2021-12-7T10:26:33.471 [ComponentStarting], message: EndPointEventListenerHost
[Info] 2021-12-7T10:26:33.473 [ComponentStarted], message: EndPointEventListenerHost
[Info] 2021-12-7T10:26:33.492 [LoadingConfiguration], message: https://apim-restry.management.azure-api.cn/subscriptions/6630b017-4a45-44cc-a150-5e413bf22091/resourceGroups/RG-APIM/providers/Microsoft.ApiManagement/service/apim-restry/gateways/getConfiguration?api-version=2018-06-01-preview, source: ServiceConfigurationSource
[Info] 2021-12-7T10:26:34.364 [ConfigurationUpdated], message: Updated settings: tenant.id, tenant.name, config.enc, config.enc.keys.primary, config.enc.keys.secondary, config.cert.privatekey.password, deployment.dataset.id, logs.applicationinsights.endpoint, policy.qouta.sync.table.connection, events.snapshot.initial.connection, events.snapshot.private.master.connection, events.table.connection, inspector.container.connection, deployment.instance.region, deployment.instance.gateway-id, deployment.id, deployment.name, config.mode, source: ServiceConfigurationSource
[Info] 2021-12-7T10:26:34.371 [ComponentStarting], message: ExternalConfigurationHeartbeat
[Info] 2021-12-7T10:26:34.372 [ComponentStarted], message: ExternalConfigurationHeartbeat
[Info] 2021-12-7T10:26:34.372 [ComponentStarting], message: ExternalConfigurationMonitor
[Info] 2021-12-7T10:26:34.372 [ComponentStarted], message: ExternalConfigurationMonitor
[Info] 2021-12-7T10:26:34.372 [ComponentStarting], message: P2PRateLimitSignalSenderService
[Info] 2021-12-7T10:26:34.373 [ComponentStarted], message: P2PRateLimitSignalSenderService
[Info] 2021-12-7T10:26:34.373 [ComponentStarting], message: P2PRateLimitSignalListenerService
[Info] 2021-12-7T10:26:34.374 [ComponentStarted], message: P2PRateLimitSignalListenerService
[Info] 2021-12-7T10:26:34.374 [ComponentStarting], message: StubHostableComponent
[Info] 2021-12-7T10:26:34.374 [ComponentStarted], message: StubHostableComponent
[Info] 2021-12-7T10:26:34.374 [ComponentStarting], message: StubHostableComponent
[Info] 2021-12-7T10:26:34.374 [ComponentStarted], message: StubHostableComponent
[Info] 2021-12-7T10:26:34.374 [ComponentStarting], message: NeighborDiscoveryService
[Info] 2021-12-7T10:26:34.384 [NeighborhoodChangeDetected], message: [] --> [255.255.255.255: 255.255.255.255], source: UdpHeartbeatSender
[Info] 2021-12-7T10:26:34.385 [NeighborhoodChangeDetected], message: [] --> [255.255.255.255: 255.255.255.255], source: P2PRateLimitSignalSenderService
[Info] 2021-12-7T10:26:34.385 [ComponentStarted], message: NeighborDiscoveryService
[Info] 2021-12-7T10:26:34.385 [ComponentStarting], message: DotNettyBootstrapper
[Info] 2021-12-7T10:26:34.393 [SelfAddressDiscovery], message: Rate limit is running in UDP broadcast mode. Discovering local node addresses to ignore loopback datagrams..., source: P2PRateLimitSignalListenerService
[Info] 2021-12-7T10:26:34.420 [ComponentStarted], message: DotNettyBootstrapper
[Info] 2021-12-7T10:26:34.420 [ComponentStarting], message: AspNetCoreBootstrapper
[Info] 2021-12-7T10:26:34.463 [MyAddresses], message: 127.0.0.1, 172.18.0.12, source: P2PRateLimitSignalListenerService
[Info] 2021-12-7T10:26:34.466 [SignalListenerStarting], message: 0.0.0.0:4290, source: P2PRateLimitSignalListenerService
[Info] 2021-12-7T10:26:34.470 [SignalListenerStarted], message: 0.0.0.0:4290, source: P2PRateLimitSignalListenerService
Hosting environment: Production
Content root path: /app
Now listening on: http://0.0.0.0:8080
Now listening on: https://0.0.0.0:8081
[Info] 2021-12-7T10:26:34.665 [ComponentStarted], message: AspNetCoreBootstrapper
[Info] 2021-12-7T10:26:34.665 [HostBootstrapperStarted]
[Info] 2021-12-7T10:26:34.954 [TenantStarting], message: 61af36da3aaab00001747dc7
[Info] 2021-12-7T10:26:35.501 [KubernetesIngressModeDisabled], source: KubernetesConfigurationRepositoryProvider
[Warn] 2021-12-7T10:26:35.599 [LoadBackupLocationNotFound], message: /apim/config, source: FileBackupProvider
[Info] 2021-12-7T10:26:35.901 [LegacyBackendUpdated], source: BackendService
[Info] 2021-12-7T10:26:36.314 [BootstrapperStarting], source: Bootstrapper
[Info] 2021-12-7T10:26:36.314 [ComponentStarting], message: PolicyMapBuilder, source: Bootstrapper
[Info] 2021-12-7T10:26:36.315 [ComponentStarted], message: PolicyMapBuilder, source: Bootstrapper
[Info] 2021-12-7T10:26:36.315 [ComponentStarting], message: RequestHandlerContainer, source: Bootstrapper
[Info] 2021-12-7T10:26:36.315 [ComponentStarted], message: RequestHandlerContainer, source: Bootstrapper
[Info] 2021-12-7T10:26:36.315 [ComponentStarting], message: RequestHandlerContainer, source: Bootstrapper
[Info] 2021-12-7T10:26:36.315 [ComponentStarted], message: RequestHandlerContainer, source: Bootstrapper
[Info] 2021-12-7T10:26:36.315 [ComponentStarting], message: RequestHandlerContainer, source: Bootstrapper
[Info] 2021-12-7T10:26:36.315 [ComponentStarted], message: RequestHandlerContainer, source: Bootstrapper
[Info] 2021-12-7T10:26:36.315 [ComponentStarting], message: RequestHandlerContainer, source: Bootstrapper
[Info] 2021-12-7T10:26:36.315 [ComponentStarted], message: RequestHandlerContainer, source: Bootstrapper
[Info] 2021-12-7T10:26:36.315 [ComponentStarting], message: ValidateMessageService, source: Bootstrapper
[Info] 2021-12-7T10:26:36.369 [ComponentStarted], message: ValidateMessageService, source: Bootstrapper
[Info] 2021-12-7T10:26:36.369 [ComponentStarting], message: MetricPublisher, source: Bootstrapper
[Info] 2021-12-7T10:26:36.450 [MetricPublicationStarted], source: MetricsPublisher
[Info] 2021-12-7T10:26:36.450 [ComponentStarted], message: MetricPublisher, source: Bootstrapper
[Info] 2021-12-7T10:26:36.450 [ComponentStarting], message: QuotaComponent, source: Bootstrapper
[Info] 2021-12-7T10:26:36.451 [ComponentStarted], message: QuotaComponent, source: Bootstrapper
[Info] 2021-12-7T10:26:36.451 [ComponentStarting], message: CloudMetricConnection, source: Bootstrapper
[Info] 2021-12-7T10:26:36.477 [ComponentStarted], message: CloudMetricConnection, source: Bootstrapper
[Info] 2021-12-7T10:26:36.479 [ConfigStarted], source: CompositeConfigurationRepositoryProvider
[Info] 2021-12-7T10:26:36.479 [ConfigStarted], message: Connected service is enabled. 'config.service.endpoint' is set., source: CompositeConfigurationRepositoryProvider
[Info] 2021-12-7T10:26:36.488 [ConfigInitialSyncStarted], source: ConfigurationRepositoryProvider
[Info] 2021-12-7T10:26:36.752 [CounterInitialSyncStarted], source: QuotaByKeyCounterService
[Info] 2021-12-7T10:26:36.776 [CounterInitialSyncCompleted], source: QuotaByKeyCounterService
[Info] 2021-12-7T10:26:37.170 [EventSnapshotElected], message: provider: storage, uri: https://apimstqax0aibucxyvra4cdf.blob.core.chinacloudapi.cn/gatewaysnapshotsrxwmzisgzzfiv7r/snapshot-2019-10-11.Proxy.Host.WebRole_IN_0.json.gzip, rev: 225, source: events.snapshot
[Info] 2021-12-7T10:26:37.180 [ConfigurationRetrieving], message: https://apimstqax0aibucxyvra4cdf.blob.core.chinacloudapi.cn/gatewaysnapshotsrxwmzisgzzfiv7r/snapshot-2019-10-11.Proxy.Host.WebRole_IN_0.json.gzip, source: events.snapshot.storage.private
[Info] 2021-12-7T10:26:37.266 [ConfigurationLoaded], message: https://apimstqax0aibucxyvra4cdf.blob.core.chinacloudapi.cn/gatewaysnapshotsrxwmzisgzzfiv7r/snapshot-2019-10-11.Proxy.Host.WebRole_IN_0.json.gzip, source: events.snapshot.storage.private
[Info] 2021-12-7T10:26:37.712 [ConfigurationRetrieved], message: https://apimstqax0aibucxyvra4cdf.blob.core.chinacloudapi.cn/gatewaysnapshotsrxwmzisgzzfiv7r/snapshot-2019-10-11.Proxy.Host.WebRole_IN_0.json.gzip, source: events.snapshot.storage.private
[Info] 2021-12-7T10:26:37.721 [LocalLoggerAddedToTenant], message: apim-restry.azure-api.cn, source: DefaultLocalLoggerConfigurationFilter
[Info] 2021-12-7T10:26:37.723 [LocalDiagnosticAddedtoTenant], message: apim-restry.azure-api.cn, source: DefaultTenantDiagnosticConfigurationFilter
[Warn] 2021-12-7T10:26:37.811 [Logger azuremonitor with unknown type azureMonitor detected], source: LoggerResolver
[Info] 2021-12-7T10:26:37.885 [OperationRouteTableRebuildStarted], message: echo-api;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.973 [OperationRouteTableRebuildCompleted], message: echo-api;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.981 [OperationRouteTableRebuildStarted], message: auction;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.989 [OperationRouteTableRebuildCompleted], message: auction;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.990 [OperationRouteTableRebuildStarted], message: todo-api;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.994 [OperationRouteTableRebuildCompleted], message: todo-api;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.994 [OperationRouteTableRebuildStarted], message: apim;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.994 [OperationRouteTableRebuildCompleted], message: apim;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.994 [OperationRouteTableRebuildStarted], message: api101;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.994 [OperationRouteTableRebuildCompleted], message: api101;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.994 [OperationRouteTableRebuildStarted], message: api103;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildCompleted], message: api103;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildStarted], message: api112;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildCompleted], message: api112;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildStarted], message: api114;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildCompleted], message: api114;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildStarted], message: apiID_self-getway;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildCompleted], message: apiID_self-getway;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildStarted], message: apiID_dev-nm-domestic;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildCompleted], message: apiID_dev-nm-domestic;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildStarted], message: apiid-dev-bj-domestic;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildCompleted], message: apiid-dev-bj-domestic;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildStarted], message: api-self-getway;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:37.995 [OperationRouteTableRebuildCompleted], message: api-self-getway;rev=1, source: ApiRouter
[Info] 2021-12-7T10:26:38.230 [LegacyBackendUpdated], source: BackendService
[Info] 2021-12-7T10:26:38.231 [EventSnapshotRestored], message: revision: 000000e1, datasetId: rxwmzisgzzfiv7r, source: ConfigurationRepositoryProvider
[Info] 2021-12-7T10:26:38.246 [WaitingForRemainingEvents], message: snapshot-rev: 000000e1, source: ConfigurationRepositoryProvider
[Info] 2021-12-7T10:26:38.249 [EventLoopStopped], source: TableStorageEventLoopFactory
[Info] 2021-12-7T10:26:38.249 [EventLoopStarted], source: TableStorageEventLoopFactory
[Info] 2021-12-7T10:26:38.713 [NewEventsRead], message: count: 1, source: TableStorageEventLoopFactory
[Info] 2021-12-7T10:26:38.714 [EventProcessing], message: partitionkey: apim-restry.azure-api.cn, rowkey: 000000e2, etag: W/"datetime'2021-12-07T10%3A24%3A59.458422Z'", source: TableStorageEventLoopFactory
[Info] 2021-12-7T10:26:38.729 [EntityEventProcessing], message: id: 000000e2, entity-id: /gateways/61af367b58ac0a10a44e6e85, public-entity-id: /gateways/dev-gateway-03, type: created, entity-rev: 8010, source: ConfigurationRepositoryProvider
[Info] 2021-12-7T10:26:39.138 [EntityEventProcessed], message: id: 000000e2, entity-id: /gateways/61af367b58ac0a10a44e6e85, public-entity-id: /gateways/dev-gateway-03, type: created, entity-rev: 8010, source: ConfigurationRepositoryProvider
[Info] 2021-12-7T10:26:39.138 [EventProcessed], message: partitionkey: apim-restry.azure-api.cn, rowkey: 000000e2, etag: W/"datetime'2021-12-07T10%3A24%3A59.458422Z'", source: TableStorageEventLoopFactory
[Info] 2021-12-7T10:26:39.139 [EventsSuccessfullyRestored], source: ConfigurationRepositoryProvider
[Info] 2021-12-7T10:26:39.142 [ConfigInitialSyncCompleted], source: ConfigurationRepositoryProvider
[Info] 2021-12-7T10:26:39.143 [BootstrapperStarted], source: Bootstrapper
[Info] 2021-12-7T10:26:39.144 [TenantStarted], message: 61af36da3aaab00001747dc7 00:00:04.4720580
[Error]2021-12-7T10:27:33.543 [HeartbeatError], exception: System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 ().
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Gateway.Host.AspNetCore.ExternalConfiguration.ExternalConfigurationHeartbeat.<SendHeartbeat>g__Send|11_1(CancellationToken cancellation) in D:\a\1\s\Proxy\Gateway.Host.AspNetCore\ExternalConfiguration\ExternalConfigurationHeartbeat.cs:line 105, source: ConfigService
[Error]2021-12-7T10:28:33.550 [HeartbeatError], exception: System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 ().
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Gateway.Host.AspNetCore.ExternalConfiguration.ExternalConfigurationHeartbeat.<SendHeartbeat>g__Send|11_1(CancellationToken cancellation) in D:\a\1\s\Proxy\Gateway.Host.AspNetCore\ExternalConfiguration\ExternalConfigurationHeartbeat.cs:line 105, source: ConfigService
[Error]2021-12-7T10:29:33.562 [HeartbeatError], exception: System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 ().
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Gateway.Host.AspNetCore.ExternalConfiguration.ExternalConfigurationHeartbeat.<SendHeartbeat>g__Send|11_1(CancellationToken cancellation) in D:\a\1\s\Proxy\Gateway.Host.AspNetCore\ExternalConfiguration\ExternalConfigurationHeartbeat.cs:line 105, source: ConfigService
[Error]2021-12-7T10:30:33.678 [HeartbeatError], exception: System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 ().
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Gateway.Host.AspNetCore.ExternalConfiguration.ExternalConfigurationHeartbeat.<SendHeartbeat>g__Send|11_1(CancellationToken cancellation) in D:\a\1\s\Proxy\Gateway.Host.AspNetCore\ExternalConfiguration\ExternalConfigurationHeartbeat.cs:line 105, source: ConfigService
[Error]2021-12-7T10:31:33.691 [HeartbeatError], exception: System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 ().
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Gateway.Host.AspNetCore.ExternalConfiguration.ExternalConfigurationHeartbeat.<SendHeartbeat>g__Send|11_1(CancellationToken cancellation) in D:\a\1\s\Proxy\Gateway.Host.AspNetCore\ExternalConfiguration\ExternalConfigurationHeartbeat.cs:line 105, source: ConfigService
[Error]2021-12-7T10:32:33.702 [HeartbeatError], exception: System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 ().
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Gateway.Host.AspNetCore.ExternalConfiguration.ExternalConfigurationHeartbeat.<SendHeartbeat>g__Send|11_1(CancellationToken cancellation) in D:\a\1\s\Proxy\Gateway.Host.AspNetCore\ExternalConfiguration\ExternalConfigurationHeartbeat.cs:line 105, source: ConfigService
[Error]2021-12-7T10:33:33.711 [HeartbeatError], exception: System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 ().
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Gateway.Host.AspNetCore.ExternalConfiguration.ExternalConfigurationHeartbeat.<SendHeartbeat>g__Send|11_1(CancellationToken cancellation) in D:\a\1\s\Proxy\Gateway.Host.AspNetCore\ExternalConfiguration\ExternalConfigurationHeartbeat.cs:line 105, source: ConfigService
[Error]2021-12-7T10:34:33.719 [HeartbeatError], exception: System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 ().
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Gateway.Host.AspNetCore.ExternalConfiguration.ExternalConfigurationHeartbeat.<SendHeartbeat>g__Send|11_1(CancellationToken cancellation) in D:\a\1\s\Proxy\Gateway.Host.AspNetCore\ExternalConfiguration\ExternalConfigurationHeartbeat.cs:line 105, source: ConfigService
[Error]2021-12-7T10:35:33.725 [HeartbeatError], exception: System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 ().
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Gateway.Host.AspNetCore.ExternalConfiguration.ExternalConfigurationHeartbeat.<SendHeartbeat>g__Send|11_1(CancellationToken cancellation) in D:\a\1\s\Proxy\Gateway.Host.AspNetCore\ExternalConfiguration\ExternalConfigurationHeartbeat.cs:line 105, source: ConfigService
[Info] 2021-12-7T10:35:49.546 [NewEventsRead], message: count: 1, source: TableStorageEventLoopFactory
[Info] 2021-12-7T10:35:49.546 [EventProcessing], message: partitionkey: apim-restry.azure-api.cn, rowkey: 000000e3, etag: W/"datetime'2021-12-07T10%3A35%3A43.601638Z'", source: TableStorageEventLoopFactory
[Info] 2021-12-7T10:35:49.546 [EntityEventProcessing], message: id: 000000e3, entity-id: /gateways/61af38ff58ac0a10a44e6f13, public-entity-id: /gateways/dev-gateway-04, type: created, entity-rev: 8015, source: ConfigurationRepositoryProvider
[Info] 2021-12-7T10:35:49.547 [EntityEventProcessed], message: id: 000000e3, entity-id: /gateways/61af38ff58ac0a10a44e6f13, public-entity-id: /gateways/dev-gateway-04, type: created, entity-rev: 8015, source: ConfigurationRepositoryProvider
[Info] 2021-12-7T10:35:49.547 [EventProcessed], message: partitionkey: apim-restry.azure-api.cn, rowkey: 000000e3, etag: W/"datetime'2021-12-07T10%3A35%3A43.601638Z'", source: TableStorageEventLoopFactory
[Error]2021-12-7T10:36:33.730 [HeartbeatError], exception: System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 ().
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Gateway.Host.AspNetCore.ExternalConfiguration.ExternalConfigurationHeartbeat.<SendHeartbeat>g__Send|11_1(CancellationToken cancellation) in D:\a\1\s\Proxy\Gateway.Host.AspNetCore\ExternalConfiguration\ExternalConfigurationHeartbeat.cs:line 105, source: ConfigService

 

部署架构图

 

 

问题解答

多方查询无果后,咨询官方。得知这个是APIM 版本限制问题,升级APIM服务的版本(Azure自动维护)后,同一个公网IP地址最大的10个连接限制问题消失。

The issue is fixed starting version 0.23.1400.0 and above

 

参考资料

自托管网关概述:https://docs.azure.cn/zh-cn/api-management/self-hosted-gateway-overview

 

相关文章
|
6月前
|
API 网络安全 网络架构
【Azure APIM】解答REST API实现"禁用自签名证书的证书链验证"中的backends参数值从那里取值的问题?
本文介绍APIM服务调用后端API时因自签名证书导致500错误的解决方案。通过REST API禁用证书链验证,关键在于获取正确的backendId(即APIM中配置的Backend名称),并调用PATCH接口设置validateCertificateChain为false,从而解决SSL/TLS信任问题。
237 8
|
10月前
|
XML 安全 API
【Azure APIM】API Management的Policy是否支持 SAML assertion?
本文探讨了API Management是否支持通过策略(如validate-jwt)验证SAML assertion的问题。结论是API Management目前不支持SAML assertion验证,因其为XML-based token,而validate-jwt仅适用于JWT tokens。文章进一步介绍了SAML(安全断言标记语言)的基本原理、Assertion的组成及用途,包括单点登录(SSO)、跨组织身份验证、云服务集成和安全性增强等方面,帮助读者深入了解SAML的工作机制及其应用场景。
143 24
|
10月前
|
人工智能 安全 API
Agent 工程师绕不开的必修课:API 网关 vs API 管理
本文探讨了“API管理”与“API网关”的起源、发展及差异,二者分别服务于API生命周期的不同阶段。API网关从流量网关演进至AI网关,承担运行时请求控制;API管理则从接口文档化发展到商业化平台,关注全生命周期治理。两者在实际应用中协同工作,通过分层架构和策略联动实现高效运营。未来,随着大模型应用的兴起,AI网关和MCP Server管理将成为新趋势,推动API技术迈入智能化和服务化的新阶段。
Agent 工程师绕不开的必修课:API 网关 vs API 管理
|
7月前
|
API 网络架构 容器
【Azure Container App】查看当前 Container App Environment 中的 CPU 使用情况的API
在扩展 Azure Container Apps 副本时,因 Container App Environment 的 CPU 核心数已达上限(500 cores),导致扩展失败。本文介绍如何使用 `az rest` 命令调用 Azure China Cloud 管理 API,查询当前环境的 CPU 使用情况,并提供具体操作步骤及示例。
253 17
|
7月前
|
安全 API 数据安全/隐私保护
【Azure 环境】Microsoft Graph API实现对Entra ID中应用生成密码的时间天数
本文介绍如何通过 Azure 的 App Management Policy 限制用户在创建 AAD 应用程序的 Client Secret 时设置最长 90 天的有效期。通过 Microsoft Graph API 配置 defaultAppManagementPolicy,可有效控制密码凭据的生命周期,增强安全管理。
189 4
|
监控 Cloud Native 安全
基于 API 网关践行 API First 开发实践
API First 开发模式的核心在于:以 API 为先,将其视为“头等公民”,在构建应用、服务及集成之前,应优先定义并设计 API 及其配套。API First 作为一种相对较新的开发模式,它已逐渐流行并获得业内的广泛认可。
703 157
|
人工智能 监控 负载均衡
一文详述:AI 网关与 API 网关到底有什么区别?
近年来,AI发展迅猛,大模型成为推动业务创新的关键力量。企业面临如何安全管理和部署AI应用的挑战,需设计既能满足当前需求又可适应未来发展的基础架构。AI网关应运而生,在集成、管理和优化AI应用中扮演重要角色。本文探讨AI网关与API网关的区别,分析AI系统为何需要专门网关,并提供选择合适AI网关的建议。AI网关不仅支持多种模型,还具备高级安全性和性能优化功能,有助于企业在复杂环境中灵活应用AI技术。
929 2
|
JavaScript API C#
【Azure Developer】Python代码调用Graph API将外部用户添加到组,结果无效,也无错误信息
根据Graph API文档,在单个请求中将多个成员添加到组时,Python代码示例中的`members@odata.bind`被错误写为`members@odata_bind`,导致用户未成功添加。
197 10
|
API Python
【Azure Developer】分享一段Python代码调用Graph API创建用户的示例
分享一段Python代码调用Graph API创建用户的示例
204 11