centos7.9离线安装rke2

使用rke2安装k8s,master节点有三台,agent节点一台,三台master通过etcd存储保证master节点的高可用,使用nginx对master进行负载均衡。

  • 主机清单如下
ip主机名称用途
192.168.16.72node72server节点
192.168.16.73node73master节点
192.168.16.74node74master节点
192.168.16.75node75master节点,nginx
  • 规划好主机并修改主机名称
    修改对应主机的名称,如何示例如:
    hostnamectl set-hostname node72
  • 所有主机修改hosts
cat > /etc/hosts << EOF
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.16.71 node71
192.168.16.72 node72
192.168.16.73 node73
192.168.16.74 node74
192.168.16.75 node75
EOF
  • 所有主机时间同步
    一小时同步一次,大家可以视情况频率高一些
yum install ntpdate -y
​​​​​​​crontab -e
0 */1 * * * root ntpdate -s ntp.aliyun.com
crontab -l
  • 所有主机防火墙关闭
systemctl stop firewalld
systemctl disable firewalld
sudo systemctl status firewalld
  • 所有主机关闭swap
#永久关闭,需要重启服务器
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
#昨时关闭
swapoff -a && sysctl -w vm.swappiness=0 
  • 关闭selinux
#永久关闭
sed -ri '/^[^#]*SELINUX=/s#=.+$#=disabled#' /etc/selinux/config
#临时关闭
setenforce 0
#注意:不关闭会产生文件读取权限等问题出现
  • 添加网桥过滤
#添加网桥过滤
cat >>  /etc/sysctl.conf <<EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-arptables = 1
net.ipv4.ip_forward = 1
EOF
#加载 br_netfilter 模块
modprobe br_netfilter
#是否加载
lsmod | grep br_netfilter
#加载网桥过滤配置文件
sysctl -p&&sysctl -p /etc/sysctl.conf
查看是否添加成功
sysctl -a|grep net.bridge.bridge-nf-call-ip6tables
  • ipvs安装
#安装相关软件包
yum -y install ipset ipvsadm 
cat > /etc/sysconfig/modules/ipvs.modules <<EOF
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF
chmod +x /etc/sysconfig/modules/ipvs.modules 
bash /etc/sysconfig/modules/ipvs.modules 
lsmod | grep -e ip_vs -e nf_conntrack_ipv4
  • rke2下载

下载地址:Releases · rancher/rke2 · GitHub

下载的文件:rke2.linux-amd64.tar.gz、rke2-images.linux-amd64.tar.zst、sha256sum-amd64.txt从上面的地址
下载:wget https://rancher-mirror.rancher.cn/rke2/install.sh

将这些文件下载到服务器 ~/rke2-artifacts 目录下面

  • rke2 master config配置 
mkdir -p /etc/rancher/rke2
cat > /etc/rancher/rke2/config.yaml  <<EOF
token:  0fcef8600c960e74d639f08e9abd8a72
system-default-registry: "registry.cn-hangzhou.aliyuncs.com"
data-dir: /data/lib/rke2
#node-name: 不设置取主机名称
write-kubeconfig-mode: 644
cni: "canal" 
kube-proxy-arg:
  - proxy-mode=ipvs
  - ipvs-strict-arp=true
EOF
  • rke2 master环境变量配置
cat > /etc/profile.d/rke2.sh <<EOF
export PATH=/data/lib/rke2/bin:$PATH
export KUBECONFIG=/etc/rancher/rke2/rke2.yaml
export CRI_CONFIG_FILE=/data/lib/rke2/agent/etc/crictl.yaml
export CONTAINERD_ADDRESS=/run/k3s/containerd/containerd.sock
export CONTAINERD_NAMESPACE=k8s.io
EOF
source /etc/profile

rke2 master registry 配置

mkdir -p /etc/rancher/rke2
cat > /etc/rancher/rke2/registries.yaml<<EOF
mirrors:
  docker.io:
    endpoint:
      - "https://registry.cn-hangzhou.aliyuncs.com"
      - "https://docker.mirrors.ustc.edu.cn"
  swr.cn-north-1.*****.com:
    endpoint:
      - "https://swr.cn-north-1.****.com"
  pregistry.bshcn.com.cn:
    endpoint:
      - "https://**pregistry.****.com.cn"
configs:
  "swr.cn-north-1.****.com":
    auth:
      username: cn-north-1@****
      password: ****
  "pregistry.****.com.cn":
    tls:
      insecure_skip_verify: true
EOF
  • rke2 master安装
cd /root/rke2-artifacts/
INSTALL_RKE2_ARTIFACT_PATH=/root/rke2-artifacts INSTALL_RKE2_AGENT_IMAGES_DIR=/data/lib/rke2/agent/images sh install.sh
  • rke2  master- 设置开机启动

systemctl enable rke2-server
systemctl start rke2-server

  • rke2 master2、maseter3安装

除了config.yaml中server地址为master地址外,master2、maseter3其它步骤和master安装方式方法一样

mkdir -p /etc/rancher/rke2
cat > /etc/rancher/rke2/config.yaml  <<EOF
#为master节点地址
server: https://node75:9345   
token:  0fcef8600c960e74d639f08e9abd8a72
system-default-registry: "registry.cn-hangzhou.aliyuncs.com"
data-dir: /data/lib/rke2
#node-name: 不设置取主机名称
write-kubeconfig-mode: 644
cni: "canal" 
kube-proxy-arg:
  - proxy-mode=ipvs
  - ipvs-strict-arp=true
EOF
  • master节点负载均衡配置
    master有三台,这里通过nginx进行负载均衡配置具体如下:
    stream {
      upstream rke2_servers {
        server node73:9345;
    	server node74:9345;
    	server node75:9345;
      }
      server {
        listen 80;
        proxy_pass rke2_servers;
      }
    }

  • rke2 agent安装说明
    所有agent安装方式一样
     
  • rke2 agent config配置
mkdir -p /etc/rancher/rke2
cat > /etc/rancher/rke2/config.yaml  <<EOF
server: https://rke2_servers:9345
token:  0fcef8600c960e74d639f08e9abd8a72
system-default-registry: "registry.cn-hangzhou.aliyuncs.com"
data-dir: /data/lib/rke2
node-name: agent41
write-kubeconfig-mode: 644
cni: "canal" 
kube-proxy-arg:
  - proxy-mode=ipvs
  - ipvs-strict-arp=true
EOF
  • rke2 agent registry 配置
    mkdir -p /etc/rancher/rke2
    cat > /etc/rancher/rke2/registries.yaml<<EOF
    mirrors:
      docker.io:
        endpoint:
          - "https://registry.cn-hangzhou.aliyuncs.com"
          - "https://docker.mirrors.ustc.edu.cn"
      swr.cn-north-1.*****.com:
        endpoint:
          - "https://swr.cn-north-1.****.com"
      pregistry.bshcn.com.cn:
        endpoint:
          - "https://**pregistry.****.com.cn"
    configs:
      "swr.cn-north-1.****.com":
        auth:
          username: cn-north-1@****
          password: ****
      "pregistry.****.com.cn":
        tls:
          insecure_skip_verify: true
    EOF
  • rke2 agent 安装
cd /root/rke2-artifacts
INSTALL_RKE2_ARTIFACT_PATH=/root/rke2-artifacts INSTALL_RKE2_AGENT_IMAGES_DIR=/data/lib/rke2/agent/images INSTALL_RKE2_TYPE="agent"  sh install.sh
  • rke2 agent启动
systemctl enable rke2-agent.service
systemctl start rke2-agent.service

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/578955.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

多端文件互传软件-LocalSend

一、前言 日常学习或者是工作需求&#xff0c;需要手机和电脑互传文件。用到频率低的话&#xff0c;使用即时通讯软件也就够了。 像我日常使用的多端互传文件软件是LocalSend。 二、 LocalSend LocalSend是一款基于局域网的文件传输工具。 LocalSend是一种用于在本地网络中…

super与this

目录 原型链与继承继承中的原型链 classsuper与this 我们可能会对一个问题感到好奇&#xff1a;为什么在派生类中&#xff0c;我们需要在调用this之前调用super。我们通常将其视为一种规范&#xff0c;却很少深入探究这个规范的真正意义。许多人认为super不过是ES6之前继承方式…

SpringBoot 3.2.5 引入Swagger(OpenApi)

SpringBoot 3.2.5 引入Swagger&#xff08;OpenApi&#xff09; pom文件配置文件启动类Controller 层ApiFox题外话 springdoc-openapi 和 swagger 都可以用&#xff0c;用其中一个就行&#xff0c;不用两个都引入。 这里简单记录以下springdoc-openapi。 springdoc-openapi(J…

每日算法之两两交换链表中的节点

题目描述 给你一个链表&#xff0c;两两交换其中相邻的节点&#xff0c;并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题&#xff08;即&#xff0c;只能进行节点交换&#xff09;。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4] 输出&…

sheng的学习笔记-AI-支持向量机(SVM)

目录&#xff1a;sheng的学习笔记-AI目录-CSDN博客 目录 什么是向量机 SVM算法原理 SVM基本模型 SVM对偶问题 什么是对偶问题&#xff1a; 为什么使用对偶问题 拉格朗日定理 拉格朗日乘子法 对偶问题算法 非线性SVM算法原理 核函数 常用核函数 软间隔与正则化 软…

RabbitMQ-死信队列

面试题&#xff1a;你们是如何保证消息不丢失的&#xff1f; 1、什么是死信 在 RabbitMQ 中充当主角的就是消息&#xff0c;在不同场景下&#xff0c;消息会有不同地表现。 死信就是消息在特定场景下的一种表现形式&#xff0c;这些场景包括&#xff1a; 1. 消息被拒绝访问&…

教你一分钟快速部署 Llama3 中文大模型

之前百度创始人李彦宏先生曾经说过“开源大模型会越来越落后&#xff0c;闭源模型会持续领先”&#xff0c;但国货表示真的不服&#xff0c;紧接着被扎克伯格同学就给了当头一棒&#xff0c;向他展示了什么叫做顶级开源大模型。那变听我娓娓道来。 美国当地时间4月18日&#x…

使用NGINX做局域网内 浏览器直接访问链接 拓展外网链接访问本地

达成目的功能&#xff1a; 在本地服务的一个文件路径下&#xff0c;局域网内用ip和路径名访问到对应的地址&#xff1b;如 10.5.9.0/v1 即可访问到 某个固定本地地址目录 V1下&#xff0c;名为index.html的文件。前言 NGINX 是一个非常流行的开源 Web 服务器和反向代理服务器…

5分钟梳理银行测试,文末附带实战项目,0经验入行so easy

很多银行招聘都要求有相关从业经验&#xff0c;这对于想跨入这个岗位的0经验从业同学可真犯了难 “你都不让我上岗&#xff0c;我哪来的工作经验呢&#xff1f;” 为了解决这个问题&#xff0c;小编整理了本篇文章&#xff0c;从3个方面介绍银行项目是如何进行测试的 银行的…

思维+线性dp,CF573 B. Bear and Blocks

目录 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 Problem - 573B - Codeforces 二、解题报告 1、思路分析 本题给的图还是很直…

制糖工业智能工厂数字孪生可视化平台,推进制糖产业数字化转型

制糖工业智能工厂数字孪生可视化平台&#xff0c;推进制糖产业数字化转型。随着信息技术的快速发展&#xff0c;数字化转型已成为各行各业的重要趋势。在糖果加工制造领域&#xff0c;智能工厂数字孪生可视化平台的出现&#xff0c;为行业数字化转型注入了新的活力。 糖果加工制…

应用于智能装备制造,钡铼IOy系列模块展现其强大的灵活性和实用性

随着科技的飞速发展&#xff0c;智能制造已经成为工业4.0时代的核心驱动力。在此背景下&#xff0c;钡铼技术推出的IOy系列模块以其独特的设计、卓越的性能以及无可比拟的灵活性与实用性&#xff0c;在智能装备制造领域展现出了强大的技术优势和应用价值。 首先&#xff0c;钡…

Redis面试题二(数据存储)

目录 1.redis 的数据过期策略 1. 惰性删除&#xff08;Lazy Expiration&#xff09; 2. 定期删除&#xff08;Periodic Expiration&#xff09; 3. 定时删除&#xff08;Timing-Based Expiration&#xff09; 实际应用中的组合策略 2.redis 有哪些内存淘汰机制 volatile&…

Maven解决找不到依赖项

报错如图 方案一&#xff1a;Maven的Setting文件中添加albaba的镜像文件 1.下载maven &#xff1a;Maven – Download Apache Maven 2. 配置镜像 更改成这个&#xff1a; <mirror> <id>alimaven</id> <name>aliyun maven</name> <url&g…

37.WEB渗透测试-信息收集-企业信息收集(4)

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a; 易锦网校会员专享课 上一个内容&#xff1a;36.WEB渗透测试-信息收集-企业信息收集&#xff08;3&#xff09;-CSDN博客 关于主域名收…

c#学习入门2

十、运算符 1&#xff09;算术运算符是用于数值类型变量计算的运算符&#xff0c;它返回的结果是数值 1.赋值符号 2.算数运算符 加 减- 乘* 除/ 取余% 3.算数运算符的优先级 4.算术运算符的复合运算 5.算术运算符的自增减 2&#xff09;字符串拼接 1.字符串拼接方式1 注意&…

编写一个函数fun,它的功能是:实现两个字符串的连接(不使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串后。

本文收录于专栏:算法之翼 https://blog.csdn.net/weixin_52908342/category_10943144.html 订阅后本专栏全部文章可见。 本文含有题目的题干、解题思路、解题思路、解题代码、代码解析。本文分别包含C语言、C++、Java、Python四种语言的解法完整代码和详细的解析。 题干 编写…

day01黑马头条小bug合集及解决办法

问题1.初始构造heima-leadnews-user这个模块 触发此bug Command line is too long 解决办法&#xff1a; 问题2&#xff1a;构建网关模块启动时 报数据库错误 Failed to configure a DataSource: url attribute is not specified and no embedded datasource could be confi…

电磁仿真--基本操作-CST-(4)

目录 1. 简介 2. 建模过程 2.1 基本的仿真配置 2.2 构建两个圆环体和旋转轴 2.3 切分圆环体 2.4 衔接内外环 2.5 保留衔接部分 2.6 绘制内螺旋 2.7 绘制外螺旋 2.8 查看完整体 2.9 绘制引脚 2.10 设置端口 2.11 仿真结果 3. 使用Digilent AD2进行测试 3.1 进行…

《HCIP-openEuler实验指导手册》1.2Apache主页面配置

一、配置服务器监听IP及端口 注释主配置文件“监听IP及端口”部分 cd /etc/httpd/conf cp httpd.conf httpd.conf.bak vim httpd.conf可以在普通模式下搜索Listen关键字 :/Listen按n键继续向后搜索 在/etc/httpd/conf.d中新建子配置文件port.conf&#xff1a; touch /etc…
最新文章