首页 > 其他分享 >二机制安装Kubernetes 1.29 高可用集群(2)--haproxy节点配置

二机制安装Kubernetes 1.29 高可用集群(2)--haproxy节点配置

时间:2024-02-18 22:24:21浏览次数:29  
标签:haproxy Kubernetes -- keepalived cat etc 节点

1.1 在所有haproxy节点安装haproxy

yum -y install haproxy

1.2 在所有haproxy节点创建haproxy配置文件

cat > /etc/haproxy/haproxy.cfg << EOF
global
     maxconn     3000
     ulimit-n    16384
     log         127.0.0.1 local0 err
     stats       timeout   30s

defaults
     log        global
     mode       http
     option     httplog
     timeout    connect    5000
     timeout    client     50000
     timeout    server     50000
     timeout    http-request    15s
     timeout    http-keep-alive 15s

listen status_page
    bind *:8888
    stats enable
    stats uri /status
    stats auth  admin:admin
    stats hide-version
    stats admin if TRUE

frontend k8s-master
     bind       0.0.0.0:6443
     bind       127.0.0.1:6443
     mode       tcp
     option     tcplog
     tcp-request     inspect-delay 5s
     default_backend k8s-master

backend k8s-master
     mode       tcp
     option     tcplog
     option     tcp-check
     balance    roundrobin
     default-server inter 10s downinter 5s rise 2 fall 2 slowstart 60s maxconn 250 maxqueue 256 weight 100
     server     k8s-master1  192.168.83.210:6443 check
     server     k8s-master2  192.168.83.211:6443 check
	 
EOF

1.3 所有haproxy节点启动haproxy

systemctl daemon-reload
systemctl enable --now haproxy

2.1 在所有haproxy节点安装keepalived

yum -y install keepalived

2.2 在k8s-haproxy01节点创建keepalived配置文件

cat > /etc/keepalived/keepalived.conf << EOF
global_defs {
   router_id LVS_DEVEL
   script_user root
   enable_script_security
}

vrrp_script chk_haproxy {
   script "/etc/keepalived/check_haproxy.sh"
   interval 5
   weight -5
   fall 2 
   rise 1
}

vrrp_instance VI_1 {
   state MASTER
   interface ens33
   mcast_src_ip 192.168.83.201
   virtual_router_id 50
   priority 100
   advert_int 2
   authentication {
       auth_type PASS
       auth_pass k8s666
   }

   virtual_ipaddress {
       192.168.83.200
   }

   track_script {
      chk_haproxy
   }
}
EOF

2.3 在k8s-haproxy02节点创建keepalived配置文件

cat > /etc/keepalived/keepalived.conf << EOF
global_defs {
   router_id LVS_DEVEL
   script_user root
   enable_script_security
}

vrrp_script chk_haproxy {
   script "/etc/keepalived/check_haproxy.sh"
   interval 5
   weight -5
   fall 2 
   rise 1
}

vrrp_instance VI_1 {
   state BACKUP
   interface ens33
   mcast_src_ip 192.168.83.202
   virtual_router_id 50
   priority 80
   advert_int 2
   authentication {
       auth_type PASS
       auth_pass k8s666
   }

   virtual_ipaddress {
       192.168.83.200
   }

   track_script {
      chk_haproxy
   }
}
EOF

2.4 在所有haproxy节点创建keepalived的haproxy检查文件

cat > /etc/keepalived/check_haproxy.sh << EOF
#!/bin/bash
err=0
for k in $(seq 1 3)
do
   check_code=$(pgrep haproxy)
   if [[ $check_code == "" ]]; then
       err=$(expr $err + 1)
       sleep 1
       continue
   else
       err=0
       break
   fi
done

if [[ $err != "0" ]]; then
   echo "systemctl stop keepalived"
   /usr/bin/systemctl stop keepalived
   exit 1
else
   exit 0
fi

EOF

# chmod +x /etc/keepalived/check_haproxy.sh

 2.5 在所有haproxy节点启动keepalived

systemctl enable --now keepalived

标签:haproxy,Kubernetes,--,keepalived,cat,etc,节点
From: https://www.cnblogs.com/cn-jasonho/p/18015338

相关文章

  • 二机制安装Kubernetes 1.29 高可用集群(1)--系统初始配置
    软件环境描述说明:OS:openEuler22.03LTSSP3kubernetes:1.29.2etcd:3.5.12calico:3.27.0cri-docker:0.3.10cfssl/cfssljson/cfssl-certinfo:1.64haproxy:2.2.6keepalived:2.2.4网段规划:物理主机:192.168.83.0/24      ServiceIP:10.66.0.0/16   PodIP:172.31.0.0......
  • Window10 通过 SSH 访问 Docker 容器
    参考https://zhuanlan.zhihu.com/p/462481693https://blog.csdn.net/piaopu0120/article/details/120550181https://blog.csdn.net/qq_27865227/article/details/121649574https://blog.csdn.net/fighterandknight/article/details/124478429环境软件/系统版本说明......
  • 二机制安装Kubernetes 1.29 高可用集群(6)--calico网络组件和CoreDNS配置
    1.部署Calico网络组件1.1k8s-master节点上下载calico的创建文件下载地址:https://docs.tigera.io/calico/latest/getting-started/kubernetes/quickstartwgethttps://raw.githubusercontent.com/projectcalico/calico/v3.27.2/manifests/tigera-operator.yamlwgethttps://ra......
  • 思维导图工具Xmind
    下载链接:https://pan.baidu.com/s/12wVLRIrwy4rOzvMuzy8ofg?pwd=h008xmind免费安装使用教程_xmind安装csdn-CSDN博客......
  • 《程序是怎样跑起来的》第一章其余节
    读书笔记:1.2:寄存器的类型及功能:累加器——存放执行运算的数据和运算结果;标志寄存器:存放运算后的CPU的状态;程序计算器:存放下一条指令所在内存的地址;基址寄存器:存放数据内存的起始地址;变址寄存器:存放基址寄存器的相对地址;通用寄存器:存放任意数据;指令寄存器:存放指令。这个寄存器由CPU......
  • 数组 容器 递归 普通排序 线性排序
    《数据结构与算法之美》读书笔记写在前面这本书的大部分内容比较浅显,因此只挑DSAA课程上没有涉及或没有深入讨论的点总结第二章数组相关提高传统数组插入/删除数据效率的方法:如果插入的数据不要求有序,可以直接把某位的原数据替换成新数据,然后把原数据放到数组末尾,避免大......
  • .NET周刊【2月第1期 2024-02-04】
    祝大家新年快乐,龙年大吉~国内文章C#/.NET/.NETCore优秀项目和框架2024年1月简报https://www.cnblogs.com/Can-daydayup/p/18000401本文介绍了公众号“追逐时光者”定期分享的C#/.NET/.NETCore优秀项目和框架,包括项目介绍、功能特点、使用方式和功能截图,并提供了源码地址。文......
  • EPLAN插件 - 设置导出PDF路径并自动备份PDF
    前言EPLAN导出PDF默认路径为$(DOC),此路径在嵌套很深,每次点都感觉很麻烦,在工作中经常会要求备份PDF图纸的要求。需要导出PDF要找到相应的文件然后复制到指定的文件夹,总感觉非常的麻烦。于是写了这个插件。此插件设置导出PDF的路径在项目文件同级文件夹中新建PDF文件夹,同时可以设置......
  • 代码随想录 day54 买卖股票
    买卖股票的最佳时机III这题可以一天进行两次交易解法增加了两种状态虽然不知道为什么这样就可以work但是挺符合逻辑的意思就是把之前的两天交易合到一天进行计算收益也在之前一次交易基础上进行计算买卖股票的最佳时机IV这题就是这类问题的最难情况解法的思想就是......
  • HH的项链
    题目描述HH有一串由各种漂亮的贝壳组成的项链。HH相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含义。HH不断地收集新的贝壳,因此他的项链变得越来越长。有一天,他突然提出了一个问题:某一段贝壳中,包含了多少种不同的贝壳?这个问题很难回答。。。......