Kubernetes通过自定义主机在多条路径上入侵导致404
我是新来的Kubernetes通过自定义主机在多条路径上入侵导致404,kubernetes,kubernetes-ingress,Kubernetes,Kubernetes Ingress,我是新来的ingres。我遵循了为同一个自定义主机构建具有多条路径的简单扇出入口。但是,它返回404。我无法找出我的配置有什么问题 我已经在minikube中启用了入口&将localhost log.com添加到/etc/hosts 以下是我的一些配置YAML: 部署.yaml 服务中心 亚马尔酒店 如果使用kubectl port forward查询kibana服务,则可以访问kibana网站 port forward -> <minikube ip>:nodePort -&
ingres
。我遵循了为同一个自定义主机构建具有多条路径的简单扇出入口。但是,它返回404。我无法找出我的配置有什么问题我已经在minikube中启用了入口&将
localhost log.com
添加到/etc/hosts
以下是我的一些配置YAML:
部署.yaml
服务中心
亚马尔酒店
如果使用kubectl port forward
查询kibana
服务,则可以访问kibana网站
port forward -> <minikube ip>:nodePort -> success
根据我的理解,我想要http://localhost-log.com/kibana
=>:80
,但它似乎不正确。
它重定向到http://localhost-log.com/app/kibana
,获取404。
或者我误解了重写规则的概念,我需要帮助
更新:
如果我将servicePort更改为80,路径为
/logger
,它可以工作,但是/kibana
仍然返回默认后端-404
请也为logger svc
服务添加YAML。即使该部分正在工作,将其与记录器svc
服务进行比较也是很有用的。您使用类型:NodePort
而不是ClusterIP有什么原因吗?当您将其暴露在节点的端口上并通过入口时?请提供更多详细信息:记录器svc yaml
,描述入口
,以及kubectl get svc的输出,pods-o宽
。注意你的节点端口是32561
apiVersion: v1
kind: Service
metadata:
name: kibana
labels:
service: kibana
spec:
type: NodePort
selector:
run: kibana
ports:
- port: 80
targetPort: 5601
nodePort: 32561
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress-test
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- host: localhost-log.com
http:
paths:
- path: /logger
backend:
serviceName: logger-svc
servicePort: 80
- path: /kibana
backend:
serviceName: kibana
servicePort: 80
port forward -> <minikube ip>:nodePort -> success
Name: ingress-test
Namespace: logging
Address: 10.0.2.15
Default backend: default-http-backend:80 (172.17.0.9:8080)
Rules:
Host Path Backends
---- ---- --------
localhost-log.com
/logger logger-svc:80 (172.17.0.4:30080)
/kibana kibana:80 (172.17.0.7:5601)
Annotations:
kubectl.kubernetes.io/last-applied-configuration: {
"apiVersion": "extensions/v1beta1",
"kind": "Ingress",
"metadata": {
"annotations": {
"nginx.ingress.kubernetes.io/rewrite-target": "/"
},
"name": "ingress-test",
"namespace": "logging"
},
"spec": {
"rules": [
{
"host": "localhost-log.com",
"http": {
"paths": [
{
"backend": {
"serviceName": "logger-svc",
"servicePort": 80
},
"path": "/logger"
},
{
"backend": {
"serviceName": "kibana",
"servicePort": 80
},
"path": "/kibana"
}
]
}
}
]
}
}