kubernetes Service 对外暴露应用

Service 对外暴露应用

Service 对外暴露端口的时候其实也做了一个负载均衡的效果

kubectl expose deployment [deployment 名字]–port=[对外提供端口] --target-port=[内部本身端口] --type=NodePort

说明:

– port 是对外提供的端口
–target-port 是内部本身的端口,
–type=NodePort方式暴露

注意端口不要乱写,要和你项目端口对上才行,不然就访问不了.比如说你原来项目端口就是8080,那么这个就得写8080端口,不然的话,就会访问不到

[root@zjj101 k8s]# kubectl  expose deployment javademo1 --port=8080  --target-port=8080 --type=NodePort
service/javademo1 exposed

查看对外暴露的端口

kubectl get svc

[root@zjj101 k8s]# kubectl  get svc
NAME         TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
javademo1    NodePort    10.105.149.218   <none>        8080:31420/TCP   5s
kubernetes   ClusterIP   10.96.0.1        <none>        443/TCP          46h
[root@zjj101 k8s]#

访问就能访问到了

查看到javademo1对外是31420端口,那么你就可以用集群中任何机器的31420端口都能访问到

访问过程中会给你平均分摊到这个pod的多个副本里面

image-20210228175354234

猜你喜欢

转载自blog.csdn.net/qq_41489540/article/details/114290158