kubernetes - Kubernetes 总是将请求转发到同一个 pod
问题描述
我有一个 Kubernetes 集群,有 1 个控制平面和 1 个工作人员,工作人员中有 3 个 pod。Type: NodePort 的 Pod 和服务在同一个节点上。我期待该服务对 Pod 之间的请求进行负载平衡,但看起来所有请求总是只转发到一个 Pod。
apiVersion: v1
kind: Service
metadata:
name: web-svc
spec:
type: NodePort
ports:
- port: 80
targetPort: 80
nodePort: 30002
selector:
app: web
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: web-app
labels:
app: web
spec:
selector:
matchLabels:
app: web
replicas: 3
template:
metadata:
labels:
app: web
spec:
containers:
- name: web-app
image: webimage
ports:
- containerPort: 80
imagePullPolicy: Never
resources:
limits:
cpu: "0.5"
requests:
cpu: "0.5"
~
解决方案
如果您的请求具有持久的 TCP 连接,这是预期的行为。尝试添加"connection":"close"
您的 HTTP 标头。
推荐阅读
- bootstrap-4 - 如何使用引导样本计算多变量 cox 回归模型的 c 指数?
- python - Python、Django:分别用外键合并多个模型
- r - 如何在R中将值同时转换为列和列
- caffe - Openpose:在 libopenpose.dylib 上编译错误
- reactjs - 在 ReactJS 中结合 useState 和 useRef
- python-3.x - 数据表 - 带有链式下拉列表的 stateLoadCallback 方法 - 重新加载到页面时重置最后选择的选项
- video - FFMPEG:一个动作的两个进程
- python-3.x - 动态标准化 pandas 中的公司名称
- python - 确定公共子串
- docker - 如何从 docker swarm 中的另一个服务调用服务