K3s离线部署全过程
作者:不会运维的码头工人
部署K3s集群需关闭防火墙/SELinux,安装Docker,配置主机解析与主机名,上传安装包,主节点安装后调整nodeport范围并生成Token,节点加入集群后将身份改为Worker,最终验证集群状态
K3s离线部署
关闭防火墙&selinux
systemctl stop firewalld systemctl disable firewalld setenforce 0 //临时关闭selinux
vi /etc/selinux/config
把SELINUX=enforcing改为SELINUX=disabled,保存退出,重启永久生效)
未安装docker需要提前安装docker
集群机器互做解析
vi /etc/hosts 192.168.80.15 k3s-master 192.168.80.24 k3s-node1 192.168.80.52 k3s-node2
更改主机名
hostnamectl set-hostname k3s-master hostnamectl set-hostname k3s-node1 hostnamectl set-hostname k3s-node2
重启生效
reboot
#所有节点上传三个安装文件https://github.com/k3s-io/k3s/releases下载文件
docker load < k3s-airgap-images-amd64.tar chmod a+x k3s k3s-install.sh cp k3s /usr/local/bin/
master节点操作
- #master节点安装k3s
INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_EXEC='--docker' /opt/yozo/k3s-install.sh
- #查看组件是否生成
kubectl get pods -A
- #查看master节点是否加入集群
kubectl get node -o wide
- #更改nodeport可用范围
vi /etc/systemd/system/k3s.service 在以下添加 ExecStart=/usr/local/bin/k3s \ server \ '--docker' \ --kube-apiserver-arg service-node-port-range=1-65535
- #重新加载配置文件
systemctl daemon-reload
- #重启k3s服务
systemctl restart k3s.service
- #查看master节点token值
cat /var/lib/rancher/k3s/server/node-token
所有node节点操作
- #node节点加入集群,ip&token值根据现场环境更改
INSTALL_K3S_SKIP_DOWNLOAD=true K3S_URL=https://192.168.80.15:6443 K3S_TOKEN=K109204fb8b8c456ef42a9dcefa3864a9ed70c5cdbec35730cc936ecf2092ad2706::server:1c5ea4f88d61afc87c72fd9837e2223f INSTALL_K3S_EXEC='--docker' ./k3s-install.sh
- #在master节点查看node节点是否加入成功
kubectl get node -o wide
- #master节点更改node节点身份为worker
kubectl label node k3s-node1 node-role.kubernetes.io/worker=worker
- #查看是否更改成功
kubectl get node -o wide
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。