Encountering slow physical write speeds on backup. Need to test hyperscale performance.
How can I check the physical write speed to the Gluster, StoragePool Network and the Physical Disk (Bricks) IOPS when troubleshooting performance issues?
Hi Ron,
To test Hyperscale performance you can leverage FIO (a tool that will spawn a number of threads or processes doing a particular type of I/O action as specified by the user).
- Test Read Performance to Gluster
- [root@win-hs1 ~]# fio --name=(name of the job) --rw=(Type of I/O pattern) --direct=1 --ioengine=libaio --bs=(buffer size) --numjobs=(number of process to run) --size=(size of the file to be created) --runtime=(t --group_reporting --iodepth=(Number of I/O units to keep in flight against the file)
- Example (note - all parameters are tunable):
- For writes you should change the "--rw=" to one of the following
- --rw=read (sequential read)
- --rw=randread (random reads)
- --rw=rw (mixed sequential reads and writes)
- --rw=randrw (Mixed random reads and writes)
- # fio --name=seqread --rw=read --direct=1 --ioengine=libaio --bs=32k --numjobs=1 --size=1G --runtime=600 --group_reporting --iodepth=8
- For writes you should change the "--rw=" to one of the following
- Example (note - all parameters are tunable):
- [root@win-hs1 ~]# fio --name=(name of the job) --rw=(Type of I/O pattern) --direct=1 --ioengine=libaio --bs=(buffer size) --numjobs=(number of process to run) --size=(size of the file to be created) --runtime=(t --group_reporting --iodepth=(Number of I/O units to keep in flight against the file)
- Test Write Performance to Gluster
- [root@win-hs1 ~]# fio --name=(name of the job) --rw=(Type of I/O pattern) --direct=1 --ioengine=libaio --bs=(buffer size) --numjobs=(number of process to run) --size=(size of the file to be created) --runtime=(t --group_reporting --iodepth=(Number of I/O units to keep in flight against the file)
- Example (note - all parameters are tunable):
- For writes you should change the "--rw=" to one of the following
- --rw=write (sequential writes)
- --rw=randwrite (random writes)
- --rw=rw (mixed sequential reads and writes)
- --rw=randrw (Mixed random reads and writes)
- # fio --name=random_read_writes --rw=randrw --direct=1 --ioengine=libaio --bs=32k --numjobs=1 --size=1G --runtime=600 --group_reporting --iodepth=8
- For writes you should change the "--rw=" to one of the following
- Example (note - all parameters are tunable):
- [root@win-hs1 ~]# fio --name=(name of the job) --rw=(Type of I/O pattern) --direct=1 --ioengine=libaio --bs=(buffer size) --numjobs=(number of process to run) --size=(size of the file to be created) --runtime=(t --group_reporting --iodepth=(Number of I/O units to keep in flight against the file)
Since gluster writes data over the network, its also important to test network performance. You can follow these instructions for network tests.
I hope this was useful
Reply
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.