首页 新闻 会员 周边 捐助

如何理解 k8s 中的 Service 概念

0
悬赏园豆:50 [已解决问题] 解决于 2019-12-09 16:12

Kubernetes 中有很多概念,理解这些概念是用好 k8s 的基础,之前在博问中提问过 如何简单易记地理解 k8s 中的 pod 概念 ,今天问一下如何理解 Service 的概念。

A friendly introduction to Kubernetes 这篇文章中是这么解释的:

Service is used to define a logical set of Pods and related policies used to access them.

dudu的主页 dudu | 高人七级 | 园豆:30778
提问于:2019-12-07 11:12
< >
分享
最佳答案
0

概念

微服务中的一个服务。

开发视角:服务=服务名:端口号就可以定位一个服务。

运维视角:再加一个服务IP(VIP一旦创建出来就不会变了)、背后一堆Pod IP、或者手动指定一个外部一个endpoint(比如db,或者外部服务)。

完整视角:k8s的服务是一个提供了服务发现,负载均衡(可以用默认的,也可以自己处理)机制的一个概念。

使用

对于内部服务的消费方:比如是http服务,那么就是一个http://api:80

对于需要公开到集群外部:通常使用ingress或者搭配外部的lb,或者直接映射到集群机器上某个端口号

收获园豆:50
Timetombs | 老鸟四级 |园豆:3959 | 2019-12-07 16:51

今天在 stackoverflow 上看到了一句话,从网络角度解释了 service ,对我理解 service 帮助很大:

The portal network (aka service network, cluster network) has no network interface but is a collection of iptables rules managed by kube-proxy.

dudu | 园豆:30778 (高人七级) | 2019-12-22 13:58

@dudu: 一语道出了底层实现的原理

Timetombs | 园豆:3959 (老鸟四级) | 2019-12-22 15:07
dudu | 园豆:30778 (高人七级) | 2020-02-08 22:14
其他回答(1)
0

An introduction to Kubernetes中的一个解释:

A Kubernetes Service provides you with a stable endpoint which can be used to direct traffic to the desired Pods even as the exact underlying Pods change due to updates, scaling, and failures.

dudu | 园豆:30778 (高人七级) | 2019-12-09 16:14
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册