Ingress对服务做限流

随着现在更多环境的服务进行上云,对网关这块能实现的功能也比较关注,除了能正常的实现代理的作用,还需要可以进行比如:熔断,链路追踪,限流等,这里主要操作下对ingress的限流。
首先还是需要在k8s集群上部署一个服务用来进行测试,我这里部署了一个nginx的pod,然后用ingress代理这个nginx服务,最后在ingress上做限流操作,通过访问ingress查看是否达到限流的作用。
下面创建ingress的yaml来代理nginx这个服务并做限流,如下:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: test-ingress-limit
annotations:
nginx.ingress.kubernetes.io/limit-rps: “1”
spec:
ingressClassName: nginx
rules:
- host: csh-limit.com
http:
paths:
- path: /index.html
pathType: Prefix
backend:
serviceName: nginx-svc
servicePort: 80

注: nginx.ingress.kubernetes.io/limit-rps:每秒从指定 IP 接受的请求数。突发限制设置为此限制乘以突发乘数,默认乘数为5。当客户端超过此限制时,返回limit-req-status-code default: 503。

接下来开始进行创建并模拟请求看看,如下:
在这里插入图片描述
在这里插入图片描述如图所示通过模拟访问ingress已经达到限流的作用,具体的配置参数可以参考如下地址:

https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#rate-limiting

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值