1. 程式人生 > >Cosbench測試s3 ceph物件儲存

Cosbench測試s3 ceph物件儲存

Cosbench測試物件儲存

一、Cosbench安裝

下載地址

http://cosbench.1094679.n5.nabble.com/

安裝步驟

1cd ~

2解壓 unzip 0.4.2.c4.zip

3rm cos

4ln -s 0.4.2.c4/  cos

5cd cos

6chmod -x *.sh

二、Cosbench使用

1)啟動cosbench

Ⅰ cd cos 

Ⅱ sh -x start-all.sh

     啟動成功

!!! Service will listen on web port: 18088 !!!

!!! Service will listen on web port: 19088 !!!

ps aux 可以看到啟動了一個driver和一個controller

java -Dcosbench.tomcat.config=conf/driver-tomcat-server.xml -server -cp main/org.eclipse.equinox.launcher_1.2.0.v2011

java -Dcosbench.tomcat.config=conf/controller-tomcat-server.xml -server -cp main/org.eclipse.equinox.launcher_1.2.0.v

2)可能遇到的啟動失敗的坑排查

1、啟動報錯,檢查 start-cosbench

指令碼將TOOL_PARAMS="-i 1",改為TOOL_PARAMS=""

2、啟動時提示Ncat: Connection refused.,停止啟動,執行ncat 0.0.0.0 18088,再次啟動就可以啟動成功

3、關閉防火牆 service iptables stop

3)配置cosbench 測試ceph s3介面

1、配置xml配置檔案

<?xml version="1.0" encoding="UTF-8" ?>

<workload name="s3-test" description="test for s3">

  <storage type="s3" config="accesskey=1a044503840e47d1b5766a5785725294;secretkey=9f14ffd60d1e4fe2b4965be3223994e7;endpoint=http://172.19.0.65;path_style_access=true" />

  <workflow>

    <workstage name="createbucket">

      <work type="init" workers="1" config="cprefix=s3bucktest;containers=r(1,10)" />

    </workstage>

    <workstage name="putobj">

      <work type="prepare" workers="16" config="cprefix=s3bucktest;containers=r(1,10);objects=r(1,1000);sizes=c(32)MB" />

    </workstage>

  <workstage name="getobj">

      <work name="main" workers="16" runtime="604800">

        <operation type="read" ratio="50" config="cprefix=s3bucktest;containers=u(1,10);objects=u(1,1000)" />

<operation type="write" ratio="50" config="cprefix=s3bucktest;containers=u(1,10);objects=u(1000,2000);sizes=c(32)MB" />

      </work>

    </workstage>

<workstage name="delobj">

      <work type="cleanup" workers="1" config="cprefix=s3bucktest;containers=r(1,10);objects=r(1,2000)" />

    </workstage>

    <workstage name="delbucket">

     <work type="dispose" workers="1" config="cprefix=s3bucktest;containers=r(1,10)" />

    </workstage>

  </workflow>

</workload>

2、上傳配置檔案,執行負載測試

 開啟 http://ip:19088/controller/


4)配置檔案解析

   配置檔案中包括 storage 型別配置、workflow配置

1、Storage配置:

  <storage type="s3" config="accesskey=1a044503840e47d1b5766a5785725294;secretkey=9f14ffd60d1e4fe2b4965be3223994e7;endpoint=http://172.19.0.65;path_style_access=true" />

   Ⅰ、Storage type:“S3”,測試ceph s3介面

   Ⅱ、config accesskeysecretkey從ceph中取

   Ⅲ、endpoint:提供介面服務的點,根據實際IP配置

2、workflow配置

Ⅰ 建立bucket

<workstage name="createbucket">

      <work type="init" workers="1" config="cprefix=s3bucktest;containers=r(1,10)" />

    </workstage>

2   上傳檔案

    <workstage name="putobj">

      <work type="prepare" workers="16" config="cprefix=s3bucktest;containers=r(1,10);objects=r(1,1000);sizes=c(32)MB" />

    </workstage>

3  檔案讀寫 55比例

 <workstage name="getobj">

      <work name="main" workers="16" runtime="604800">

        <operation type="read" ratio="50" config="cprefix=s3bucktest;containers=u(1,10);objects=u(1,1000)" />

<operation type="write" ratio="50" config="cprefix=s3bucktest;containers=u(1,10);objects=u(1000,2000);sizes=c(32)MB" />

      </work>

    </workstage>

刪除物件

 <workstage name="delobj">

      <work type="cleanup" workers="1" config="cprefix=s3bucktest;containers=r(1,10);objects=r(1,2000)" />

    </workstage>

刪除bucket

<workstage name="delbucket">

     <work type="dispose" workers="1" config="cprefix=s3bucktest;containers=r(1,10)" />

    </workstage>