PSTORAGE−HWFLUSH−C

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
EXIT STATUS
EXAMPLE
AUTHOR
SEE ALSO

NAME

pstorage-hwflush-check − tool for testing data flushing in Pstorage clusters

SYNOPSIS

pstorage−hwflush−check −l [−p port]

pstorage−hwflush−check −s server −d dir [−p port] [−b blocksize] [−n blocksmax] [−t threads]

DESCRIPTION

Pstorage MDSs and CSs require the underlying storage for their operation. You can use different benchmarks to test the storage throughput and the correctness of written data. There is, however, no easy way to test if the storage flush command is actually writing data to disks. For example, an improperly configured RAID array may acknowledge a flush when the data is still in the RAID or in the disk cache and thus will be lost after a reboot.

pstorage−hwflush−check(1) is a tool to check how cluster data is flushed. The tool operation is based on the client−server model:

• The client constantly writes some data to the disk, increases a special counter, and sends the increased counter to the server.

• The server ensures that the incoming counters are properly increased.

To check how data in your cluster is flushed:

• Run the client on some server in the cluster.

• Run the server on another server in the cluster.

• Restart the computer where you are running the client by turning off the power. Note that the Reset button does not turn off the power so you need to press the Power button or pull out the power cord.

• Once the computer is up and running again, restart the client. Use the same options you used to run the client before restarting the server.

• Check the server output for lines containing the message "cache error detected!". If you could not find any errors, you may wish to repeat the process again. This time, it makes sense to increase the number of threads or the maximum number of blocks.

Once launched, the client reads all written data, validates it, and then restarts the test from the last valid counter. If the server detects inconsistency with the previously received counters, it reports an error.

The pstorage−hwflush−check(1) client creates a file in the specified directory and writes data in blocks of the specified size. When the number of blocks reaches the specified maximum, it starts writing data to the file from the beginning. The client can perform this operation in several threads. Each thread has its own file and counter. The server recognizes a multithreaded client automatically.

OPTIONS

−l, −−listen

Run the tool as a server.

−s, −−server=IP

Set the server hostname or IP address.

−p, −−port=PORT

Set the server port; the default is 32000.

−d, −−dir=DIR

Set the test directory.

−b, −−blocksize=SIZE

Set the block size in bytes; the default is 16280 bytes.

−n, −−blocksmax=NUM

Set the maximum number of blocks; the default is 1025 blocks.

−t, −−threads=NUM

Set the number of client threads to use; the default is 1 thread.

−h, −−help

Show usage information.

EXIT STATUS

0

Success

Non−zero

Failure (syntax or usage error; configuration error; cluster failure; unexpected error).

EXAMPLE

1. On a server with the hostname test_server, run: pstorage−hwflush−check −l

2. On a client, run: pstorage−hwflush−check −s test_server −d /mnt/test −t 64

3. Turn off the client, and then turn it on again.

4. Restart the client: pstorage−hwflush−check −s test_server −d /mnt/test −t 64

5. Check the server output for lines containing the message "cache error detected!"

AUTHOR

Copyright © 2011−2013, Parallels, Inc. All rights reserved.

SEE ALSO

pstorage−overview(7)