![](/img/trans.png)
[英]Is it possible to measure response time of an API in EKS with Istio
[英]Unable to access api hosted in EKS and routed via istio-ingressgateway with NLB
AWS 的新手,试图公开 API 并遇到问题。
我有一个 API 部署到 AWS 的 EKS 集群,我的 API 连接到 clusterIP 服务。 该 clusterIP 服务附加到一个Virtual Service
(VS),公开 API 的端口和一个以路由为前缀的固定主机名,该VS
连接到一个Gateway
( HTTP
), HTTPS
所有(*星号作为主机)连接。 发布我们所有的 HTTP 和 HTTPS 请求都映射到istio-system
命名空间下托管的istio-ingressgateway
下的 2 个节点端口。 现在,这 2 个暴露的nodePorts
被在相同 nodePorts 上注册的目标组使用,并且这些目标组被我们的NLB
监听。 NLB 通过其 NLB 的DNS Name
CNAME
名称(也尝试使用A
)类型连接到 Route53 中的Route53
条目。 现在,我正在尝试使用上述设置从浏览器访问我的 API,但每当我尝试(使用 A 型)时,我都会收到500: internal server error
,但我的 API 的 pod 上没有错误。 而CNAME
没有结果,它只是给出超时。
我遵循了与另一个 API 在同一集群上部署的相同过程,但另一个 API 工作正常,而我的 API 无法访问。
编辑 1 :尝试使用CloudWatch
捕获错误,但我们得到了信息量不大的错误:
{
"requestId": "e0etYh9BvHcES6A=",
"IP": "<ip-address>",
"requestTime": "16/Jan/2023:05:19:17 +0000",
"httpMethod": "GET",
"routeKey": "$default",
"status": "500",
"protocol": "HTTP/1.1",
"responseLength": "35"
}
编辑 2:能够使其工作。 解决方案:由于我们的 NLB 配置了一个internal
方案,我们需要将它与 API 网关连接,除了route53
记录需要配置A
方案,一旦更改到位,我们就可以访问我们的 API从浏览器。
问题:
istio-system
-system 下通过 istio-ingressgateway 路由一项服务? 我们需要为另一个 API 写一个新的吗?看起来问题与使用内部方案配置的 NLB 以及未连接到 API 网关有关。 Route 53 记录需要配置 A 方案而不是 CNAME。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.