惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
C
Cybersecurity and Infrastructure Security Agency CISA
IT之家
IT之家
罗磊的独立博客
阮一峰的网络日志
阮一峰的网络日志
MongoDB | Blog
MongoDB | Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
L
LINUX DO - 最新话题
C
Cyber Attacks, Cyber Crime and Cyber Security
Cyberwarzone
Cyberwarzone
S
SegmentFault 最新的问题
S
Schneier on Security
A
About on SuperTechFans
L
Lohrmann on Cybersecurity
博客园_首页
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
S
Securelist
博客园 - 司徒正美
H
Hacker News: Front Page
Jina AI
Jina AI
K
Kaspersky official blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
量子位
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
J
Java Code Geeks
B
Blog
Google DeepMind News
Google DeepMind News
博客园 - Franky
The Cloudflare Blog
M
MIT News - Artificial intelligence
Blog — PlanetScale
Blog — PlanetScale
H
Help Net Security
Spread Privacy
Spread Privacy
N
News and Events Feed by Topic
A
Arctic Wolf
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
宝玉的分享
宝玉的分享
T
The Blog of Author Tim Ferriss
O
OpenAI News
N
Netflix TechBlog - Medium
G
GRAHAM CLULEY
F
Fortinet All Blogs
V
V2EX
N
News | PayPal Newsroom
Y
Y Combinator Blog
雷峰网
雷峰网
博客园 - 叶小钗
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Recent Commits to openclaw:main
Recent Commits to openclaw:main

k8s on 打工人日志

k8s RKE2 cilium L2 + envoy gateway 安装配置 k8s RKE2 vSphere 存储配置 Kubernetes — skywalking + banyanDB APM监控部署 Kubernetes — promtail + loki + grafana 日志系统部署 Kubernetes — metalLB + Traefik 部署 Kubernetes — SSL 证书自动更新 Kubernetes — RKE2 + kube-vip + cilium 部署 metallb + ingress-nginx + argocd 本地部署 Kubernetes — k8s 手动安装 1.17.9 Kubernetes — containerd 安装和部署 Argo cd 安装和部署 Kubernetes — kubecost 分析 Kubernetes 成本 Ansible部署ceph集群 Kubernetes — 更新证书 Kubernetes — Rook云存储介绍和部署 Kubernetes — 基于K8S搭建Ceph分布式存储 Kubernetes — 探针和生命周期 Kubernetes — 开放标准(OCI、CRI、CNI、CSI、SMI、CPI)概述 kubernetes 部署插件 (Flannel、Web UI、CoreDNS、Ingress Controller) kubernetes 存储 kubernetes 从1.23.x 升级到 1.24.x 编写 kubernetes 资源描述文件 kubernetes manual expansion kubernetes 调度过程 k8s本地联调神器kt-connect OpenELB:让k8s私有环境对外暴露端口 kubernetes ansible自动化部署 kubernetes 脚本快速安装 kubernetes面试题汇总 Kubernetes 安装 Harbor 搭建 Kubernetes 实验手册(1) helm 安装 k8s 部署loki日志 Kubernetes 创建nfs存储类 Kubernetes k8s 组件
Keepalived高可用
2022-01-05 · via k8s on 打工人日志

Keepalived 高可用

配置文件存放位置:/usr/share/doc/keepalived/samples
VVRP 虚拟路由冗余协议

组成

LB 集群:Load Balancing,负载均衡集群,平均分配给多个节点
HA 集群:High Availability,高可用集群,保证服务可用
HPC 集群:High Performance Computing,高性能集群

配置

keepalived+LVS+nginx

  1. 各节点时间必须同步:ntp, chrony
  2. 关闭防火墙及 SELinux

同步各节点时间

1#安装ntpdate
2yum -y install ntpdate
3#更改时区
4timedatectl set-timezone 'Asia/Shanghai'
5#查看时间
6timedatectl
7datetime

安装 keepalived

1#安装
2yum -y install keepalived

创建 check_apiserver.sh

1# 创建检测脚本
2vim /etc/keepalived/check_apiserver.sh 
 1#!/bin/bash
 2
 3# VIP 地址(你的 Kubernetes apiserver 将通过这个 VIP 暴露)
 4APISERVER_VIP="10.10.10.68" # 设定你自己的vip
 5APISERVER_PORT="6443"
 6
 7errorExit() {
 8  echo "*** $*" 1>&2
 9  exit 1
10}
11
12# 检查 apiserver 的 /healthz
13curl -sf --max-time 3 https://${APISERVER_VIP}:${APISERVER_PORT}/healthz \
14  -k -o /dev/null || errorExit "API Server Unhealthy"

配置master

1vim /etc/keepalived/keepalived.conf
 1vrrp_script chk_apiserver {
 2    script "/etc/keepalived/check_apiserver.sh"
 3    interval 3
 4    weight -10
 5    fall 3
 6    rise 2
 7}
 8
 9vrrp_instance VI_1 {
10    state MASTER
11    interface eth0 # 改为你实际网关
12    virtual_router_id 51
13    priority 120 #master改为最大值
14    advert_int 1
15
16    authentication {
17        auth_type PASS
18        auth_pass 123456 #改为实际的密码
19    }
20
21    virtual_ipaddress {
22        10.10.10.68/24  #改为vip地址
23    }
24
25    track_script {
26        chk_apiserver
27    }
28}

启动keepalived

1systemctl enable keepalived --now
2systemctl status keepalived
3# 检测vip是否正常
4ip a | grep eth0
5ping 10.10.10.68
6curl -k https://10.10.10.68:6443/healthz

配置 backup

1vim /etc/keepalived/keepalived.conf
 1vrrp_script chk_apiserver {
 2    script "/etc/keepalived/check_apiserver.sh"
 3    interval 3
 4    weight -10
 5    fall 3
 6    rise 2
 7}
 8
 9vrrp_instance VI_1 {
10    state BACKUP                   # master2/master3 上改为 BACKUP
11    interface eth0
12    virtual_router_id 51
13    priority 100                   # master2: 100, master3: 90
14    advert_int 1
15
16    authentication {
17        auth_type PASS
18        auth_pass 123456
19    }
20
21    virtual_ipaddress {
22        10.10.10.68/24
23    }
24
25    track_script {
26        chk_apiserver
27    }
28}

启动keepalived

1systemctl enable keepalived --now
2systemctl status keepalived
3# 检测vip是否正常
4ping 10.10.10.68
5curl -k https://10.10.10.68:6443/healthz