]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | :orphan: |
2 | ||
3 | =============================================== | |
4 | ceph-syn -- ceph synthetic workload generator | |
5 | =============================================== | |
6 | ||
7 | .. program:: ceph-syn | |
8 | ||
9 | Synopsis | |
10 | ======== | |
11 | ||
12 | | **ceph-syn** [ -m *monaddr*:*port* ] --syn *command* *...* | |
13 | ||
14 | ||
15 | Description | |
16 | =========== | |
17 | ||
18 | **ceph-syn** is a simple synthetic workload generator for the Ceph | |
19 | distributed file system. It uses the userspace client library to | |
20 | generate simple workloads against a currently running file system. The | |
21 | file system need not be mounted via ceph-fuse(8) or the kernel client. | |
22 | ||
23 | One or more ``--syn`` command arguments specify the particular | |
24 | workload, as documented below. | |
25 | ||
26 | ||
27 | Options | |
28 | ======= | |
29 | ||
30 | .. option:: -d | |
31 | ||
32 | Detach from console and daemonize after startup. | |
33 | ||
34 | .. option:: -c ceph.conf, --conf=ceph.conf | |
35 | ||
36 | Use *ceph.conf* configuration file instead of the default | |
37 | ``/etc/ceph/ceph.conf`` to determine monitor addresses during | |
38 | startup. | |
39 | ||
40 | .. option:: -m monaddress[:port] | |
41 | ||
42 | Connect to specified monitor (instead of looking through | |
43 | ``ceph.conf``). | |
44 | ||
45 | .. option:: --num_client num | |
46 | ||
47 | Run num different clients, each in a separate thread. | |
48 | ||
49 | .. option:: --syn workloadspec | |
50 | ||
51 | Run the given workload. May be specified as many times as | |
52 | needed. Workloads will normally run sequentially. | |
53 | ||
54 | ||
55 | Workloads | |
56 | ========= | |
57 | ||
58 | Each workload should be preceded by ``--syn`` on the command | |
59 | line. This is not a complete list. | |
60 | ||
61 | :command:`mknap` *path* *snapname* | |
62 | Create a snapshot called *snapname* on *path*. | |
63 | ||
64 | :command:`rmsnap` *path* *snapname* | |
65 | Delete snapshot called *snapname* on *path*. | |
66 | ||
67 | :command:`rmfile` *path* | |
68 | Delete/unlink *path*. | |
69 | ||
70 | :command:`writefile` *sizeinmb* *blocksize* | |
71 | Create a file, named after our client id, that is *sizeinmb* MB by | |
72 | writing *blocksize* chunks. | |
73 | ||
74 | :command:`readfile` *sizeinmb* *blocksize* | |
75 | Read file, named after our client id, that is *sizeinmb* MB by | |
76 | writing *blocksize* chunks. | |
77 | ||
78 | :command:`rw` *sizeinmb* *blocksize* | |
79 | Write file, then read it back, as above. | |
80 | ||
81 | :command:`makedirs` *numsubdirs* *numfiles* *depth* | |
82 | Create a hierarchy of directories that is *depth* levels deep. Give | |
83 | each directory *numsubdirs* subdirectories and *numfiles* files. | |
84 | ||
85 | :command:`walk` | |
86 | Recursively walk the file system (like find). | |
87 | ||
88 | ||
89 | Availability | |
90 | ============ | |
91 | ||
92 | **ceph-syn** is part of Ceph, a massively scalable, open-source, distributed storage system. Please refer to | |
20effc67 | 93 | the Ceph documentation at https://docs.ceph.com for more information. |
7c673cae FG |
94 | |
95 | See also | |
96 | ======== | |
97 | ||
98 | :doc:`ceph <ceph>`\(8), | |
99 | :doc:`ceph-fuse <ceph-fuse>`\(8) |