K8S测试网络的带宽和延时

1、测试命令

需要大家yum install qperf,这个工具能同时测试带宽和延时,很容易使用。

1、需要在其中一端开启服务端监听:

qperf

2、在另一端开启客户端压测:

qperf -t 10 10.42.158.21 tcp_bw tcp_lat

这个命令是意思是:

              --  运行10秒
              --  服务端IP:10.42.158.21
              --  测试TCP协议的极限带宽:tcp_bw
              --  测试TCP协议的延迟:tcp_lat

宿主机->宿主机

tcp_bw:
    bw  =  470 MB/sec
tcp_lat:
    latency  =  61.4 us

带宽470MB/秒,延迟61微秒。

延迟可能受到云主机网络环境影响,仅能拿来大概参考。

宿主机->POD

在node02上启动一个POD运行qperf服务端,这是通过nodeName参数指定调度到node02的:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: qperf-server
  labels:
    app: qperf-server
spec:
  replicas: 1
  selector:
    matchLabels:
      app: qperf-server
  template:
    metadata:
      labels:
        app: qperf-server
    spec:
      nodeName: node02
      containers:
      - name: centos
        image: centos:latest
        command: ["/bin/sh","-c","while true;do sleep 1;done"]

进入qperf-server:

kubectl exec -it qperf-server-5745f97ccc-cf8sm sh

然后启动qperf服务端:

qperf

然后在node01宿主机上发起到POD的测试:

[root@node01 ~]# qperf -t 10 10.244.1.96 tcp_bw tcp_lat
tcp_bw:
    bw  =  302 MB/sec
tcp_lat:
    latency  =  77 us

网络性能损耗:36%。

上一篇:百度,高德,84坐标系互相转换


下一篇:MySQL性能半同步复制VS异步复制