k3s集群快速搭建

K3S快速搭建集群

官方地址:https://docs.k3s.io/zh/quick-start

1.基础环境

操作系统:CentOS Linux release 7.9.2009 (Core)

磁盘:50G

CPU:2C

内存:2G

主机名ip
k3s-master192.168.10.100
k3s-node1192.168.10.101
k3s-node2192.168.10.102

集群中所有机器之间网络互通, 可以访问外网,需要拉取镜像

2.环境配置
0.使用如下命令分别设置主机名
hostanmectl set-hostname <规划的主机名>

# 以下命令三台主机均操作 (可以使用远程工具的多重执行)
1.配置hosts
cat >> /etc/hosts << EOF
192.168.10.100 k3s-master
192.168.10.101 k3s-node1
192.168.10.102 k3s-node2
EOF
 
2.关闭防火墙
systemctl stop firewalld
systemctl disable firewalld

3.关闭selinux(每台服务器)
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config
setenforce 0

4.关闭swap
# 临时
swapoff -a 
# 永久
sed -ri 's/.*swap.*/#&/' /etc/fstab 

5.将桥接的IPv4 流量传递到iptables 的链
cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

# 生效
sysctl --system 

6.配置阿里云yum源
	1)备份:
	mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

	2)下载新的CentOS-Base.repo 到/etc/yum.repos.d/
	wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

	3)添加EPEL:
	wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

	4) 清理缓存并生成新的缓存:
	yum clean all && yum makecache


7.时间同步
yum install ntpdate -y
ntpdate time.windows.com

3.server节点
# 墙的原因下载可能会超时,重试一次
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -

安装完成检查状态:
kubectl get nodes

k3s check-config

# 如果报错 RHEL7/CentOS7: User namespaces disabled; add ‘user_namespace.enable=1’ to boot command line
# 使用如下命令开启
grubby --args="user_namespace.enable=1" --update-kernel="$(grubby --default-kernel)"
# 重启生效  
reboot

开启后:

4.agent节点
K3S_URL参数会导致安装程序将K3s配置为Agent而不是Server, K3s Agent将注册到在URL上监听的K3s Server。
K3S_TOKEN使用的值存储在Server节点上的 /var/lib/rancher/k3s/server/node-token中。

# curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn K3S_URL=https://myserver:6443 K3S_TOKEN=mynodetoken sh -

K3S_URL中myserver替换为主节点的IP地址.
K3S_TOKEN中mynodetoken替换为主节点上获取的token. ( cat /var/lib/rancher/k3s/server/node-token )

例:
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn K3S_URL=https://192.168.10.100:6443 K3S_TOKEN=K10589a1e8db1119d04c54eaec49d9461a434750eecada817844861d8a74b9e7d95::server:8d3969e5917772a9392326456d3d3712 sh -

查看nodes:

在这里插入图片描述

查看pods (如下是由于使用默认镜像地址无法访问的缘故,按照下一步修改) :

image

使用describe查看具体日志

image
5.修改镜像地址
为了简化配置, k3s通过/etc/rancher/k3s/registries.yaml 文件来配置镜像仓库,k3s会在启动时检查这个文件是否存在。如下配置示例:(墙的缘故,地址仅供参考)
# yaml文件粘贴完注意检查格式 空格及对齐等, crictl info验证

server节点:
cat >> /etc/rancher/k3s/registries.yaml <<EOF
mirrors:
  docker.io:
    endpoint:
   	   - "https://registry.cn-hangzhou.aliyuncs.com"
      - "https://docker.mirrors.ustc.edu.cn"
      - "https://b9pmyelo.mirror.aliyuncs.com"
      - "https://dockerproxy.com"
      - "https://docker.nju.edu.cn"        
EOF

systemctl restart k3s

agent节点:
agent默认没有/etc/rancher/k3s这个目录, 手动创建
mkdir /etc/rancher/k3s/

cat >> /etc/rancher/k3s/registries.yaml <<EOF
mirrors:
  docker.io:
    endpoint:
   	   - "https://registry.cn-hangzhou.aliyuncs.com"
      - "https://docker.mirrors.ustc.edu.cn"
      - "https://b9pmyelo.mirror.aliyuncs.com"
      - "https://dockerproxy.com"
      - "https://docker.nju.edu.cn"        
EOF

systemctl restart k3s-agent

正常拉取镜像后,pod状态正常

在这里插入图片描述

6.卸载
# 一键卸载 server

k3s-uninstall.sh

# 一键卸载 agent

k3s-agent-uninstall.sh

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值