kubernetes - 如何在负载均衡期间检查哪个 Kubernetes pod 正在响应?
问题描述
我在 kubernetes 上部署了一个简单的 Web 应用程序。
我有两个 Pod 和 Service。请求应该在两个 pod 之间平衡。我如何验证这一点?
也许有一些工具或命令?当我点击(发出请求)我的应用程序时,我想在控制台中看到类似的内容:
request on pod1
request on pod2
request on pod2
解决方案
一种方法是在将响应从 pod 发送回客户端之前,将 podname 或 podip 或主机名或其他标识符添加到 HTTP 标头。然后在客户端,您可以检查标头以检查哪个 pod 响应了该特定请求。
例如,您可以在 pod 中定义 env 如下
env:
- name: MY_POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: MY_POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
然后您可以读取环境变量MY_POD_NAME
并将MY_POD_IP
它们添加到 http 标头中,并在日志中打印它们。
推荐阅读
- azure-cosmosdb - 使用 RBAC 在 Azure Cosmos DB 帐户中创建数据库
- spring-boot - ManyToOne 映射和findingBySchoolId
- gridview - SwiftUi Nested ForEach 导致同一视图的意外渲染
- sql - 剩余月份的天数返回 EOM 日期的错误值
- elasticsearch - Wagtail 为不同的语言配置 Elasticsearch
- c++ - QT ComboBox dropdown position moving on Linux
- javascript - java中的函数错误
- r - 在 R 中的一行代码中更改几列的数据类型
- google-sheets - 计算单个单元格的日期数
- visual-studio-code - 带有头文件的 Raspberry Pi 奇怪行为的 VS 代码