ingress访问问题
来源:1-1 微服务-导学
慕先生8199797
2019-02-11
老师 你好,我在自己本地搭建了一个项目的负载均衡服务,遇到了点问题,想想你请教一下;
1)我搭建的服务镜像是项目组制作的一份docker镜像,该镜像是在tomcat中搭建了一个业务服务。
2)项目的部署yaml文件内容如下:
apiVersion: v1
kind: Service
metadata:
labels:
app: testiam
name: testiam
namespace: ingress-nginx
spec:
ports:
- port: 80
protocol: TCP
targetPort: 8080
nodePort: 20004
selector:
app: testiam
type: NodePort
apiVersion: apps/v1
kind: Deployment
metadata:
name: testiam
namespace: ingress-nginx
spec:
selector:
matchLabels:
app: testiam
replicas: 4
template:
metadata:
labels:
app: testiam
namespace: ingress-nginx
spec:
imagePullSecrets:
- name: registry-key
containers:
- name: testiam
image: thundersofthub/iam:lastest
ports:
- containerPort: 80
3) ingress 部署文件内容如下:
kind: Ingress
metadata:
name: iam-ingress
namespace: ingress-nginx
spec:
rules:
- host: kube-xiaotest.com
http:
paths:- path:
backend:
serviceName: testiam
servicePort: 80
4 )服务都部署成功,查看pods内容如下:
NAME READY STATUS RESTARTS AGE IP NODE
nginx-ingress-controller-5f9dd89fcb-dqhxf 1/1 Running 36 13d 10.0.32.79 10.0.32.79
testiam-5ff59c5dcb-4zxl5 1/1 Running 5 13d 172.20.40.193 10.0.32.79
testiam-5ff59c5dcb-mmcgk 1/1 Running 5 13d 172.20.40.207 10.0.32.79
testiam-5ff59c5dcb-psnxf 1/1 Running 5 13d 172.20.40.198 10.0.32.79
testiam-5ff59c5dcb-wrq9t 1/1 Running 6 13d 172.20.40.202 10.0.32.79
5)我可以使用10.0.32.79:20004/访问到tomcat,使用http://10.0.32.79:20004/ThunderIAM-4.92.0112-SNAPSHOT/home访问到业务服务;
6)配置域名是10.0.32.79 kube-xiaotest.com,可以通过
http://kube-xiaotest.com:20004/ 和 http://kube-xiaotest.com:80 两个地址访问到tomcat服务。
我想访问业务服务的时候目前只能通过pods节点的信息访问到:如
kube-xiaotest.com:20004/ThunderIAM-4.92.0112-SNAPSHOT/home 和 http://10.0.32.79:20004/ThunderIAM-4.92.0112-SNAPSHOT/home 访问到业务服务
- path:
但是这样的话ingress没有使用到,我想通过Ingress访问业务服务的时候该如果访问呢?
1回答
-
刘果国
2019-02-12
"6)配置域名是10.0.32.79 kube-xiaotest.com,可以通过
http://kube-xiaotest.com:20004/ 和 http://kube-xiaotest.com:80 两个地址访问到tomcat服务。"http://kube-xiaotest.com:80 这种方式就是通过ingress访问到的呀。
(本质上就是把你的域名解析到运行了ingress-nginx的服务器上)
00
相似问题