--- title: Istio 入口限速与黑白名单策略(EnvoyFilter、RateLimit 与验证) date: 2025-11-26 keywords: - EnvoyFilter - RateLimit - 黑白名单 - 入口网关 - 稳定性 description: 在Istio入口网关通过EnvoyFilter配置本地或外部限速与黑白名单策略,保护后端服务并提供验证与观测方法。 categories: - 文章资讯 - 技术教程 --- ## 概述 入口层限速与名单策略可在高峰与攻击场景下保护后端。通过EnvoyFilter启用本地限速或对接外部限速服务,并精确控制来源与路径。 ## 关键实践与参数 - 本地限速: `local_ratelimit` 令牌桶设置 - 外部限速: `rate_limit_service` 对接 - 名单策略: 基于IP或Header的黑白名单 - 观测: 统计限速与拒绝事件 ## 示例/配置/实现 ```yaml apiVersion: networking.istio.io/v1alpha3 kind: EnvoyFilter metadata: name: ingress-rl namespace: istio-system spec: workloadSelector: labels: { istio: ingressgateway } configPatches: - applyTo: HTTP_FILTER match: context: GATEWAY listener: { portNumber: 443 } proxy: { proxyVersion: ^1\. } patch: operation: INSERT_BEFORE value: name: envoy.filters.http.local_ratelimit typed_config: "@type": type.googleapis.com/envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit stat_prefix: rl token_bucket: { max_tokens: 100, tokens_per_fill: 100, fill_interval: 1s } ``` ## 验证 - 高并发限速: 入口请求超过阈值时被拒绝且后端稳定 - 名单生效: 黑名单来源被拒绝, 白名单放行 - 指标: 限速命中与拒绝计数可观测 - 策略调整: 参数变更后效果符合预期 ## 注意事项 - 入口层限速与下游策略协同 - 名单数据需安全管理与更新 - 在多网关副本下评估限速分布 - 定期复盘拦截与误报

发表评论 取消回复