K8S对外网络访问

对外发布服务的意义
对外提供服务:  nodePort
对外提供服务:Ingress
1. nodePort:发布服务
kubectl expose 资源类型  资源名称  –type=NodePort  –port=80  –target-port=80  –name=服务名称
[root@master ~]# vim appache.yaml
……
selector:                     #标签选择器
app: apache                #后端服务资源
type: NodePort            #对照持续化存储,资源类型用NodePort
[root@master ~]# kubectl delete -f appache.yaml
[root@master ~]# kubectl create -f appache.yaml   //删除+创建
[root@master ~]# kubectl get service //映射到任意一节点的30121端口
NAME             TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)        AGE
apache-service   NodePort    10.254.254.110   <none>        80:30121/TCP   3s
[root@ecs-proxy ~]# curl http://192.168.1.20:30121/info.php    //验证
<pre>
nginx_host:  10.254.1.2

2.Ingress对外服务
概念:公开了从集群外部到集群内services路由,可以将ingress配置为提供服务外部可访问URL,负债均衡流量;ingress控制器通常由负债均衡器来实现。
a.部署
上传2镜像到仓库(backend.tar,nginx-ingress-controller.tar)
b.修改配置文件(mandatory.yaml)
[root@master ~]# vim  mandatory.yaml
34行:image: repo1:5000/defaultbackend:1.4
295行:image: repo1:5000/nginx-ingress-controller:0.19.0
298行: – –apiserver-host=http://192.168.1.25:8080
[root@master ~]# kubectl create -f mandatory.yaml    //创建ingress
[root@master ~]#kubectl -n ingress-nginx  get pod    //查看2个都运行起来
[root@master ~]#kubectl -n ingress-nginx  get service  //查看nginx的80和443端口
c.运行服务
[root@master ~]#vim ingress-app.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: my-app
namespace: default
annotations:
kubernetes.io/ingress.class: “nginx”
spec:
backend:
serviceName: apache-service       //需要对外的服务名
servicePort: 80
[root@master ~]# kubectl create -f ingress-app.yaml      //创建服务,大约1分钟
[root@master ~]# kubectl get ingress      //查看ingress,192.168.1.22对外端口
NAME      HOSTS     ADDRESS        PORTS     AGE
my-app    *           192.168.1.22           80        38s
[root@ecs-proxy ~]# watch -n 5 curl 192.168.1.22/info.php
<pre>
nginx_host:     10.254.3.2

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇