首页 > 解决方案 > kubernetes 如何决定为 IPAM 调用哪个网络插件?

问题描述

我试图了解 kubernetes 如何知道要调用谁来获取 Pod 的 IP 地址?ConfigMap 中提到过吗?

你能分享任何关于这方面的更多信息吗?

标签: kubernetesflannelproject-calico

解决方案


我认为这篇文章已经很好地解释了:

使用 CNI 自动化 Kubernetes 网络

Kubernetes 使用 CNI 插件来编排网络。每次初始化或删除 POD 时,都会使用默认配置调用默认 CNI 插件。

CNI 插件将创建一个伪接口并附加相关的底层网络,同时设置映射到 Pod 命名空间的 IP 和路由。当它获取有关已部署容器的信息时,它将负责节点上的 IP 地址和 iptables 规则和路由。

该过程本身在不同的 CNI 上有所不同 - 因此诸如如何创建 iptables 规则以及如何通过节点交换路由信息等主题。

写了很多东西,而且已经写好了,所以我将按照您的要求链接指针:

印花布 IPAM 印花布:

如何配置 Pod IP 范围?

使用 Calico IPAM 时,IP 地址是从 IP 池分配的。默认情况下,使用所有启用的 IP 池。但是,您可以在 CNI 网络配置中指定用于 IP 地址管理的 IP 池,或者使用 Kubernetes 注释在每个 Pod 的基础上指定。

带有 IPAM 部分的 Flannel 网络


推荐阅读