kubernetes基础知识之ingress速率限制
off999 2025-09-29 09:54 53 浏览 0 评论
kubernetes ingress有时候需要限制速率以降低后端压力,或者限制单个IP每秒的访问速率防止攻击,此时可以使用nginx的rate limit进行配置。
nginx.ingress.kubernetes.io/limit-rps:限制每秒的连接数,单个IP。
nginx.ingress.kubernetes.io/limit-rpm: 限制每分钟的连接,单个IP。
nginx.ingress.kubernetes.io/limit-rate:限制客户端每秒传输的字节数,单位是K,需要开启proxy-buffering。
nginx.ingress.kubernetes.io/limit-whitelist: 速率限制白名单。
压力测试:
ab -c 10 -n 100 http://www.test.com/ | grep requests
-c指定并发请求数,-n指定总的请求数。
touch ingress.yaml
vim ingress.yaml:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress-nginx
namespace: ingress-nginx
annotations:
nginx.ingress.kubernetes.io/limit-connections: "1"
spec:
ingressClassName: nginx
rules:
- host: www.test.com
http:
paths:
- pathType: Prefix
path: "/"
backend:
service:
name: nginx-service
port:
number: 80
kubectl create -f ingress.yaml
添加dns解析记录:
echo "$ip $domain_name">> /etc/hosts
压力测试:
ab -c 10 -n http://www.test.com/ | grep requests
~-~
优先级limit-connections高于limit-rpm,limit-rpm高于limit-rps。
~-~
ingress灰度发布或者金丝雀发布
灰度发布,就是让一部分版本先变更成新的版本,然后按照更新进度,逐步更新成最新版本。
灰度发布也叫渗透发布、滚动更新。
就是灰度从10%、20%、30%、40%,一直到100%,这个灰度浓度或者黑度逐渐提高。
金丝雀发布:
在新版本的ingress资源清单配置文件的annotations中增加两条:
nginx.ingress.kubernetes.io/canary: "true"
nginx.ingress.kubernetes.io/canary-weight: "10"
canary:金丝雀
表明是灰度发布、金丝雀发布,表明切多少流量到新的环境,举例中是10%,也就是把浓度或者百分比设置为了10%。
测试:
for i in {1..100};do curl $domain_name>>sum;done
cat sum |sort|uniq -c
旧版本比例:新版本比例大概为9:1。
比例可以调节:
kubectl edit ingress ingress_new_version -n ingress-nginx
修改annotations中的canary-weight为50。
再重新执行for循环,可以查看到滚动更新比例大概为50%。
鼓励的话语:低谷不是终点,而是铸就坚韧灵魂的熔炉,会更加无坚不摧!
相关推荐
- 笔记本电脑联想好还是惠普好
-
惠普和联想为全球名列前茅的电脑品牌,其中惠普为美国品牌,联想为中国品牌。联想作为一个后起之秀,当年通过收购thankpad品牌,走向全球。电脑中又分出多种风格的子品牌,有的注重游戏性能,有的注重轻薄商...
- 如何安装路由器步骤(安装路由器操作步骤)
-
路由器安装设置共分两个步骤,依次是”路由器与光猫“串联,“宽带账号写入路由器”即可,方法如下:?步骤一首先将路由器与光猫串联,用网线一端连接至“光猫”的LAN端口,另一端连接至“路由器”的WAN端口“...
- 86位系统是不是32位(86位和32位)
-
众所周知,同众多主打影音娱乐的系统不同,Windows从工业生产到金融消费、从个人应用到企业环境,应用领域极其广泛。以工业生产为例,嵌入式设备只需满足生产中特定的任务,并不追求过剩性能,故而现有绝大多...
- msdn官网下载系统u盘(msdn下载后要怎么做u盘启动盘)
-
1.打开MSDN网站并搜索您需要下载的系统。2.找到并单击“下载”按钮。3.如果系统有多个版本,请选择您需要的版本。4.选择“保存到磁盘”并单击“确定”按钮。5.将U盘插入计算机,并打开文件...
- 如何快速重装电脑系统(怎样快捷重装系统)
-
十年前的老电脑win7和XP还是可以一战的,那么接下来一起看看十年前的老电脑重装系统方法吧!如何选择win7还是XP系统:1、WindowsXP要求的最低配置为64MB内存,而硬盘剩余空间只需...
- 快用苹果助手官方下载iphone用
-
原因:1、可能是因为网络不稳定等情况导致下载的文件损坏缺失的情况,您可以尝试删除后重新下载安装;2、因设备可用空间不足而导致的安装失败:请检查您的手机空间是否充足,手机空间不足,也会导致软件下载安装失...
- 电脑恢复出厂设置了怎么恢复数据
-
C盘数据会丢失,其他盘数据可以选择不删除而保留。恢复系统步骤如下。一、首先,打开电脑金瑞Windows10系统,在电脑桌面左下角点击“开始”,点击打开。二、然后,弹出的开始中选择“设置”,...
- 办公电脑(办公电脑租赁平台)
-
1、惠普战99推荐理由:这是一款具有144Hz高刷新率特点的轻松办公的强芯轻薄笔记本,采用15.6英寸广阔大屏,支持144Hz高刷新率,减少画面拖影和卡顿,带来更流畅的使用体验,惠普战99还是可以的!...
- win7安装版iso(Win7安装版提示没有驱动)
-
网上下载的,你确定是GHOST版本的吗,如果是。那它就在其中文件夹里面。你再打开几个文件夹就可以看到,当然,官方网站下载的好像没有。最简单的方法也是最有效的方法在左边不是有个系统安装器.exe...
- win7和win10哪个好看(win7和win10选哪个)
-
Win7系统最大的特点就是继承了XP系统的稳定优点,对硬件的兼容性强,Win10系统的内部有最新的DirectX12技术,在游戏体验方面,Win10系统要比Win7系统强很多。Win7和Win10可谓...
- 如何识别字体是哪一款字体(在线字体识别)
-
以下是其中几种常见的方法:1.观察字体的外观:首先,可以观察字体的外观,包括字体的粗细、字体的形状、笔画的形状等。不同的字体具有不同的风格和特征,因此可以通过观察字体的外观来识别它们。2.搜索特定的字...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
python入门到脱坑 输入与输出—str()函数
-
宝塔面板如何添加免费waf防火墙?(宝塔面板开启https)
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
使用 python-fire 快速构建 CLI_如何搭建python项目架构
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
