Skip to content
This repository has been archived by the owner on Feb 1, 2021. It is now read-only.
/ cockpit-gluster Public archive

Easy to use management console for Gluster Storage with glusterd2 support.

License

Notifications You must be signed in to change notification settings

gluster/cockpit-gluster

Repository files navigation

Note: This project is not currently being maintained.

cockpit-gluster

A cockpit plugin that provides a status view and volume actions for a gluster cluster with glusterd2(GD2) based bricks.

It runs on any of the brick nodes (where glusterd2 is running).

Contents:

Features:

  • Status panel for monitoring peers, volumes and bricks
  • A Wizard for brick setup and volume deployment.

Pending Features

  • GD2 rest auth support.
  • Supporting all volume types.

Building from source

Install Build Dependencies

sudo yum install -y npm
npm install

Build the project

./node_modules/.bin/webpack

Developing with vagrant:

After building run these commands in the repo folder:

#install vagrant
sudo yum install vagrant -y
sudo vagrant up

and browse to localhost:9091. Congratulations, you're up!

After making any changes to the code you can run npx webpack && sudo vagrant rsync to build and copy the plugin to the VMs. Refresh the browser to see your changes.

Make an rpm

make rpm

Setup your brick servers with GD2

As GD2 is in development, it is recommended to build it from the master branch and deploy it with an external etcd. See GD2 Resources for more information, and automated setup.

Installing (on one of the GD2 nodes)

Install gluster-ansible and its dependencies:

gluster-ansible is hosted in a copr repo

Install the repo:

Operating System Install Command
Centos 7 sudo curl -o /etc/yum.repos.d/gluster-ansible.repo https://copr.fedorainfracloud.org/coprs/sac/gluster-ansible/repo/epel-7/sac-gluster-ansible-epel-7.repo
Fedora 27+ sudo dnf copr enable sac/gluster-ansible

Install the packages from the repo:

sudo yum install gluster-ansible python-gluster-mgmt-client

Install cockpit-gluster

yum install -y cockpit-gluster-x.x.x-x.noarch.rpm

Browse to the cockpit port:

http://your-cockpithost.domain:9090

Creating volumes

Setup passwordless ssh from the managing host (where cockpit-gluster is installed) to all the other nodes:

Run these commands on the managing host:

ssh-keygen

ssh-copy-id [email protected]
ssh-copy-id [email protected]
ssh-copy-id [email protected]

Click on:

  • Create Volume (if creating on the existing cluster)
  • Expand Cluster (if creating on new nodes)

Screenshots

Dashboard

Dashboard Image

Volume Creation Wizard

Wizard Hosts Image Wizard Volumes Image Wizard Bricks Image Wizard Review Image

GD2 Resources

GD2 developement guide: https://github.com/gluster/glusterd2/blob/master/doc/development-guide.md

GD2 quickstart guide: https://github.com/gluster/glusterd2/blob/master/doc/quick-start-user-guide.md

A two command cluster setup with ansible and bash (for CentOS machines): https://github.com/rohantmp/gd2-testing