API管理-自托管网关后端URL

问题描述 投票:0回答:1

我尝试在 Docker Desktop Kubernetes 集群中安装用于 Azure API 管理的自托管网关。
安装后心跳结果ok。

enter image description here

我已经部署了一个 Web API 服务进行测试,并尝试使用 Kubernetes 的 DNS 名称 CStandard 约定将后端 URL 配置为:

http://[服务名称].[命名空间].svc.cluster.local/api/v1/WeatherForecast/_me

但是当我尝试在 API 管理中测试调用时,我有

500 Internal Server Error: The remote name could not be resolved

如何设置 Kubernetes 集群中服务的后端 URL?

azure kubernetes azure-api-management api-gateway
1个回答
0
投票

我知道这是一篇旧文章,但很好奇您是否找到了解决方案。我相信这是由于使用了自签名证书。如果您使用以下标头进行 API 调用;

OCP-APIM-TRACE:正确

您应该能够查看网关 Pod 并看到正在调用的后端 URL。在我的所有测试中,这似乎是指向 APIM Gateway Pod 的服务的 svc.cluster.local 地址,然后 APIM Gateway Pod 对您的实际后端服务执行某种代理请求。我运行了 kubectl exec 命令进入网关 Pod,针对相同的后端 url 运行curl。第一次调用因自签名证书错误而失败,这表明它使用的是“test.apim.net”证书。您可以通过在curl命令中添加--insecure标志来看到这一点。

我已阅读文档并按照步骤将自定义证书添加到自托管网关,

https://learn.microsoft.com/en-us/azure/api-management/api-management-howto-ca-certificates#create-custom-ca-for-self-hosted-gateway

但是,我仍然得到相同的结果。自从这篇文章大约一年前创建以来,希望您取得更好的成功。如果没有,也许这可以为任何遇到相同情况的人添加一些额外的指导。

© www.soinside.com 2019 - 2024. All rights reserved.