Skip to content

digitallyserviced/blessed-ceph-dash

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#blessed-ceph-dash ceph dashboard using blessed-contrib

Image of blessed-ceph-dash

The ceph-dash has a few different modes for accessing Ceph cluster information.

Usage

Local Ceph Cluster

Remote Ceph Cluster - SSH

Dumb Dashboard

Installation

npm install blessed-ceph-dash

Usage

Display statistics for the Ceph storage platform.
Usage: ceph-dash [options]

Options:
  -l, --local   Local Mode: Gather statistics if running locally to Ceph.
                Expects 'ceph' in path and authenticated. [DEFAULT]
  -r, --remote  SSH Mode: Gather statistics from specified Ceph admin machine
                via SSH. e.g --remote=servername.com
  -n, --noauto  NoAuto Mode: Do not gather statistics automatically. Used for
                when you will manually POST data to ceph-dash
  -u, --user    User for SSH authentication to Ceph admin machine
                                                               [default: "root"]
  --password    Password for SSH authentication to Ceph admin machine (NOT
                RECOMMENDED)
  -k, --key     SSH key file. (Default: ~/.ssh/id_rsa and ~/.ssh/id_dsa)
  -p, --port    Port to connect with SSH.                          [default: 22]
  -b, --bind    Port to listen on for 'ceph health -fjson' to be POSTd to.
                                                                 [default: 3004]
  -h, --help    Show usage message.

Local

From a local machine to the Ceph cluster that already has admin rights, and can run ceph status without additional options (default auth).

ceph-dash

Remote

From a machine that can connect to a 'Local' Ceph box over SSH. The 'Local' box we are SSHing to needs to be able to run the ceph status command without additional options (default auth)

ceph-dash --remote=someserver.com --port 22 --key .ssh/id_rsa

You could also specify --password=PASSWORD but obviously this is probably not a good idea as your password will now leak out.

Dumb

From a machine that you want to run the dashboard you will launch ceph-dash and it will listen on a public port.

ceph-dash --noauto --bind 1234

Then from inside your Ceph network you will POST the output of ceph status -f json to the machine that is running the dashboard. This method may be required for more advanced configurations and internal Ceph clusters that are inaccessible to any public methods.

while true; do 
    ceph status -f json | curl -X POST \
    	-H "Content-type: application/json" \
    	-d @- http://remotehost:1234/; 
    sleep 2; 
done

About

ceph dashboard using blessed-contrib

Resources

License

Stars

Watchers

Forks

Packages

No packages published