kubernetes pod设置静态IP或者IP池

kubernetes pod设置静态IP或者IP池,第1张

Pod一般不建议设置静态IP地址,若想要实现设置静态IP,可以参考下面的方法。像亚马逊、阿里云等厂家是支持静态IP的,但如果是自己的私有云,可以参考下面的方法。这里使用的是calico网络方案,其他的网络方案,好像并不支持,更详细的 *** 作,可以看看calico的官方文档。

IP Pool资源定义

IPPool资源yaml定义

字段说明

metadata:

spec:

blockSize说明

请在 V3.3.0 版本后使用blockSize

IPv4 26和IPv6 122的默认块大小为64个地址的块。这允许将地址按组分配给在同一主机上运行的工作负载。通过对地址进行分组,主机之间以及与其他BGP对等方之间交换的路由更少。如果主机在一个块中分配所有地址,则将为其分配一个附加块。如果没有更多可用的块,则主机可以从分配给其他主机的块中获取地址。为借用的地址添加了特定的路由,这会影响路由表的大小。

将块大小从默认值增加(例如,使用24IPv4为每个块提供256个地址)意味着每个主机更少的块,并且可能会减少路由。但是,请尝试确保池中至少有与主机一样多的块。

从默认值减小块大小(例如,使用28IPv4为每个块提供16个地址)意味着每个主机有更多块,因此可能有更多路由。如果它允许块在主机之间更公平地分布,那么这将是有益的。

关于cidr和blockSize设置

比如你新增一个IPPool,cidr设置为192.169.0.0/29,在没有设置blockSize情况下,默认是/26的blockSize,这样是不允许的,192.169.0.0/29可用地址为8个,而默认blockSize为26将会把IP段分为64块,没有足够的IP,所以是无效的,所以blockSize应该等于大于子网掩码。

创建的IPPool,可以在原有的IPPool中某一子网,比如

nodeSelector说明

以下所有的语法,都可以使用&&或||进行组合

kubernetes设置指定IP的场景及方法:

主要通过annotations指定。

基于namespace或者每个pod指定IP池

指定静态IP地址

说明:cni.projectcalico.org/ipAddrsNoIpam:绕过IPAM分配给Pod的IPv4和/或IPv6地址的列表。任何IP冲突和路由都必须手动或由其他系统来处理。Calico仅在其IP地址属于Calico IP池内时才将路由分配到Pod。如果分配的IP地址不在Calico IP池中,则必须确保通过另一种机制来处理到该IP地址的路由。

申请浮动IP

基于node节点标签分配IP

IPPool生效优先顺序

如果将这些方法中的一种以上用于IP地址分配,则它们将具有以下优先级,其中1为最高优先级:

基于namespace指定IP池

查看当前存在的IP池

创建新的IP池

创建新的namespace,并指定IP池

创建应用测试

注意namespace设置test-ippool

为pod指定静态IP地址或地址范围

指定地址范围

创建IP地址池

创建应用测试

注意spec.template.metadata.annotations指定了使用的IPPool

Pod设置静态IP

创建应用

虽然官方说名cni.projectcalico.org/ipAddrs:后面是IPv4或IPv6列表,实际并不支持,仅可以设置一个IP地址。所以Pod副本数超过1个是不行的。

设置的IP地址必须包含在已存在的IPPool中

根据节点标签分配IP

删除或禁用已存在的IPPool

如果不禁用或删除,创建的Pod也有可能分配到其他IPPool中的地址段

禁用IPPool

删除IPPool

给节点打上标签

创建IPPool

创建应用测试

设置hotspot方法如下:

网关路由器的网络参数如下:

WAN 口对应外网IP 为10.200.15.200/24,网关为10.200.15.1

LAN 口对应内网IP 为192.168.1.1/24

DNS:61.139.2.69

根据这些参数需要先配置好IP 地址、网关和DNS,并打开DNS 缓存等。

进入 ip address 配置IP 地址:

进入 ip route 配置网关:

进入 ip firewall nat 设置好NAT 伪装:

进入 ip dns 配置DNS 缓存:

总结配置Hotspot 参数的基本流程是:

1、先进入ip hotspot user profile 设置用户分组规则

2、然后在ip hotspot user 添加用户的帐号

3、进入ip hotspot server profile 配置服务器规则

4、在ip pool 中分配IP 地址段,根据需要启用DHCP 服务

5、在ip hotspot server 添加并启用hotspot 服务


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11609072.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存