使用rke2安装高可用k8s集群

2023-10-30

使用rke2安装高可用k8s集群

  • 服务器rke集群节点角色规划
用户 主机名 内网IP SSH端口 系统 角色
root rke-server-01 192.168.2.131 22 CentOS Linux release 7.6.1810 (Core) controlplane、worker、etcd
root rke-server-02 192.168.2.132 22 CentOS Linux release 7.6.1810 (Core) controlplane、worker、etcd
root rke-server-03 192.168.2.133 22 CentOS Linux release 7.6.1810 (Core) controlplane、worker、etcd
  • 安装一些个人常用的基础安装包

     yum  -y install  epel-release.noarch
     yum  -y install   psmisc gcc gcc-c++ texinfo wget unzip zip gcc libticonv-devel  libcurl-devel curl nmap iotop dstat tree mlocate ntpdate openssh-clients  net-tools vim  ntsysv nmap curl lrzsz  sysstat  libselinux-python   pcre pcre-devel zlib zlib-devel openssl openssl-devel readline-devel bzip2  httpd-devel python-devel python-pip python-setuptools   lsof  sqlite-devel  nscd bind-utils telnet rsync tcpdump expect  nc    ntp  lftp   bash-completion ipset ipvsadm 
    
    
  • 关闭防火墙

    systemctl stop firewalld
    systemctl stop iptables
    systemctl disable firewalld
    systemctl disable iptables
    
    
  • 关闭selinux

    sed -i 's/SELINUX=enforcing/SELINUX=disabled/'  /etc/sysconfig/selinux
    sed -i 's/SELINUX=enforcing/SELINUX=disabled/'   /etc/selinux/config
    setenforce 0
    
  • 三台时间同步要一致

    systemctl start ntpd
    systemctl enable ntpd
    
    
  • 关闭swap分区

    swapoff -a
    sed  -i  '/swap/d' /etc/fstab
    mount  -a
    
    • 然后修改/etc/fstab,把swap分区相关的配置注释掉
  • 内核参数调整

    cat >> /etc/sysctl.conf <<EOF
    fs.file-max = 2442652
    net.ipv4.ip_local_port_range = 1024     65535
    vm.swappiness=0
    net.ipv4.ip_forward=1
    net.bridge.bridge-nf-call-iptables=1
    net.bridge.bridge-nf-call-ip6tables = 1
    EOF
    sysctl  -p 
    
  • 配置资源限制

       sh -c " cat  >>/etc/security/limits.conf <<EOF
       *       soft    nofile          1048576
       *       hard    nofile          1048576
       *       soft     core            unlimited
       *       hard    core            unlimited
       *       soft	    nproc            unlimited
       *       hard	    nproc           unlimited
       EOF"
       sh -c  "cat >> /etc/security/limits.d/20-nproc.conf << EOF
       *  soft    nproc     unlimited
       *  hard    nproc     unlimited
       EOF"
    
  • 加载ipvs相关模块
    由于ipvs已经加入到了内核的主干,所以为kube-proxy开启ipvs的前提需要加载以下的内核模块:

    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 755 /etc/sysconfig/modules/ipvs.modules 
     bash /etc/sysconfig/modules/ipvs.modules
     lsmod | grep -e ip_vs -e nf_conntrack_ipv4
    
  • 在线三个节点安装rke-server(controlplane、worker、etcd角色)

    curl -sfL https://get.rke2.io | sh -
    
    
  • 在rke-sersver-01上启动rke-server

    systemctl enable rke2-server.service
    systemctl start rke2-server.service
    
    
    • 安装完成后 /var/lib/rancher/rke2/bin/ 目录 生成有ctr、crictl、kubectl 等二进制文件
    • A kubeconfig file will be written to /etc/rancher/rke2/rke2.yaml
    • A token that can be used to register other server or agent nodes will be created at /var/lib/rancher/rke2/server/node-token
  • 三个节点均创建rke-server高可用集群需要的/etc/rancher/rke2/config.yaml 配置文件,

    server: https://192.168.2.131:9345
    token: my-shared-secret  #/var/lib/rancher/rke2/server/node-token中值
    tls-san:
       - my-kubernetes-domain.com
       - another-kubernetes-domain.com
    node-label:
       - "host=k8s-master"
    #node-taint:  ####(打污点)
    #   - "host=k8s-master:NoExecute"   
    
  • 验证集群

     /var/lib/rancher/rke2/bin/kubectl \
         --kubeconfig /etc/rancher/rke2/rke2.yaml get nodes
    
  • 集群添加agent(woker角色)节点

    curl -sfL https://get.rke2.io | INSTALL_RKE2_TYPE="agent" sh -
    systemctl enable rke2-agent.service
    mkdir -p /etc/rancher/rke2/
    cat > /etc/rancher/rke2/config.yaml <<EOF
    server: https://192.168.2.131:9345
    token: my-shared-secret #/var/lib/rancher/rke2/server/node-token中值
    EOF
    systemctl start rke2-agent.service
    
  • 停止某个节点上的服务

    rke2-killall.sh
    
  • 清理某个节点上的rke 服务

    rke2-uninstall.sh
    

    rke2官方文档连接

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用rke2安装高可用k8s集群 的相关文章

随机推荐

  • 带圈圈的数字1~50,求50以上,不要word的

    带圈圈的数字1 50 求50以上 不要word的 posted on 2018 04 25 16 07 jony413 阅读 评论 编辑 收藏 转载于 https www cnblogs com jony413 p 8945365 html
  • 微信小程序悬浮框实现

    最近在公司负责微信小程序 小程序相比html JavaScript更加简单 很多接口直接就给了 所以我们直接利用就好了 下面说正题 微信小程序悬浮框实现 效果图如下 做了一个随时拨打客服电话的悬浮框 1 第一种 目录结构如下 index j
  • 关于golang性能调试及pprof可视化

    golang支持使用pprof进行可视化性能检测 打开powershell 在需要性能可视化的文件夹下输入 go test bench cpuprofile cpu out 得到一个 out文件 接着输入 go tool pprof cpu
  • 计算机网络知识点汇总(考研用)——第一章:计算机网络体系结构

    计算机网络知识点汇总 考研用 第一章 计算机网络体系结构 本文参考于 2021年计算机网络考研复习指导 王道考研 计算机网络 思维导图 文章目录 计算机网络知识点汇总 考研用 第一章 计算机网络体系结构 1 计算机网络体系结构 1 1 计算
  • 145句经典诗句

    1 知我者 谓我心忧 不知我者 谓我何求 诗经 王风 黍离 释义 了解我心情的人 认为我心中惆怅 不了解我心情的 还以为我呆在这儿有什么要求呢 2 人而无仪 不死何为 诗经风相鼠 释义 人活着如果不重视礼仪 那么就如同死人 3 言者无罪 闻
  • 关于工牌(必须5-10个字)

    今天蹲坑 低头看了下工牌觉得挺有意思 我从啥时候起也不排斥将工牌挂在脖子上了 工牌 一个标识 不仅标识了你 也标识了你所在的群体 如果你认可这个群体 佩戴它那是一种荣誉 荣耀 如果你不认可这个群体 佩戴它就是耻辱 羞辱 尤其挂到脖子上 那不
  • 使用机器学习算法预测航班价格

    一 前言 机票价格的预测一直是航空业和旅行者关注的重要问题之一 随着航空业的快速发展和市场竞争的加剧 正确预测机票价格对于航空公司的利润最大化和旅行者的预算规划至关重要 在过去 人们通常依靠经验和市场趋势来预测机票价格 但这种方法往往存在不
  • Qt宏定义

    1 QT BEGIN NAMESPACE 在qglobal h中 我们可以看到以下两句胡宏定义 define QT BEGIN NAMESPACE namespace QT NAMESPACE define QT END NAMESPACE
  • Java中有关锁的面试题

    sychronized修饰普通方法和静态方法的区别 什么是可见性 对象锁是用于对象实例方法 或者一个对象实例上的 类锁是用于类的静态方法或者一个类的class对象上的 类的对象实例可以有很多个 但是每个类只有一个class对象 所以不同对象
  • 静态成员(static)

    今天整理了一下关于静态的一些知识点 可能有些没有整理到 或者理解有纰漏 大家不妨看看 不足之处 恳请大家斧正 在静态类中 静态类中不能调用非静态类的实例成员 静态类中不能有非静态构造函数 但是可以有静态构造函数 静态构造函数也可以存在于非静
  • D361周赛复盘:模拟分割整数⭐+变为整除的最小次数⭐

    文章目录 2843 统计对称整数的数目 模拟 分割整数为两部分 思路 1 整数换成字符串版本 2 直接用整数的版本 2844 生成特殊数字的最小操作 模拟 x能被Num整除的条件 思路 完整版 2843 统计对称整数的数目 模拟 分割整数为
  • 微信小程序超详细入门简介和使用

    微信小程序 介绍 微信小程序 简称小程序 英文名Mini Program 是一种不需要下载安装即可使用的应用 它实现了应用 触手可及的梦想 用户扫一扫或搜一下即可打开应用 微信小程序做项目的必备基础 小程序的前世今生 小程序开发者工具 小程
  • Chatgpt API调用报错:openai.error.RateLimitError

    Chatgpt API 调用报错 openai error RateLimitError You exceeded your current quota please check your plan and billing details
  • 常用图像增强方法,利用tf.keras来完成图像增强

    学习目标 知道图像增强的常用方法 能够利用tf keras来完成图像增强 大规模数据集是成功应用深度神经网络的前提 例如 我们可以对图像进行不同方式的裁剪 使感兴趣的物体出现在不同位置 从而减轻模型对物体出现位置的依赖性 我们也可以调整亮度
  • allure在python环境下的集成使用

    python环境下 集成allure 首先打开Allure官网 https docs qameta io allure 选择对应平台的安装方式 最下面有通用安装方法 1 去maven central下载一个新版本的zip 2 下载到本地后解
  • 【手写一个RPC框架】simpleRPC-02

    目录 前言 实现 项目创建 依赖配置 common service client server 文件结构 运行 本项目所有代码可见 https github com weiyu zeng SimpleRPC 前言 在simpleRPC 01
  • Flask - 应用上下文

    目录 一 应用上下文 二 current app 在任何地点 获取flask app对象 三 g 单次请求的数据存储字典
  • 关于Unity3D中的Debug类的一些函数内容

    这篇文章主要是我对Debug类中的一些个人理解以及一些Debug的方法 请大家理性阅读 有错误可以私聊本人指出 Unity3DEngine Debug 这中间可能包含了一些常用的debug方法 比如下面这个黑科技 这是我在学习debug类的
  • 实时脑波和眼动连通性分析 python-(3)

    实时提取脑波的delta theta alpha beta 对于baseline的比率差 import os import pandas as pd import numpy as np def mkdir path 3 folder os
  • 使用rke2安装高可用k8s集群

    文章目录 使用rke2安装高可用k8s集群 使用rke2安装高可用k8s集群 服务器rke集群节点角色规划 用户 主机名 内网IP SSH端口 系统 角色 root rke server 01 192 168 2 131 22 CentOS