《Kubernetes部署篇:基于containerd部署k8s安装流程及软件包下载》
《Kubernetes部署篇:基于containerd部署k8s安装流程及软件包下载》
一、背景
对于一些初学kubernetes者,安装kubernetes不是一件简单的事,这里就简单介绍基于containerd容器版K8S安装流程及安装心得,希望能够给大家带来一些帮助!
环境信息如下:
操作系统 | CPU架构 | K8S版本 | 容器引擎 |
---|---|---|---|
Ubuntu 20.04.5 LTS | x86_64 | v1.24.7、v1.25.14、v1.26.9 | containerd |
二、安装流程
2.1、使用kubeadm基于外部etcd
1、系统环境初始化,主要包括 主机名设置、主机hosts解析、关闭防火墙、关闭swap分区、修改系统参数、时间时区同步、修改内核参数、启用ipvs模式。
2、安装二进制etcd,主要包括: 手动生成etcd相关证书、安装etcd单机或集群。
3、安装containerd容器引擎,可使用 apt工具或二进制安装方式。
4、安装指定版本的kubeadm、kubelet、kubectl,可使用 apt工具或二进制方式。
5、安装负载均衡高可用,可使用 Nginx + keepalived高可用负载均衡模式。
6、下载K8S相关镜像, 建议使用国内阿里云镜像源下载。
7、下载calcio网络插件的yml文件及镜像, 注意k8s版本与calico版本对应关系。
8、安装k8s集群,主要包括master节点和worker节点, 注意提前在k8s主机上下载所需的镜像文件。
9、安装calico网络插件, 注意提前在k8s主机上下载所需的镜像文件。
10、k8s集群测试, 主要包括coredns测试、功能性测试、高可用测试。
2.2、使用kubeadm基于内部etcd
1、系统环境初始化,主要包括 主机名设置、主机hosts解析、关闭防火墙、关闭swap分区、修改系统参数、时间时区同步、修改内核参数、启用ipvs模式。
2、安装containerd容器引擎,可使用 apt工具或二进制安装方式。
3、安装指定版本的kubeadm、kubelet、kubectl,可使用 apt工具或二进制方式。
4、安装负载均衡高可用,可使用 Nginx + keepalived高可用负载均衡模式。
5、下载K8S相关镜像, 建议使用国内阿里云镜像源下载。
6、下载calcio网络插件的yml文件及镜像, 注意k8s版本与calico版本对应关系。
7、安装k8s集群,主要包括master节点和worker节点, 注意提前在k8s主机上下载所需的镜像文件。
8、安装calico网络插件, 注意提前在k8s主机上下载所需的镜像文件。
9、k8s集群测试, 主要包括coredns测试、功能性测试、高可用测试。
三、软件下载
3.1、下载问题总结
环境信息如下:
问题一:根据K8S版本如何确认需要下载哪些镜像?
思路:安装完指定版本的kubeadm后,使用kubeadm config images list
如下列表所示,列出了v1.24.17版本所需的镜像信息
registry.k8s.io/kube-apiserver:v1.24.17
registry.k8s.io/kube-controller-manager:v1.24.17
registry.k8s.io/kube-scheduler:v1.24.17
registry.k8s.io/kube-proxy:v1.24.17
registry.k8s.io/pause:3.7
registry.k8s.io/etcd:3.5.6-0
registry.k8s.io/coredns/coredns:v1.8.6
如下列表所示,列出了v.1.25.13版本所需的镜像信息
registry.k8s.io/kube-apiserver:v1.25.14
registry.k8s.io/kube-controller-manager:v1.25.14
registry.k8s.io/kube-scheduler:v1.25.14
registry.k8s.io/kube-proxy:v1.25.14
registry.k8s.io/pause:3.8
registry.k8s.io/etcd:3.5.6-0
registry.k8s.io/coredns/coredns:v1.9.3
如下列表所示,列出了v1.26.8版本所需的镜像信息
registry.k8s.io/kube-apiserver:v1.26.9
registry.k8s.io/kube-controller-manager:v1.26.9
registry.k8s.io/kube-scheduler:v1.26.9
registry.k8s.io/kube-proxy:v1.26.9
registry.k8s.io/pause:3.9
registry.k8s.io/etcd:3.5.6-0
registry.k8s.io/coredns/coredns:v1.9.3
说明:由于国内网络无法下载,可以将镜像仓库地址换成阿里云的 registry.cn-hangzhou.aliyuncs.com/google_containers。
问题二:K8S版本与containerd版本对应关系?
K8S版本 | pause版本 |
---|---|
1.24.17 | 3.7 |
1.25.14 | 3.8 |
v1.26.9 | 3.9 |
说明:根据官方文档,并没有找到v1.24版本以上的K8S与containerd版本对应关系表,按我的理解,应该是 安装containerd最新的稳定版即可,仅供参考,如果你有更好的建议,可以在底下评论区进行留言!
问题三:K8S版本与calico版本对应关系?
calico版本 | calico yml文件下载 | 支持K8S版本 |
---|---|---|
v3.24.6 | calico.yml | v1.22、v1.23、v1.24、v1.25 |
v3.25.2 | calico.yml | v1.23、v1.24、v1.25、v1.26 |
v3.26.1 | calico.yml | v1.24、v1.25、v1.26、v1.27 |
问题四:二进制安装kubeadm、kubelet、kubectl,如何进行哪些步骤?
通过使用apt工具安装kubeadm、kubelet、kubectl,发现除了本身的工具之外,还安装了一些依赖软件。这里就 以v1.24.17版本为例,如下所示:
软件名称 | 软件版本 |
---|---|
kubeadm | v1.24.17 |
kubelet | v1.24.17 |
kubectl | v1.24.17 |
conntrack | 1.4.5 |
cri-tools | 1.26.0 |
kubernetes-cni | 1.2.0 |
socat | 1.7.3 |
ebtables | 2.0.11 |
3.2、K8S资源列表(稳定版)
这里分享一个github下载加速网站,如果下载很慢,可以考虑!
二进制文件 | containerd |
---|---|
v1.24.17或者v1.24.17 | 1.7.0、1.7.1、1.7.2、1.7.3、1.7.4、1.7.5 |
v1.25.14或者v1.25.14 | 1.7.0、1.7.1、1.7.2、1.7.3、1.7.4、1.7.5 |
v1.26.9或者v1.26.9 | 1.7.0、1.7.1、1.7.2、1.7.3、1.7.4、1.7.5 |
总结:整理不易,如果对你有帮助,可否点赞关注一下?
更多详细内容请参考:《K8S集群运维指南》
更多推荐
所有评论(0)