(三)Kubernetes/K8s 高可用架构
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,高可用架构 采用多master+多lb+keepalive的方案实现(注意其中lb的ip 地址的证书)1,多master安装将原master 1 部署文件拷贝到新master,修改bind 地址 启动
千家信息网最后更新 2025年12月02日(三)Kubernetes/K8s 高可用架构

高可用架构 采用多master+多lb+keepalive的方案实现(注意其中lb的ip 地址的证书)
1,多master安装
将原master 1 部署文件拷贝到新master,修改bind 地址 启动 注意 由于需要连接etcd 需要拷贝etcd 的证书
scp -r /opt/kubernetes root@192.168.0.102:/optscp -r /opt/etcd/ssl root@192.168.0.102:/opt/etcdscp /usr/lib/systemd/system/{kube-apiserver,kube-controller-manager,kube-scheduler}.service root@192.168.31.64:/usr/lib/systemd/system##修改apiserver配置文件为本地IPvim /opt/kubernetes/cfg/kube-apiserver.conf--bind-address=192.168.0.102 \--secure-port=6443 \--advertise-address=192.168.0.102 \#启动for i in $(ls /opt/kubernetes/bin/);do systemctl start $i;systemctl enable $i; donelb部署
lb--nginx-mater
#安装Nginx+Keepalivedrpm -ivh http://nginx.org/packages/rhel/7/x86_64/RPMS/nginx-1.16.0-1.el7.ngx.x86_64.rpmvim /etc/nginx/nginx.conf ##注意添加的配置文件的位置 特别是需要inclued 插入放于events 和http 之间stream { log_format main '$remote_addr $upstream_addr - [$time_local] $status $upstream_bytes_sent'; access_log /var/log/nginx/k8s-access.log main; ## 安装好 之后不需要 可以关闭 日志量比较大 upstream k8s-apiserver { server 192.168.0.101:6443; ## 后端安装master 地址 server 192.168.0.102:6443; } server { listen 6443; proxy_pass k8s-apiserver; }}keepalived 高可用
yum install keepalivedvi /etc/keepalived/keepalived.confglobal_defs { notification_email { acassen@firewall.loc failover@firewall.loc sysadmin@firewall.loc } notification_email_from Alexandre.Cassen@firewall.loc smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id NGINX_MASTER} vrrp_script check_nginx { script "/etc/keepalived/check_nginx.sh" }vrrp_instance VI_1 { state MASTER interface ens33 ## 自己机器网卡的名称 virtual_router_id 51 # VRRP 路由 ID实例,每个实例是唯一的 priority 100 # 优先级,备服务器设置 90 advert_int 1 # 指定VRRP 心跳包通告间隔时间,默认1秒 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.0.105/24 ## 虚拟vip地址 } track_script { check_nginx } }判断nginx 进程脚本
#!/bin/bashcount=$(ps -ef |grep nginx |egrep -cv "grep|$$")if [ "$count" -eq 0 ];then exit 1else exit 0fisystemctl start keepalivedsystemctl enable keepalivedlb-nginx-backup
nginx 安装同上
yum install keepalivedvi /etc/keepalived/keepalived.confglobal_defs { notification_email { acassen@firewall.loc failover@firewall.loc sysadmin@firewall.loc } notification_email_from Alexandre.Cassen@firewall.loc smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id NGINX_BACKUP} vrrp_script check_nginx { script "/etc/keepalived/check_nginx.sh"}vrrp_instance VI_1 { state BACKUP ##标注角色 interface ens33 ##自己网卡的名称 virtual_router_id 51 # VRRP 路由 ID实例,每个实例是唯一的 priority 90 # 优先级,备服务器设置 90 advert_int 1 # 指定VRRP 心跳包通告间隔时间,默认1秒 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.0.105/24 } track_script { check_nginx } }# cat /etc/keepalived/check_nginx.sh #!/bin/bashcount=$(ps -ef |grep nginx |egrep -cv "grep|$$")if [ "$count" -eq 0 ];then exit 1else exit 0fi# systemctl start keepalived# systemctl enable keepalived测试
##在lb master节点ip addr show ## 查看vip 是否绑定到了网卡上面 关闭nginx 查看vip 是否能漂移到backup 上面修改所有node apiserver地址填写为vip
cd /opt/kubernetes/cfggrep 192 *bootstrap.kubeconfig: server: https://192.168.31.63:6443kubelet.kubeconfig: server: https://192.168.31.636443kube-proxy.kubeconfig: server: https://192.168.31.63:6443#批量修改:sed -i 's#192.168.0.63#192.168.0.105 * curl -k --header "Authorization: Bearer c47ffb939f5ca36231d9e3121a252940" https://192.168.31.60:6443/version##此teken 是bootstarp 的token
地址
实例
文件
网卡
优先级
名称
拷贝
时间
服务器
证书
路由
通告
服务
配置
架构
之间
位置
方案
日志
机器
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
163邮箱为什么总是服务器超时
服务器怎么扫鸡
福建财务软件开发哪里好
计算机网络安全知识普及率
什么是手机软件开发
上海百励祥通网络技术
网络安全技术能力训练
无锡运营软件开发价目表
tbc 部落哪个服务器出名
杭州java软件开发服务费
付培建学的什么网络技术
女孩适不适合学网络安全
昆明软件开发公司招聘待遇
人间地狱服务器怎么自己搭建
专业app软件开发
书本贴图软件开发
武汉大学网络安全学院网站
机架式服务器噪音
武汉全国软件开发培训班
数据库的加工说明
微信使用的软件开发模型
2019新数据库技术
玖玖软件开发有限公司招聘
数据库查找耗能最多查询
安卓数据库工作流
达梦数据库用户名
群信软件开发时间
汕头仓库管理软件开发
无盘服务器网卡分流和聚合测评
计算机安装网络技术