当前位置: 首页 > news >正文

rke2 部署 k8s集群

环境准备,所有主机都做

# 主机名设置 tee -a /etc/hosts > /dev/null << EOF 192.168.238.125 k8s-master 192.168.238.126 k8s-node1 192.168.238.127 k8s-node2 EOF # 关闭swap swapoff -all # 开启ipvs modprobe ip_vs ip_vs_rr ip_vs_wrr ip_vs_sh nf_conntrack # 写入文件确保配置永久生效 root@k8s-master:~# vim /etc/modules-load.d/ipvs.conf ip_vs ip_vs_rr ip_vs_wrr ip_vs_sh nf_conntrack # 开启内核参数 modprobe br_netfilter modprobe overlay echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf echo "net.bridge.bridge-nf-call-iptables=1" >> /etc/sysctl.conf echo "net.bridge.bridge-nf-call-ip6tables=1" >> /etc/sysctl.conf sysctl --system # 确认生效情况 root@k8s-master:~# lsmod | grep -E "ip_vs|br_netfilter|overlay" overlay 212992 0 br_netfilter 32768 0 bridge 425984 1 br_netfilter ip_vs_sh 12288 0 ip_vs_wrr 12288 0 ip_vs_rr 12288 0 ip_vs 221184 6 ip_vs_rr,ip_vs_sh,ip_vs_wrr nf_conntrack 196608 1 ip_vs nf_defrag_ipv6 24576 2 nf_conntrack,ip_vs libcrc32c 12288 4 nf_conntrack,btrfs,raid456,ip_vs
# 在master上安装rke2 mkdir -p /etc/rancher/rke2/ curl -sfL https://rancher-mirror.rancher.cn/rke2/install.sh | INSTALL_RKE2_MIRROR=cn sh - # 换镜像源 vim /etc/rancher/rke2/registries.yaml mirrors: "docker.io": endpoint: - "https://docker.1ms.run" # 第一次启动 RKE2 时读取,定义集群基础参数,集群初始化用 vim /etc/rancher/rke2/config.yaml token: rke2-secret-token tls-san: - "192.168.238.125" write-kubeconfig-mode: "0644" node-name: k8s-master node-label: - "role=master" debug: true kube-proxy-arg: - proxy-mode=ipvs # 如果多master节点,其余master config参考 vim /etc/rancher/rke2/config.yaml server: https://192.168.238.125:9345 token: rke2-secret-token tls-san: - "192.168.238.125" write-kubeconfig-mode: "0644" node-name: k8s-master02 node-label: - "role=master" debug: true kube-proxy-arg: - proxy-mode=ipvs # 启动服务 systemctl enable rke2-server.service systemctl start rke2-server.service

所有从节点所作操作

mkdir -p /etc/rancher/rke2/ curl -sfL https://rancher-mirror.rancher.cn/rke2/install.sh | INSTALL_RKE2_MIRROR=cn INSTALL_RKE2_TYPE="agent" sh - # 换镜像源 vim /etc/rancher/rke2/registries.yaml mirrors: "docker.io": endpoint: - "https://docker.1ms.run" # 同样写config 注意 node name更改 vim /etc/rancher/rke2/config.yaml server: https://192.168.238.125:9345 token: rke2-secret-token node-name: k8s-node01 node-label: - "role=worker" debug: true kube-proxy-arg: - proxy-mode=ipvs # 启动服务 systemctl enable rke2-agent.service systemctl start rke2-agent.service

部署如果没问题 生产环境debug可以修改回来,修改之后重启 对于 rke2服务

kubectl 等命令路径

root@k8s-master:~# ls /var/lib/rancher/rke2/bin/kubectl /var/lib/rancher/rke2/bin/kubectl 可做软链接 或者 声明下PATH路径 echo 'export PATH=$PATH:/var/lib/rancher/rke2/bin' >> ~/.bashrc # 2. 让配置立即生效 source ~/.bashrc

集群默认配置文件

root@k8s-master:~# ls /etc/rancher/rke2/rke2.yaml /etc/rancher/rke2/rke2.yaml root@k8s-master:~# kubectl get node --kubeconfig /etc/rancher/rke2/rke2.yaml NAME STATUS ROLES AGE VERSION k8s-master Ready control-plane,etcd 133m v1.35.4+rke2r1 k8s-node01 Ready <none> 114m v1.35.4+rke2r1 k8s-node02 Ready <none> 114m v1.35.4+rke2r1 # node节点没有标签可以手动打 kubectl label node k8s-node01 node-role.kubernetes.io/worker=true kubectl label node k8s-node02 node-role.kubernetes.io/worker=true # 如果想让这个集群成为默认集群 # 需要 将yml文件放到默认config目录 # 由于rke2 默认不创建 .kube 到主目录,需要的话可以手动建 mkdir -p ~/.kube && cp /etc/rancher/rke2/rke2.yaml ~/.kube/config

crictl 需要处理一下套接字文件

vim /etc/crictl.yaml runtime-endpoint: unix:///run/k3s/containerd/containerd.sock image-endpoint: unix:///run/k3s/containerd/containerd.sock
http://www.jsqmd.com/news/746747/

相关文章:

  • 重塑药企研发信任链:告别人肉核对,让每一份 CMC 分析报告实现 30 秒穿透追溯 - lcs
  • AI驱动的云成本优化:从自动化分析到DevOps集成实战
  • CS实验室行业报告:生物医药与生物工程行业就业分析报告
  • Python低代码配置实战手册:7天从零搭建可交付业务系统(附GitHub万星配置框架)
  • 如何在Mac上免费实现NTFS读写:终极完整指南
  • OpenClaw 接入 Taotoken 的完整配置指南与一键写入方法
  • 免费开源:5分钟掌握图片转3D模型终极工具ImageToSTL
  • 终极解决方案:如何通过开源Battery Toolkit为Apple Silicon Mac延长50%电池寿命 [特殊字符]
  • 如何永久保存微信聊天记录:本地备份工具的完整指南
  • Windows平台APK安装架构解析:基于AAPT的轻量级安卓应用部署方案
  • 数据整合之道,万物皆为脂质所用
  • 瑞德克斯平台的交易体验如何?
  • B站缓存视频转换终极方案:m4s-converter一键解决播放难题
  • 决策评估系统One-Eval:从结果诊断到根因分析
  • 焦虑动力学、四象限模型与元佛学范式:一篇导论的思想史定位(本平台待续)
  • GPT-SoVITS:基于少样本学习的语音合成技术革命性突破与分布式架构优化
  • 还在手写config.py?(2024医疗信创新规下,Python配置自动化生成工具链首次公开)
  • vue.js: 下载项目需要vite: Command vite not found
  • 对比直接使用厂商 API 与通过 Taotoken 调用的成本透明度差异
  • Depth-Anything-V2:单目深度估计基础模型的全面技术解析与实践指南
  • 保姆级教程:在Windows 10/11上一步步搞定ArcGIS 10.3安装与汉化(附破解文件替换避坑指南)
  • 在模型广场中根据任务需求与预算选择合适的Taotoken模型
  • python pony
  • 别让内存拖后腿:深入CXL.mem的QoS遥测机制,优化你的异构计算性能
  • 多模型路由系统的工程决策:从成本约束到动态降级的架构设计
  • 开凿儒家:岐金兰思想版图中被低估的儒学金脉(本平台待续)
  • holaOS:AI原生应用编排框架的设计、实现与实战
  • 告别云干扰:Fmask+SNAP组合拳,高效处理哨兵2号影像的完整工作流
  • 终极PKHeX自动化插件完整指南:如何轻松打造完全合法的宝可梦
  • 绝非空想!根据我的科幻小说《月球基底建造》第一章,中国完全可落地的环月星环城邦与深空探测体系