diff options
Diffstat (limited to 'doc/xlators')
| -rw-r--r-- | doc/xlators/meta.md | 206 | 
1 files changed, 206 insertions, 0 deletions
diff --git a/doc/xlators/meta.md b/doc/xlators/meta.md new file mode 100644 index 00000000000..da0d62ae3d7 --- /dev/null +++ b/doc/xlators/meta.md @@ -0,0 +1,206 @@ +Meta translator +=============== + +Introduction +------------ + +Meta xlator provides an interface similar to the Linux procfs, for GlusterFS +runtime and configuration. This document lists some useful information about +GlusterFS internals that could be accessed via the meta xlator. This is not +exhaustive at the moment. Contributors are welcome to improve this. + +Note: Meta xlator is loaded automatically in the client graph, ie. in the +mount process' graph. + +### GlusterFS native mount version + +>[root@trantor codebase]# cat $META/version +>{ +>  "Package Version": "3.7dev" +>} + +### Listing of some files under the `meta` folder + +>[root@trantor codebase]# mount -t glusterfs trantor:/vol /mnt/fuse +>[root@trantor codebase]# ls $META +>cmdline  frames  graphs  logging  mallinfo  master  measure_latency  process_uuid  version + +### GlusterFS' process identifier + +>[root@trantor codebase]# cat $META/process_uuid +>trantor-11149-2014/07/25-18:48:50:468259 +> +This identifier appears in connection establishment log messages. +For eg., + +>[2014-07-25 18:48:49.017927] I [server-handshake.c:585:server_setvolume] 0-vol-server: accepted client from trantor-11087-2014/07/25-18:48:48:779656-vol-client-0-0-0 (version: 3.7dev) +> + +### GlusterFS command line + +>[root@trantor codebase]# cat $META/cmdline +>{ +>  "Cmdlinestr": "/usr/local/sbin/glusterfs --volfile-server=trantor --volfile-id=/vol /mnt/fuse" +>} + +### GlusterFS volume graph + +The following directory structure reveals the way xlators are stacked in a +graph like fashion. Each (virtual) file under a xlator directory provides +runtime information of that xlator.  For eg. 'name' contains the name of the +xlator. + +``` +/mnt/fuse/.meta/graphs/active +|-- meta-autoload +|   |-- history +|   |-- meminfo +|   |-- name +|   |-- options +|   |-- private +|   |-- profile +|   |-- subvolumes +|   |   `-- 0 -> ../../vol +|   |-- type +|   `-- view +|-- top -> meta-autoload +|-- vol +|   |-- history +|   |-- meminfo +|   |-- name +|   |-- options +|   |   |-- count-fop-hits +|   |   `-- latency-measurement +|   |-- private +|   |-- profile +|   |-- subvolumes +|   |   `-- 0 -> ../../vol-md-cache +|   |-- type +|   `-- view +|-- vol-client-0 +|   |-- history +|   |-- meminfo +|   |-- name +|   |-- options +|   |   |-- client-version +|   |   |-- clnt-lk-version +|   |   |-- fops-version +|   |   |-- password +|   |   |-- ping-timeout +|   |   |-- process-uuid +|   |   |-- remote-host +|   |   |-- remote-subvolume +|   |   |-- send-gids +|   |   |-- transport-type +|   |   |-- username +|   |   |-- volfile-checksum +|   |   `-- volfile-key +|   |-- private +|   |-- profile +|   |-- subvolumes +|   |-- type +|   `-- view +|-- vol-client-1 +|   |-- history +|   |-- meminfo +|   |-- name +|   |-- options +|   |   |-- client-version +|   |   |-- clnt-lk-version +|   |   |-- fops-version +|   |   |-- password +|   |   |-- ping-timeout +|   |   |-- process-uuid +|   |   |-- remote-host +|   |   |-- remote-subvolume +|   |   |-- send-gids +|   |   |-- transport-type +|   |   |-- username +|   |   |-- volfile-checksum +|   |   `-- volfile-key +|   |-- private +|   |-- profile +|   |-- subvolumes +|   |-- type +|   `-- view +|-- vol-dht +|   |-- history +|   |-- meminfo +|   |-- name +|   |-- options +|   |-- private +|   |-- profile +|   |-- subvolumes +|   |   |-- 0 -> ../../vol-client-0 +|   |   `-- 1 -> ../../vol-client-1 +|   |-- type +|   `-- view +|-- volfile +|-- vol-io-cache +|   |-- history +|   |-- meminfo +|   |-- name +|   |-- options +|   |-- private +|   |-- profile +|   |-- subvolumes +|   |   `-- 0 -> ../../vol-read-ahead +|   |-- type +|   `-- view +|-- vol-md-cache +|   |-- history +|   |-- meminfo +|   |-- name +|   |-- options +|   |-- private +|   |-- profile +|   |-- subvolumes +|   |   `-- 0 -> ../../vol-open-behind +|   |-- type +|   `-- view +|-- vol-open-behind +|   |-- history +|   |-- meminfo +|   |-- name +|   |-- options +|   |-- private +|   |-- profile +|   |-- subvolumes +|   |   `-- 0 -> ../../vol-quick-read +|   |-- type +|   `-- view +|-- vol-quick-read +|   |-- history +|   |-- meminfo +|   |-- name +|   |-- options +|   |-- private +|   |-- profile +|   |-- subvolumes +|   |   `-- 0 -> ../../vol-io-cache +|   |-- type +|   `-- view +|-- vol-read-ahead +|   |-- history +|   |-- meminfo +|   |-- name +|   |-- options +|   |-- private +|   |-- profile +|   |-- subvolumes +|   |   `-- 0 -> ../../vol-write-behind +|   |-- type +|   `-- view +`-- vol-write-behind +    |-- history +    |-- meminfo +    |-- name +    |-- options +    |-- private +    |-- profile +    |-- subvolumes +    |   `-- 0 -> ../../vol-dht +    |-- type +    `-- view + +```  | 
