k8s学习(1)- 前言
k8s 规划
·
k8s学习(1)- 前言
集群网段的划分
1,主机节点网段
192.168.1.0/24
2,Service网段
service 是pod 的代理,service用于集群容器通信。
10.96.0.0/16
3,Pod网段,相当于容器的IP
pod是容器的集合
10.244.0.0/16
三个网段不能重复冲突
三个网段不能重复冲突
三个网段不能重复冲突
可以通过在线IP地址/子网掩码计算与转换工具计算:
所以一般的推荐是,直接第一个开头的就不要重复,比如你的宿主机是192开头的,那么你的service可以是10.96.0.0/12.
如果你的宿主机是10开头的,就直接把service的网段改成192.168.0.0/16
如果你的宿主机是172开头的,就直接把pod网段改成192.168.0.0/12
注意搭配,均为10网段、172网段、192网段的搭配,第一个开头数字不一样就免去了网段冲突的可能性,也可以减去计算的步骤。
集群资源配置(高可用)
1. 学习环境(用于k8s基础的学习)
a) 2核2G 磁盘40G足矣,可以采用单master多Node,或者多Master无Node(Master节点也可以充当Node节点)
2. 实战环境(用于k8s实战学习,从进阶部分开始)
a) 2核4G+磁盘40G+40G,可以采用单Master多Node,
或者多Master多Node(Master节点也可以充当Node节点,总计可用node节点数为5即可)
3. 企业测试环境:
a) Master节点(尽量三台实现高可用,可以将某台Master禁止调度):8核16G+ 磁盘分为系统盘(路径:/,大小100G+)、Docker数据盘(/var/lib/docker,200G+)
b) Etcd数据盘(/var/lib/etcd,50节点50G+,150节点150G+,etcd节点可以和Master节点同一个宿主机,三个节点实现高可用)
c) Node节点:无特殊要求
d) 注意:测试环境所有的数据盘可以无需区分,有条件最好单独
4. 企业生产环境:
a) Master节点:三个节点实现高可用(必须)
i. 节点数:0-100 8核16+
ii. 节点数:100-250 8核32G+
iii. 节点数:250-500 16核32G+
b) etcd节点:三个节点实现高可用(必须),有条件存储分区必须高性能SSD硬盘,没有SSD也要有高效独立磁盘
i. 节点数:0-50 2核8G+ 50G SSD存储
ii. 节点数:50-250 4核16G+ 150G SSD存储
iii. 节点数:250-1000 8核32G+ 250G SSD存储
c) Node节点:无特殊要求,主要是Docker数据分区、系统分区需要单独使用,不可以使用同一个磁盘,系统分区100G+、Docker数据分区200G+,有条件使用SSD硬盘,必须独立于系统盘
d) 其他:集群规模不大可以将etcd和master放置于同一个宿主机,
也就是每个master节点部署k8s组件和etcd服务,但是etcd的数据目录一定要独立,并且使用SSD,
两者部署在一起需要相对增加宿主机的资源,个人建议生产环境把master节点的资源一次性给够,
此处的费用不应该节省,可以直接使用16核32G或者64G的机器,之后集群扩容就无需扩容master节点的资源,减少风险。
其中master节点和etcd节点的系统分区100G即可。
注意事项
版本选择,第三个版本号大于5的(比如1.23.6)
更多推荐
已为社区贡献2条内容
所有评论(0)