尽管服务已就绪+Pod(";没有任何活动终结点。";),nginx-inress仍停止工作 [英] nginx-ingress stopped working, despite Ready service + pod ("does not have any active Endpoint.")
本文介绍了尽管服务已就绪+Pod(";没有任何活动终结点。";),nginx-inress仍停止工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已将我的microk8s设置转移到新服务器,但发现曾经有效的入口设置停止工作。
我正在运行这个最小的horami-app:
apiVersion: apps/v1
kind: Deployment
metadata:
name: whoami
namespace: default
labels:
app: whoami
spec:
selector:
matchLabels:
app: whoami
template:
metadata:
labels:
app: whoami
spec:
containers:
- name: whoami
image: containous/whoami
ports:
- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: whoami
namespace: default
spec:
selector:
app: whoami
ports:
- protocol: TCP
port: 80
targetPort: 80
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: whoami
namespace: default
annotations:
kubernetes.io/ingress.class: public
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: whoami
port:
number: 80
Pod已启动并正在运行,服务已正确公开它,但入口不工作:
kubectl get services whoami
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
whoami ClusterIP 10.152.183.184 <none> 80/TCP 26m
curl 10.152.183.184
Hostname: whoami-567b85d54d-qbbd5
IP: 127.0.0.1
IP: ::1
IP: 10.1.76.7
IP: fe80::e850:aaff:fe72:91c4
RemoteAddr: 192.168.0.102:21910
GET / HTTP/1.1
Host: 10.152.183.184
User-Agent: curl/7.68.0
Accept: */*
kubectl get ingress whoami
NAME CLASS HOSTS ADDRESS PORTS AGE
whoami <none> * 127.0.0.1 80 28m
nginx-inress-control日志显示以下条目:
controller.go:1076] Service "default/whoami" does not have any active Endpoint.
但话又说回来,通过ClusterIP访问是有效的,因此Pod和服务都在做他们的工作。
推荐答案
我真的不知道它是如何发生的,但终结点与Pod IP不匹配。
我使用indkubectl delete endpoints whoami
手动删除了终结点,使用现在正确的IP重新创建了终结点,现在入口似乎可以工作。
这篇关于尽管服务已就绪+Pod(";没有任何活动终结点。";),nginx-inress仍停止工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文