当我删除服务并重新创建时,我注意到入口的状态指示Some backend services are in UNKNOWN state
经过一些尝试和错误,它似乎与网络端点组(NEG(的名称有关。与新服务绑定的NEG具有不同的名称,但入口获得一个旧的NEG作为后端服务。然后,我发现在我重新创作了一个英格丽丝之后,它们又起作用了
我希望避免停机时间,以便尽可能多地重新创建入口
在重新创建服务时,是否有方法避免重新创建入口?
我的服务
apiVersion: v1
kind: Service
metadata:
name: client-service
labels:
app: client
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 80
protocol: TCP
selector:
app: client
我的入口
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: ingress
annotations:
kubernetes.io/ingress.global-static-ip-name: static-ip-name
networking.gke.io/managed-certificates: managed-certificate
spec:
rules:
- http:
paths:
- path: /*
backend:
serviceName: client-service
servicePort: 80
如果您想在服务消失时重新使用入口,您可以编辑其配置,而不是删除和重新创建它。
要重新配置Ingress,您必须按照Kubernetes官方文档中的规定,通过编辑配置来更新它。为此,您可以执行以下步骤:
- 发出命令
kubectl edit ingress test
- 执行必要的更改,如更新服务配置
- 保存更改
- kubectl将更新资源,并在负载均衡器上触发更新
- 通过执行命令
kubectl describe ingress test
验证更改