kubernetes - K8 LB 网络
问题描述
我了解 Loadbalancer 服务类型的作用。即,它会在您的云实例中创建一个 LB 实例,创建 NodePorts,并将流量发送到 VIP 到 NodePorts。
但是,就 kubectl 和 LB 启动而言,这实际上是如何工作的。这是 CNI 中的一个结构吗?K8 的哪一部分发送请求并指示云提供商创建 LB?
谢谢,
解决方案
在这种情况下,CloudControllerManager负责创建。CloudControllerManager 包含一个 ServiceController,它监听 Service Create/Update/Delete 事件并根据 Service 的配置触发 LoadBalancer 的创建。
一般来说,在 Kubernetes 中,您有声明式创建资源(例如服务)的概念,其中状态存储在状态存储(Kubernetes 中的 etcd)中。控制器负责确保实现该状态。在这种情况下,状态是通过在云提供商中创建负载均衡器并将其指向 Kubernetes 集群来实现的。
推荐阅读
- c++ - 无法手动调用 std::string 的析构函数
- c++ - 更改常量 Mat opencv 的值
- vuejs2 - 如何为 v-treeview 添加右键单击事件以在 vuetify 中打开菜单?
- java - MapReduce 项目的 Mapper 部分中的多个错误
- functional-programming - 捕获函数组合中参数的排序特征的术语
- java - 如何处理 FileSystemAlreadyExistsException?
- javascript - 如何检查 SET 和 WHERE 上是否存在文档
- javascript - Rotate picture according to Cursor move direction
- vuejs2 - Filter list by date and search through list
- ios - SceneKit 检测 SCNode 何时不移动