Kubernetes Ingress-Nginx实现高可用
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,假定我们在Kubernetes 指定两个worker节点中部署了ingress nginx来为后端的pod做proxy,这时候我们就需要通过keepalived实现高可用,提供对外的VIP首先我们要先
千家信息网最后更新 2026年10月31日Kubernetes Ingress-Nginx实现高可用
假定我们在Kubernetes 指定两个worker节点中部署了ingress nginx来为后端的pod做proxy,这时候我们就需要通过keepalived实现高可用,提供对外的VIP
首先我们要先确保有两个worker节点部署了ingress nginx
在本实验中,环境如下:
| IP地址 | 主机名 | 描述 |
|---|---|---|
| 10.0.0.31 | k8s-master01 | |
| 10.0.0.34 | k8s-node02 | ingress nginx、keepalived |
| 10.0.0.35 | k8s-node03 | ingress nginx、keepalived |
1、查看ingress nginx状态
[root@k8s-master01 Ingress]# kubectl get pod -n ingress-nginx -o wideNAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATESnginx-ingress-controller-85bd8789cd-8c4xh 1/1 Running 0 62s 10.0.0.34 k8s-node02 nginx-ingress-controller-85bd8789cd-mhd8n 0/1 Pending 0 3s nginx-ingress-controller-85ff8dfd88-vqkhx 1/1 Running 0 3m56s 10.0.0.35 k8s-node03 创建一个用于测试环境的namespace
kubectl create namespace test2、部署一个Deployment(用于测试)
apiVersion: apps/v1kind: Deploymentmetadata: name: myweb-deploy # 部署在测试环境 namespace: testspec: replicas: 3 selector: matchLabels: name: myweb type: test template: metadata: labels: name: myweb type: test spec: containers: - name: nginx image: nginx:1.13 imagePullPolicy: IfNotPresent ports: - containerPort: 80---# serviceapiVersion: v1kind: Servicemetadata: name: myweb-svcspec: selector: name: myweb type: test ports: - port: 80 targetPort: 80 protocol: TCP---# ingress执行kubectl create 创建deployment
kubectl create -f myweb-demo.yaml查看deployment是否部署成功
[root@k8s-master01 Project]# kubectl get pods -n test -o wide | grep "myweb"myweb-deploy-6d586d7db4-2g5ll 1/1 Running 0 23s 10.244.3.240 k8s-node02 myweb-deploy-6d586d7db4-cf7w7 1/1 Running 0 4m2s 10.244.1.132 k8s-node01 myweb-deploy-6d586d7db4-rp5zc 1/1 Running 0 3m59s 10.244.2.5 k8s-node03 3、在两个worker节点部署keepalived
VIP:10.0.0.130,接口:eth0
1.安装keepalived
yum -y install keepalived1.k8s-node03节点作为master配置keepalived
[root@k8s-node03 ~]# cat /etc/keepalived/keepalived.conf! Configuration File for keepalivedglobal_defs { notification_email_from Alexandre.Cassen@firewall.loc router_id k8s-node03 vrrp_skip_check_adv_addr vrrp_strict vrrp_garp_interval 0 vrrp_gna_interval 0}vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 110 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.130/24 dev eth0 label eth0:1 }}2.k8s-node03节点作为配置keepalived
[root@k8s-node03 ~]# cat /etc/keepalived/keepalived.conf! Configuration File for keepalivedglobal_defs { router_id k8s-node03 vrrp_skip_check_adv_addr vrrp_strict vrrp_garp_interval 0 vrrp_gna_interval 0}vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 110 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.130/24 dev eth0 label eth0:1 }}3.k8s-node02节点配置keeplived
[root@k8s-node02 ~]# cat /etc/keepalived/keepalived.conf! Configuration File for keepalivedglobal_defs { router_id k8s-node02 vrrp_skip_check_adv_addr vrrp_strict vrrp_garp_interval 0 vrrp_gna_interval 0}vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.130/24 dev eth0 label eth0:1 }}4.两个节点启动keepalived并加入开机启动
systemctl start keepalived.servicesystemctl enable keepalived.service 启动完成后检查k8s-node03的IP地址是否已有VIP
[root@k8s-node03 ~]# ip add | grep "130" inet 10.0.0.130/24 scope global secondary eth0:15.在宿主机上配置hosts文件,实现IP和域名的解析
10.0.0.130 myweb.app.com6.浏览器测试访问
4.测试vip漂移
现在我将k8s-node03的keepalived进程关闭,那么vip就会漂移到k8s-node02
[root@k8s-node03 ~]# systemctl stop keepalived.service// 在k8s-node02上查看VIP[root@k8s-node02 ~]# ip add | grep "130" inet 10.0.0.130/24 scope global secondary eth0:1再次访问
节点
测试
两个
配置
环境
地址
成功
主机
再次
域名
宿主
接口
文件
浏览器
状态
端的
进程
实验
对外
检查
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
深圳市人人互联网科技有限公司
伟宏互联网科技
互联网科技公司税收优惠
上海挚品互联网科技
互联网科技公司怎么样
唐信互联网科技 大连
米客互联网科技
互联网高科技企业
长亮科技 互联网金融
中盈科技互联网信息有限公司
广州优美互联网科技
岳阳华臻互联网科技有限公司
长沙茂晟互联网科技有限公司
长沙互联网科技
科技互联网海报
众安科技工业互联网合作
伍佰万互联网科技怎么赚钱
35岁以上互联网科技行业
萌小萌互联网科技河南有限公司
上海互联网科技园景观
互联网属科技
科技互联网政务服务
麻工互联网科技
联恩商钥互联网科技有限公司
新华互联网科技校企合作
深圳前海聚择互联网科技有限公司
小米互联网科技园设置
重庆互联网医院沙龙医盟信息科技
移动互联网年度科技创新
互联网时代的科技公司