当我删除服务并重新创建时,我注意到入口的状态指示 Some backend services are in UNKNOWN state
。
经过一些试验和错误,它似乎与网络端点组(NEG)的名称有关。与新服务绑定的 NEG 具有不同的名称,但入口使用旧的 NEG 作为后端服务。
然后,我发现在我重新创建一个 Ingress 后它们又可以工作了。
我想尽可能避免停机以重新创建入口。
有没有办法在重新创建服务时避免重新创建入口?
我的服务
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
答案 0 :(得分:0)
如果您想在服务消失时重新使用入口,您可以编辑其配置,而不是删除并重新创建它。
要重新配置 Ingress,您必须通过编辑配置来更新它,如 official Kubernetes documentation 中指定的那样。 为此,您可以执行以下步骤:
kubectl edit ingress test
kubectl describe ingress test