本文主要是介绍kubernetes视频教程笔记 (19)-代理模式的分类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、VIP 和 Service 代理
在 Kubernetes 集群中,每个 Node 运行一个 kube-proxy 进程。 kube-proxy 负责为 Service 实现了一种 VIP(虚拟 IP)的形式,而不是 ExternalName 的形式。 在 Kubernetes v1.0 版本,代理完全在 userspace。在 Kubernetes v1.1 版本,新增了 iptables 代理,但并不是默认的运行模式。 从 Kubernetes v1.2 起,默认就是 iptables 代理。 在 Kubernetes v1.8.0-beta.0 中,添加了 ipvs 代理
在 Kubernetes 1.14 版本开始默认使用 ipvs 代理 在 Kubernetes v1.0 版本, Service 是 “4层”(TCP/UDP over IP)概念。
在 Kubernetes v1.1 版本,新增了 Ingress API(beta 版),用来表示 “7层”(HTTP)服务 !
为何不使用 round-robin DNS?
二、userspace 代理模式
三、iptables 代理模式
四、ipvs 代理模式
这种模式,kube-proxy 会监视 Kubernetes Service 对象和 Endpoints ,调用 netlink 接口以相应地创建 ipvs 规则并定期与 Kubernetes Service 对象和 Endpoints 对象同步 ipvs 规则,以确保 ipvs 状态与期望一 致。访问服务时,流量将被重定向到其中一个后端 Pod
与 iptables 类似,ipvs 于 netfilter 的 hook 功能,但使用哈希表作为底层数据结构并在内核空间中工作。这意 味着 ipvs 可以更快地重定向流量,并且在同步代理规则时具有更好的性能。此外,ipvs 为负载均衡算法提供了更 多选项,例如:
- rr :轮询调度
- lc :最小连接数
- dh :目标哈希
- sh :源哈希
- sed :最短期望延迟
- nq : 不排队调度
内容来自https://study.163.com/course/courseMain.htm?courseId=1209568805
这篇关于kubernetes视频教程笔记 (19)-代理模式的分类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!