Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Question]:Can the tool be used to measure disk latency? #1

Open
db-vmw opened this issue Jan 2, 2019 · 1 comment
Open

[Question]:Can the tool be used to measure disk latency? #1

db-vmw opened this issue Jan 2, 2019 · 1 comment
Labels
question Further information is requested

Comments

@db-vmw
Copy link

db-vmw commented Jan 2, 2019

Dear Team,
I want to inject disk latency fault on to my disk (mounted on Ubuntu) and run the application to capture the application behavior.
My Ubuntu system mounts an external storage (ISCSI) to /var directory. The application writes the data on to /var/lib most of the time. I want to inject slow write and read operation on to /var. Let me know if the said scenario can be achieved using Mizumochi tool. If yes, let me know the steps to install mizumochi tool and options to simulate slow read and write.

Thanks,
db

@mopp
Copy link
Contributor

mopp commented Jan 2, 2019

Hi!
Thanks for your question 👍

Can the tool be used to measure disk latency?

mizumochi cannot measure the disk latency.
The purpose of this tool is slowdown disk I/O speed.

I want to inject slow write and read operation on to /var. Let me know if the said scenario can be achieved using Mizumochi tool.

The answer is No unfortunately because mizumochi is not so stable tool.
Then, I cannot recommend using mizumochi to mount /var/ directory.
/var has many directories such as /var/log, and I think it affects other applications.

However, mizumochi is applied to a more specific directory.
It uses libfuse/libfuse.
So mizumochi works as FileSystem.

You can install it by cargo install mizumochi.
Here is minimum example

% mizumochi ./original ./emulate --speed 1024KBps
Jan 02 23:27:11.189 INFO original directory: ./original
Jan 02 23:27:11.190 INFO mountpoint: emulate
Jan 02 23:27:11.190 INFO config: config {speed: Read:Write, operations: 1MBps, condition: Periodic { duration: 600s, frequency: 1800s }}
Jan 02 23:27:11.193 INFO init
Jan 02 23:27:11.193 INFO State: Stable
Jan 02 23:27:11.193 INFO fetch_files_if_not_found: ino: 1, path: "./original"

(I found that the example in README.md is wrong, sorry...)

The line Jan 02 23:27:11.190 INFO config: config {speed: Read:Write, operations: 1MBps, condition: Periodic { duration: 600s, frequency: 1800s }} tells us the current configuration.
You can access the directory ./emulate now and the read/write speeds are limited to 1024KBps (1MBps).

% echo 'this is example' >> emulate/file.txt 
% cat emulate/file.txt 
this is example
% cat original/file.txt
this is example

% sudo umount ./emulate

I know mizumochi has many problems as I mentioned above.
We are welcome to issues and PRs.

Thanks

@mopp mopp added the question Further information is requested label Jan 2, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants