安装k8s集群,首先要熟悉宿主机的环境,个人拥护特别要看pc的cpu, 目前苹果电脑大部分都是arm架构的m1-4芯片,而intel芯片一般都是x86架构。本文介绍的是在苹果电脑中虚拟二个节点安装k8s集群。
一、集群规划
master01 192.168.123.150
node01 192.168.123.151
二、前期配置 配置各主节点的主机名称: --两台同时操作
配置各节点的Host文件,为了初始化集群节点间的通信:--两台同时操作
192.168.123.150 master01
192.168.123.151 node01
三、永久禁用各节点的交换分区,为了提高各节点的性能
四、同步各节点的时区
五、安装ipset及ipvsadm,安装加载桥接模块,不然后期kubeadm init报错
开机加载模块
前期准备工作完毕,开始安装集群:注意避坑:看清楚哦
安装较新版本的集群一般需要安装containerd, 而arm架构服务器对containerd不友好,安装以后各种报错,故障很难排除。所以采用docker容器,而对较新版本的k8s集群来说,还要安装cri-docker,就能支持到新版本的k8s集群了。而这个cri-docker也是集群初始化成功的关键。
六、现在开始安装docker和cri-docker
为了方便后期pull镜像不出现网络错误,必须配置镜像加速
安装成功这一步注意到是你的网络是否正常访问,一般看/etc/resolv.conf
下面开始安装cri-docker,特别注意如果遇到不能下载到github的源码,先在你的电脑上用浏览器下载,然后在虚拟机上执行wget就可以下载成功了。
k8s版本1.24以上就不在支持docker,需要手动安装
1、在GitHub下载二进制文件
链接: https://github.com/Mirantis/cri-dockerd/releases
打开这个链接后可以看到相应的版本列表,一定要找arm64位的版本,我这里用的是0.3.15
上述代码两个节点都需要安装
七、下面开始安装kubeadm kubelet kubectl. ---两个节点同时
安装完毕后开始最关键的初始化集群,如果前期准备工作都完好无缺就不会报错了,注意是在master01节点初始化,node01节点不需要
初始化成功后执行环境变量
注意:默认没有tab键没有命令补齐,配置命令补齐
上述成功后有节点加入集群的提示,这一步在node01节点上操作,注意加上cri-socket参数,不然运行报错,不要原封不动照抄,要看master01上集群初始化成功后的提示。
可以看到kubectl get nodes 后节点是not ready, 这里需要安装网络通信套件
八、下一步开始安装网络插件flannel和配置文件:注意跟上次下载cri-docker一样,如果下载不了,先在虚拟机宿主机上下载。----两个节点同时安装
下载地址: https://github.com/flannel-io/flannel/releases/
前面配置了镜像加速,这里两个节点可以快速的拉取镜像了
拉取镜像成功后,可以应用flannel配置文件了,这里在master01运行
然后运行kubectl get nodes 发现节点已经get ready
九、最后我们部署一个服务测试一下,暴露一个外网端口,在宿主机打开是否正常访问
可以看到nginx的80端口暴露外网的端口是30973
访问http://master01ip:30973就能看到nginx页面了
到这一步,集群安装成功了,后期还有问题会持续更新




所有评论(0)