heketi-cli man page

heketi-cli — Command line program for Heketi

Synopsis

heketi-cli [commands] [options]

Description

Command line program for Heketi

Commands

Cluster Commands

heketi-cli cluster create

Create a cluster
   Example
   $ heketi-cli cluster create

heketi-cli cluster delete <CLUSTER-ID>

Delete a cluster
   Example
   $ heketi-cli cluster delete 886a86a868711bef83001

heketi-cli cluster info  <CLUSTER-ID>

Retrieves information about cluster

   Example
   $ heketi-cli cluster info 886a86a868711bef83001

heketi-cli cluster list

Lists the clusters managed by Heketi

   Example
   $ heketi-cli cluster list

Device Commands

heketi-cli device add --name=<DEVICE-NAME> --node=<NODE-ID>

Add new device to node to be managed by Heketi

          Options

              --name=""
                  Name of device to add

              --node=""
                  Id of the node which has this device

          Example
          $ heketi-cli device add \
              --name=/dev/sdb
              --node=3e098cb4407d7109806bb196d9e8f095

heketi-cli device delete <DEVICE-ID>

Deletes a device from Heketi node

   Example
   $ heketi-cli device delete 886a86a868711bef83001

heketi-cli device info  <DEVICE-ID>

Retrieves information about device

   Example
   $ heketi-cli device info 886a86a868711bef83001

Node Commands

heketi-cli node add --zone=<ZONE-NUMBER> --cluster=<CLUSTER-ID> --management-host-name=<MANAGEMENT-HOSTNAME> --storage-host-name=<STORAGE-HOSTNAME>

Add new node to be managed by Heketi

          Options

              --cluster=""
                  The cluster in which the node should reside

              --management-host-name=""
                  Management host name

              --storage-host-name=""
                  Storage host name

              --zone=-1
                  The zone in which the node should reside

          Example
          $ heketi-cli node add \
              --zone=3 \
              --cluster=3e098cb4407d7109806bb196d9e8f095 \
              --management-host-name=node1-manage.gluster.lab.com \
              --storage-host-name=node1-storage.gluster.lab.com

heketi-cli node delete <NODE-ID>

Deletes a node from Heketi management

   Example
   $ heketi-cli node delete 886a86a868711bef83001

heketi-cli node info  <NODE-ID>

Retrieves information about node

   Example
   $ heketi-cli node info 886a86a868711bef83001

Topology Commands

heketi-cli topology load --json=<JSON-FILENAME>

Add devices to Heketi from a configuration file

          Options

              -j, --json=""
                  Configuration containing devices, nodes, and clusters, in JSON format

          Example
          $ heketi-cli topology load --json=topo.json

heketi-cli topology info

Retreives information about the current Topology

   Example
   $ heketi-cli topology info

Volume Commands

heketi-cli volume create --cluster=<CLUSTER-ID> --disperse-data=<DISPERSION-VALUE> --durability=<TYPE> --name=<VOLUME-NAME> --redundancy=<REDUNDENCY-VALUE> --replica=<REPLICA-VALUE> --size=<VOLUME-SIZE> --snapshot-factor=<SNAPSHOT-FACTOR-VALUE>

Create a GlusterFS volume

          Options

              --clusters=""

           Optional: Comma separated list of cluster ids where this volume
           must be allocated. If omitted, Heketi will allocate the volume
           on any of the configured clusters which have the available space.
           Providing a set of clusters will ensure Heketi allocates storage
           for this volume only in the clusters specified.

              --disperse-data=4

           Optional: Dispersion value for durability type 'disperse'.
           Default is 4

              --durability="replicate"

           Optional: Durability type.
                     Values are:
                     none: No durability. Distributed volume only.
                     replicate: (Default) Distributed-Replica volume.
                     disperse: Distributed-Erasure Coded volume.

              --name=""

            Optional: Name of volume. Only set if really necessary

              --redundancy=2

            Optional: Redundancy value for durability type 'disperse'.
            Default is 2

              --replica=3

            Replica value for durability type 'replicate'.
            Default is 3

              --size=-1

            Size of volume in GB

              --snapshot-factor=1

            Optional: Amount of storage to allocate for snapshot support.
            Must be greater 1.0.  For example if a 10TiB volume requires 5TiB of
            snapshot storage, then snapshot-factor would be set to 1.5.  If the
            value is set to 1, then snapshots will not be enabled for this volume

          Example
          * Create a 100GB replica 3 volume:
                $ heketi-cli volume create --size=100
          * Create a 100GB replica 3 volume specifying two specific clusters:
                $ heketi-cli volume create --size=100 \
                --clusters=0995098e1284ddccb46c7752d142c832,60d46d518074b13a04ce1022c8c7193c
          * Create a 100GB replica 2 volume with 50GB of snapshot storage:
                $ heketi-cli volume create --size=100 --snapshot-factor=1.5 --replica=2
          * Create a 100GB distributed volume
                $ heketi-cli volume create --size=100 --durability=none
          * Create a 100GB erasure coded 4+2 volume with 25GB snapshot storage:
                $ heketi-cli volume create --size=100 --durability=disperse --snapshot-factor=1.25
          * Create a 100GB erasure coded 8+3 volume with 25GB snapshot storage:
                $ heketi-cli volume create --size=100 --durability=disperse --snapshot-factor=1.25 \
                --disperse-data=8 --redundancy=3

heketi-cli volume delete <VOLUME-ID>

Deletes the volume

   Example
   $ heketi-cli volume delete 886a86a868711bef83001

heketi-cli volume expand --expand-size=<SIZE> --volume=<VOLUME-ID>

Expand a volume

          Options

              --expand=""
                  Amount in GB to add to the volume

              --volume=""
                   Id of volume to expand

          Example
              * Add 10GB to a volume
                    $ heketi-cli volume expand --volume=60d46d518074b13a04ce1022c8c7193c --expand-size=10

heketi-cli volume info  <VOLUME-ID>

Retrieves information about volume

   Example
   $ heketi-cli volume info 886a86a868711bef83001

heketi-cli volume list

Lists the volumes managed by Heketi

   Example
   $ heketi-cli volume list

Global Options

--json[=false]

Print response as JSON

--secret=""

Secret key for specified user.  Can also be
set using the environment variable HEKETI_CLI_KEY

-s, --server=""

Heketi server. Can also be set using the
environment variable HEKETI_CLI_SERVER

--user=""

Heketi user.  Can also be set using the
environment variable HEKETI_CLI_USER

-v, --version[=false]

Print version

Example

  $ export HEKETI_CLI_SERVER=http://localhost:8080
  $ heketi-cli volume list

Info

Heketi command line program Apr 2016 The heketi Authors