kubernetes services介绍

type:
serice的类型,常用的有NodePort、ClusterIP.
NodePort:定义服务可以提供给集群外部访问;
ClusterIP:定义服务只能在集群内部访问;

protocol:
service 使用的协议,常用的有:TCP UDP http

name: 
可以给port定义一个name;
如果名为"my-service.my-ns"的Service 有一个协议为TCP的名叫"http"的端口,你可以对"_http._tcp.my-service.my-ns"做一次DNS SRV查询来发现”http”的端口号。

port:
即,这里的port表示:service暴露在cluster ip上的端口,<cluster ip>:port 是提供给集群内部客户访问service的入口。

nodePort:
首先,nodePort是kubernetes提供给集群外部客户访问service入口的一种方式(另一种方式是LoadBalancer),所以,<nodeIP>:nodePort 是提供给集群外部客户访问service的入口。

targetPort:
targetPort很好理解,targetPort是pod上的端口,从port和nodePort上到来的数据最终经过kube-proxy流入到后端pod的targetPort上进入容器。

port、nodePort总结
总的来说,port和nodePort都是service的端口,前者暴露给集群内客户访问服务,后者暴露给集群外客户访问服务。从这两个端口到来的数据都需要经过反向代理kube-proxy流入后端pod的targetPod,从而到达pod上的容器内。
使用calico等overlay网络可能导致hostport不可用,可以增加“hostNetwork: true” 配置启用host模式 (在pod中定义)

参考:

https://kubernetes.io/docs/concepts/services-networking/service/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值