Kubernetes 集群核心组件与架构全解析
1. Kubernetes 服务
1.1 服务的基本概念
在 Kubernetes 中,“服务(Service)”这个名称并不能完全描述其实际功能。服务的主要作用是将流量路由到 Pod 上,可以说它是连接各个 Pod 的纽带。
假设我们有一个典型的前后端应用,前端 Pod 通过后端 Pod 的 IP 地址与后端进行通信。如果后端的某个 Pod 挂掉了,由于 Pod 是短暂存在的,我们就会失去与后端的通信,而且新 Pod 的 IP 地址与挂掉的 Pod 不同,还需要重新配置应用以使用新的 IP 地址。而服务就能解决这类问题。
服务是一个逻辑对象,它会告知 kube - proxy 根据其背后的 Pod 创建 iptables 规则。服务会配置其端点(即服务背后的 Pod),就像部署对象通过选择器字段和 Pod 标签来控制 Pod 一样。
1.2 服务触发的组件
服务不仅会让 kube - proxy 创建流量路由规则,还会触发 kube - dns。kube - dns 是一组运行在集群上的带有 SkyDNS 容器的 Pod,它提供 DNS 服务器和转发器,会为服务甚至有时为 Pod 创建记录,方便使用。每当创建一个服务时,会以 service - name.namespace.svc.cluster.local 的形式创建一个指向该服务内部集群 IP 地址的 DNS 记录。
1.3 服务类型
Kubernetes 中有几种不同类型的服务,以下是详细介绍:
| 服务类型 | 描述 |
Kubernetes集群核心组件与架构解析
超级会员免费看
订阅专栏 解锁全文
1151

被折叠的 条评论
为什么被折叠?



