如何查看k8s中service的负载均衡策略

在Kubernetes中,Service的负载均衡策略一般由kube-proxy负责,kube-proxy使用iptables或IPVS规则进行负载均衡。默认情况下,kube-proxy使用的是轮询(Round Robin)策略,但是在使用IPVS模式时,可以选择不同的负载均衡算法。

查看kube-proxy模式

首先,你需要确认kube-proxy的工作模式(iptables或IPVS):

bash 复制代码
kubectl get configmap -n kube-system kube-proxy -o yaml

在输出中,查找 mode 字段来确定kube-proxy的模式。例如:

bash 复制代码
apiVersion: v1
data:
  config.conf: |
    kind: KubeProxyConfiguration
    apiVersion: kubeproxy.config.k8s.io/v1alpha1
    mode: "ipvs"

如果模式是 ipvs,则可以继续查看IPVS调度算法。

查看IPVS调度算法

在IPVS模式下,你可以查看当前使用的调度算法。以下是在节点上执行的步骤:

  1. 连接到运行kube-proxy的节点。
  2. 使用以下命令查看IPVS服务和调度算法:
bash 复制代码
sudo ipvsadm -Ln

输出示例:

bash 复制代码
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  10.96.0.1:443 rr
  -> 192.168.1.1:443              Masq    1      0          0
  -> 192.168.1.2:443              Masq    1      0          0

在这里,rr 表示轮询(Round Robin)调度算法。

相关推荐
大侠锅锅8 小时前
第 4 篇:策略模式实践——用统一接口管理 Docker 容器、原生进程与 K3s Pod
docker·容器·边缘计算·策略模式·iot
小蓝波10 小时前
docker 的命令
java·docker·容器
2301_8011847512 小时前
docker 工作
java·docker·容器
是大强15 小时前
Docker中文件修改的三种方法
运维·docker·容器
Waay1 天前
面试口述版:个人对 Prometheus 完整理解
运维·学习·云原生·面试·职场和发展·kubernetes·prometheus
我是一颗柠檬1 天前
【Java项目技术亮点】加权轮询负载均衡算法
java·算法·负载均衡
云烟成雨TD1 天前
Kubernetes 系列【4】基础概念
云原生·容器·kubernetes
云烟成雨TD1 天前
Kubernetes 系列【3】使用 kubeadm 创建 K8s 集群
云原生·容器·kubernetes
qq_349447951 天前
十二、k8s中prometheus配置文件如何热加载
容器·kubernetes·prometheus