Project

General

Profile

Actions

Subtask #6664

open

Tasks #7112: Teuthology performance testing tracker

Add fio task for RBD performance testing

Added by Mark Nelson over 10 years ago. Updated about 10 years ago.

Status:
New
Priority:
Normal
Category:
-
% Done:

0%

Source:
other
Tags:
Backport:
Reviewed:
Affected Versions:

Description

We need a task to run fio. Should be fairly similar to the rados bench task in substance and style.

We will want to be able to specify the following options:

1) test time
2) io depth
3) io type (read, write, randread, randwrite)
4) io engine
5) op size
6) file size

In addition, we may want to further specify the RBD pool size, replication level, etc. We may also want to be able to specify both RBD and underlying OSD read ahead, nr_requests, etc. There are potentially additional settings that we will want to specify at the kernel RBD or QEMU/KVM level regarding RBD cache, noshare, etc but that likely should be done in a more generic place.

Actions #1

Updated by Mark Nelson over 10 years ago

Also, we must ensure that before any read takes place the entire file is written out in it's entirety. That may mean always deleting data files between tests or prefilling the test file before tests are run.

Actions #2

Updated by Danny Al-Gaaf over 10 years ago

JFYI: we are currently writing a fio backend for RBDs to run performance tests directly with fio on RBDs via librbd. This is may interesting for you too.

This allows you to run comparable tests with fio on RBDs handeld via: kernel RBD, fuse, libvirt/qemu and on the library.

The backend is basically working, but not complete yet. We will announce it as soon as we finished it. You can find the current state here:
https://github.com/TelekomCloud/fio/blob/rbd-engine/engines/rbd.c

Actions #3

Updated by Ian Colle over 10 years ago

  • Target version set to v0.76
Actions #4

Updated by Ian Colle over 10 years ago

  • Assignee set to Tamilarasi muthamizhan
Actions #5

Updated by Zack Cerza over 10 years ago

  • Parent task set to #7112
Actions #6

Updated by Danny Al-Gaaf about 10 years ago

The basic implementation for a rbd engine is now part of fio upstream.

I work currently on extending the options to be able to create/delete a RBD directly from fio for automated test. But the engine is already working.

Actions

Also available in: Atom PDF