我正在使用教程在本地尝试 kuberenets,但遇到了一些问题。
我使用 Docker 在 node js 中构建了几个片段的图像,然后用它在 microk8s 中部署。没有入口控制器,一切都运行良好。容器是客户端 - 端口 3000(反应应用程序)帖子 - 端口 4000 评论 - 端口 4001 审核...
我在 microk8s 中启用入口后应用了这个配置
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: ingress-srv
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/use-regex: 'true'
spec:
rules:
- host: posts.com
http:
paths:
- path: /posts/create
backend:
serviceName: posts-clusterip-srv
servicePort: 4000
- path: /posts
backend:
serviceName: query-clusterip-srv
servicePort: 4002
- path: /posts/?(.*)/comments
backend:
serviceName: comments-clusterip-srv
servicePort: 4001
- path: /?(.*)
backend:
serviceName: client-clusterip-srv
servicePort: 3000
我确保编辑主机文件以设置
127.0.0.1 posts.com
当我检查 k8s 的入口时这是我的结果
请指导我如何解决此问题或我的设置中出了什么问题。它工作过一次,当我用 skaffold 再次尝试时,(它部署 pod 没有任何问题,我仍然可以通过 NodePort 服务访问)当我在浏览器中转到 posts.com 时它不起作用。请告诉我出了什么问题。
PS。当我 ping post.com 时,它也指向 127.0.0.1