我已在AWS EKS集群上安装了Ambassador Api网关。它按预期工作。 现在我想集成 Istio 服务网格。
我正在按照大使官方文件中给出的步骤进行操作。 https://www.getambassador.io/docs/edge-stack/latest/howtos/istio/#istio-integration。
但是在集成 Istio 后,一些大使 pod 不断崩溃。 3 个 pod 中,一次只有 1 个显示健康。
注意:Istio side car 已成功集成到所有大使 Pod 中。我尝试过大使 2.1.1 和 2.1.2。但两者都有同样的问题。我无法让所有大使都保持健康。 我的EKS版本是v1.19.13-eks
错误如下:
time="2022-03-02 12:30:17.0687" level=error msg="Post \"http://localhost:8500/_internal/v0/watt?url=http%3A%2F%2Flocalhost%3A9696%2Fsnapshot\": dial tcp 127.0.0.1:8500: connect: connection refused" func=github.com/datawire/ambassador/v2/cmd/entrypoint.notifyWebhookUrl file="/go/cmd/entrypoint/notify.go:124" CMD=entrypoint PID=1 THREAD=/watcher
如果上述文档不足以将 Istio 与 AWS EKS 上的大使集成,请告诉我
编辑 1:在进一步调查中,我发现当我尝试将 Istio 与 PeerAuthentication STRICT 模式集成时出现问题。默认(宽容)模式不存在此类问题。
但是启用STRICT模式后又出现了一个问题,现在无法连接redis服务了
经过一些调查和测试,我找到了使用 PeerAuthentication STRICT 模式将 Istio 与大使集成的方法。
修复: 使用 https 更新 REDIS_URL 环境变量
来自:
REDIS_URL: ambassador-redis:6379
到
REDIS_URL: https://ambassador-redis:6379