IBM Kubernetes Service持久化存储:Portworx性能测试

本来已经打算对于IKS的跨区域持久化存储封笔,突然看了同事写了文件存储、块存储和对象存储的性能报告,就想到了既然已经研究了Portworx,就应该继续深入挖掘Portworx的性能。这样也能把IBM Kubernetes Service持久化存储的性能报告补全,也是为了企业青睐的Redhat OpenShift Kubernetes Service(ROKS) 测试一下企业级的Portworx。由于Portworx也可以挂载到基于SDS的ROKS集群,所以在IKS上的测试结果适用于IBM Cloud上的OpenShift。

在开始性能测试前,需要先找个合适的工具,有了前人摘树很快定位到了的dbench这个工具:https://github.com/leeliu/dbench

同时还需要准备个基于SDS的IKS环境以及Portworx,具体安装和配置可以参考我之前两篇文章。一切就绪后,我们首先打开IKS集权访问权和cloudshell。

配置完后,就可以访问此IKS集群了。接下来我们查看下Portworx的存储类:

我们继续查看一下“portworx-db-sc"的描述,其中参数io_profile=db,归类为性能非常好。

dbench的参考文档中提到的dbench.yaml示例: https://raw.githubusercontent.com/logdna/dbench/master/dbench.yaml

我们可以根据这个示例进行修改,使用存储类“portworx-db-sc”来构建PVC,修改后的yaml如下:

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
   name: px-pvc
   annotations:
     volume.beta.kubernetes.io/storage-class: portworx-db-sc
spec:
   accessModes:
     - ReadWriteOnce
   resources:
     requests:
       storage: 500Gi
---
apiVersion: batch/v1
kind: Job
metadata:
  name: px-dbench
spec:
  template:
    spec:
      containers:
      - name: px-dbench
        image: ndrpnt/dbench:1.0.0
        imagePullPolicy: Always
        # command: ['sh', '-c', 'fio -v']
        env:
          - name: DBENCH_MOUNTPOINT
            value: /data
          - name: DBENCH_QUICK
            value: "no"
          - name: FIO_SIZE
            value: 1G
          #- name: FIO_OFFSET_INCREMENT
          #  value: 256M
          - name: FIO_DIRECT
            value: "1"
        volumeMounts:
        - name: px-vol
          mountPath: /data
      restartPolicy: Never
      volumes:
      - name: px-vol
        persistentVolumeClaim:
          claimName: px-pvc
  backoffLimit: 4

需要注意的是dbench的镜像库已经迁移到了ndrpnt/dbench

我将上面的内容保存为文件px-fio.yaml,并上传到cloudshell,然后执行:kubectl create -f px-fio.yaml

这一步会创建pvc,pod和job,容器生成后会自动执行job进行存储的性能测试。我们除了查看pod和pvc,同时还能看到工作节点的资源使用情况,来判断是在哪个工作节点运行的测试脚本。

一般在两分钟左右测试完成,这时我们可以查看容器中job日志:kubectl logs -c px-dbench -f job/px-dbench

通常会输出很多测试内容,一般我们只要看个“Dbench Summary”就行,如下图所示:

罗列一下我们测试环境:

IKS跨区域部署集群,3个工作节点,每个工作节点使用的是裸金属规格:ms3c.16x64.1.9tb.ssd,Kubernetes版本1.17.7_1529。

最终我们转换一下上面的数据,此次的Portworx性能测试如下图所示,总结一句就是:除了贵,没毛病。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值