검색

12.7. Crimson 프로파일링

download PDF

Crimson 프로파일링은 Crimson을 사용하여 성능 테스트를 수행하는 방법론입니다. 다음과 같은 두 가지 유형의 프로파일링이 지원됩니다.

  • flexible I/O(FIO) - crimson-store-nbd 는 FIO와 함께 사용할 수 있는 구성 가능한 FuturizedStore 내부를 NBD 서버로 표시합니다.
  • Ceph 벤치마킹 도구(CBT) - Ceph 클러스터의 성능을 테스트하기 위해 python에서 테스트한 것입니다.

프로세스

  1. libnbd 를 설치하고 FIO를 컴파일합니다.

    예제

    [root@host01 ~]# dnf install libnbd
    [root@host01 ~]# git clone git://git.kernel.dk/fio.git
    [root@host01 ~]# cd fio
    [root@host01 ~]# ./configure --enable-libnbd
    [root@host01 ~]# make

  2. 빌드 crimson-store-nbd:

    예제

    [root@host01 ~]# cd build
    [root@host01 ~]# ninja crimson-store-nbd

  3. 블록 장치를 사용하여 crimson-store-nbd 서버를 실행합니다. /dev/nvme1n1 과 같이 원시 장치의 경로를 지정합니다.

    예제

    [root@host01 ~]# export disk_img=/tmp/disk.img
    [root@host01 ~]# export unix_socket=/tmp/store_nbd_socket.sock
    [root@host01 ~]# rm -f $disk_img $unix_socket
    [root@host01 ~]# truncate -s 512M $disk_img
    [root@host01 ~]# ./bin/crimson-store-nbd \
      --device-path $disk_img \
      --smp 1 \
      --mkfs true \
      --type transaction_manager \
      --uds-path ${unix_socket} &
     --smp is the CPU cores.
    --mkfs initializes the device first.
    --type is the backend.

  4. nbd.fio라는 FIO 작업을 생성합니다.

    예제

    [global]
    ioengine=nbd
    uri=nbd+unix:///?socket=${unix_socket}
    rw=randrw
    time_based
    runtime=120
    group_reporting
    iodepth=1
    size=512M
    
    [job0]
    offset=0

  5. FIO가 컴파일된 Crimson 오브젝트를 테스트합니다.

    예제

    [root@host01 ~]# ./fio nbd.fio

Ceph 벤치마크 툴(CBT)

두 분기에 대해 동일한 테스트를 실행합니다. 하나는 주요(마스터), 다른 하나는 선택한 주제 분기입니다. 테스트 결과를 비교합니다. 모든 테스트 사례와 함께 두 테스트 결과가 비교될 때 회귀를 수행해야 하는지 여부를 확인하기 위해 일련의 규칙이 정의됩니다. 가능한 회귀 문제가 발견되면 규칙과 해당 테스트 결과가 강조 표시됩니다.

프로세스

  1. 주요 분기와 주제 분기에서 make crimson osd 를 실행합니다.

    예제

    [root@host01 ~]# git checkout master
    [root@host01 ~]# make crimson-osd
    [root@host01 ~]# ../src/script/run-cbt.sh --cbt ~/dev/cbt -a /tmp/baseline ../src/test/crimson/cbt/radosbench_4K_read.yaml
    [root@host01 ~]# git checkout topic
    [root@host01 ~]# make crimson-osd
    [root@host01 ~]# ../src/script/run-cbt.sh --cbt ~/dev/cbt -a /tmp/yap ../src/test/crimson/cbt/radosbench_4K_read.yaml

  2. 테스트 결과를 비교합니다.

    예제

    [root@host01 ~]# ~/dev/cbt/compare.py -b /tmp/baseline -a /tmp/yap -v

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.