《Kubernetes部署篇:基于基于Ubuntu 22.04+x86_64架构CPU使用containerd部署K8S 1.33.3容器版集群(多主多从)》

总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:企业级K8s集群运维实战


一、架构图

如下图所示:
在这里插入图片描述


二、环境信息

基于x86_64+aarch64架构使用containerd部署K8S 1.33.3集群资源合集(三主多从)
在这里插入图片描述


2、部署规划

云平台 主机名 K8S版本 系统版本 CPU架构 内核版本 I IP地址 备注
天翼云 k8s-master-58 1.33.3 Ubuntu 222.04.2 LTS (Jammy Jellyfish) x86_64 5.15.0-76-generic 192.168.0.58 control-plane节点
天翼云 k8s-master-59 1.33.3 Ubuntu 222.04.2 LTS (Jammy Jellyfish) x86_64 5.15.0-76-generic 192.168.0.59 control-plane节点
天翼云 k8s-master-60 1.33.3 Ubuntu 222.04.2 LTS (Jammy Jellyfish) x86_64 5.15.0-76-generic 192.168.0.60 control-plane节点
天翼云 k8s-worker-61 1.33.3 Ubuntu 222.04.2 LTS (Jammy Jellyfish) x86_64 5.15.0-76-generic 192.168.0.61 control-plane节点
天翼云 k8s-worker-62 1.33.3 Ubuntu 222.04.2 LTS (Jammy Jellyfish) x86_64 5.15.0-76-generic 192.168.0.62 control-plane节点
天翼云 - - - - - 192.168.0.100 vip(虚拟ip)
天翼云 k8s-lb-01 - Ubuntu 222.04.2 LTS (Jammy Jellyfish) x86_64 5.15.0-76-generic 192.168.0.63 Nginx + keepalived
天翼云 k8s-lb-02 - Ubuntu 222.04.2 LTS (Jammy Jellyfish) x86_64 5.15.0-76-generic 192.168.0.64 Nginx + keepalived

3、集群网段

宿主机 集群Pod网段 集群Service网段
172.18.1.0/24 10.48.0.0/16 10.96.0.0/16

4、基础软件版本

软件 版本 安装方式
kubeadm 1.33.3 二进制
kubectl 1.33.3 二进制
kubelet 1.33.3 二进制
cri-containerd-cni 1.7.28 二进制
ipvsadm 1:1.31-1build2 apt
ipset 7.15-1build1 apt
conntrack 1:1.4.6-2build2 apt
socat 1.7.4.1-3ubuntu4 apt
ebtables 2.0.11-4build2 apt
ethtool 1:5.16-1ubuntu0.2 apt
sysstat 12.5.2-2ubuntu0.2 apt
Nginx 1.26.3 编译安装
keepalived 2.3.4 编译安装

说明
1、cri-containerd-cni包包含containerd、runc、cni插件。安装containerd,需要同时安装runc及cni网络插件。 containerd不能直接操作容器,需要通过runc来运行容器。默认Containerd管理的容器仅有lo网络(无法访问容器之外的网络), 如果需要访问容器之外的网络则需要安装CNI网络插件。CNI(Container Network Interface) 是一套容器网络接口规范,用于为容器分配ip地址,通过CNI插件Containerd管理的容器可以访问容器之外的网络。

2、ipvsadm:这是一个用于管理Linux内核中的IP虚拟服务器(IPVS)的工具。它允许您配置和管理负载均衡、网络地址转换(NAT)和透明代理等功能。

3、ipset:这是一个用于管理Linux内核中的IP集合的工具。它允许您创建和管理IP地址、IP地址范围和端口号的集合,以便在防火墙规则中使用。

4、conntrack:这是一个用于连接跟踪的内核模块和工具。它允许您跟踪网络连接的状态和信息,如源IP地址、目标IP地址、端口号等。

5、socat(网络工具):这是一个用于在Linux系统中建立各种类型网络连接的工具。在Kubernetes网络中,socat可以 用于创建端口转发、代理和转发等网络连接。

6、ebtables(以太网桥规则管理工具):这是一个用于在Linux系统中管理以太网桥规则的工具。在Kubernetes中,ebtables 用于在网络分区中实现容器之间的隔离和通信。

7、ethtool:这是一个用于查询和控制网络驱动程序及硬件设置的工具,比如速度、双工模式等。虽然不是所有 Kubernetes 部署都需要直接依赖于 ethtool,但在某些情况下,比如调试网络性能问题或调整网络接口参数时可能会用到。

8、sysstat:这是一个用于系统性能监控和报告的工具集。它包括一些实用程序,如sar、iostat和mpstat,用于收集和显示系统资源使用情况的统计信息。


5、K8S镜像

K8S镜像 calico镜像
registry.k8s.io/kube-apiserver:v1.33.3 docker.io/calico/cni:v3.30.2
registry.k8s.io/kube-controller-manager:v1.33.3 docker.io/calico/kube-controllers:v3.30.2
registry.k8s.io/kube-scheduler:v1.33.3 docker.io/calico/node:v3.30.2
registry.k8s.io/kube-proxy:v1.33.3 -
registry.k8s.io/pause:3.10 -
registry.k8s.io/coredns/coredns:v1.12.0 -
registry.k8s.io/etcd:3.5.21-0 -

6、k8s版本与calico版本对应关系

calico版本 calico yml文件下载 支持K8S版本
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东城绝神

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值