我在minikube集群中有下面的设置
中
名称: opaapp和containerPort: 9999
apiVersion: v1
kind: Service
metadata:
name: opaapp
namespace: default
labels:
app: opaapp
spec:
selector:
app: opaapp
ports:
- name: http
port: 9999
targetPort: 9999
type: NodePortapiVersion: networking.k8s.io/v1beta1 # for versions before 1.14 use extensions/v1beta1
kind: Ingress
metadata:
name: opaapp-ingress
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /$1
spec:
rules:
- host: opaapp.info
http:
paths:
- path: /
backend:
serviceName: opaapp
servicePort: 9999我有如下所示的安装主机文件
172.17.0.2 opaapp.info现在,如果我按下面的方式访问服务
http://opaapp.info:32746/api/ping:我要拿回回复
但如果我试图访问
http://opaapp.info/api/ping:获取404个错误
无法在配置上找到错误
发布于 2020-04-23 16:29:17
nginx入口控制器是通过NodePort 32746公开的,这意味着nginx不监听主机(172.17.0.2)网络中的端口80/443,而在与主机网络不同的Kubernetes网络上,nginx监听端口80/443。因此,通过http://opaapp.info/api/ping访问它是行不通的。为了使它按照您期望的方式工作,需要使用hostNetwork: true选项部署nginx入口控制器,以便它可以在主机(172.17.0.2)网络中直接侦听80/443端口,这可以按照讨论的here进行。
https://stackoverflow.com/questions/61391806
复制相似问题