我部署了一个AWS ALB控制器,并在EKS集群中使用入口资源创建侦听器。
我遵循的步骤如下:
- 我有一个名为
first-test-api
的服务入口,所有这些都很好 - 我部署了一个新的Helm版本[
first
],只需将图表从test-api
重命名为main-api
。现在是first-main-api
- 注意似乎打破了k8s资源,但是
- AWS ALB中的
test-api.mydomain.com
侦听器被困在旧服务上
以前有人遇到过这样的事情吗?
我可以手动删除侦听器,但我不想。我想知道发生了什么,为什么没有自动发生:(
编辑:
入口具有启用删除保护的ALB注释。
我将提供一些关于我要研究的事情的一般建议,但最好详细介绍一个小例子。
是的,ALB控制器应自动管理后端的更改。
我建议忽略舵图,查看实际物体:
kubectl get ing -n <namespace>
显示您期望的入口kubectl get ing -n <ns> <name of ingress> -o yaml
指向正确的/新的服务kubectl get svc -n <ns> <name of new svc>
显示新服务kubectl get endpoints -n <ns> <name of new svc>
显示您期望的吊舱
然后是直觉。
- 如果您希望新服务和旧服务提供不同的服务,请检查新服务中的标签是否与旧服务中的不同
- 获取ALB控制器的日志。您将看到正在注册/注销的内容。有时会出错。特别是当角色节点/服务帐户没有适当的IAM权限时
如果您用更多细节扩展问题,很乐意修改答案。