kubernetes - 如何在 Kubernetes 中拦截对服务的请求?
问题描述
假设我在 Kubernetes 中定义了一个Service
命名。my-backend
我想拦截发送到该服务的每个请求,正确的方法是什么?例如,同一命名空间下的另一个容器通过http://my-backend发送请求。
我尝试使用带有验证 Webhook 的准入控制器。但是,它可以拦截对服务资源的 CRUD 操作,但无法拦截到特定服务的任何连接。
解决方案
在 Kubernetes中没有直接的方法来拦截对服务的请求。
对于解决方法,这是您可以做的-
创建一个 sidecar 容器来记录每个传入的请求。日志记录
在您的容器中运行
tcpdump -i eth0 -n
并过滤掉请求使用Zipkin
在云提供商上创建服务,将有自己的日志记录机制。对于前-aws 上的负载均衡器服务将在 S3 上生成其日志。aws elb 日志
推荐阅读
- flutter - 颤动:将屏幕旋转到新屏幕而不是以前的屏幕
- psql - 从 PSQL 中的文件运行 sql 脚本并将输出保存到文件
- javascript - 如何设置默认高度 - 高度不起作用 inline='true'
- sql - SSIS - Oracle OLE DB 源中的多个语句
- android - Room Coroutine 在主线程中执行
- java - 如何通过传入参数来获取查询中函数的值
- javascript - v-if 中子数组的数据
- kql - Kusto 设置查询的变量输出
- php - PHP If/Else 语句未命中所有情况
- java - Leetcode 消除障碍的网格中的最短路径