cockpit-gluster
cockpit-gluster copied to clipboard
Easy to use management console for Gluster Storage with glusterd2 support.
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
- Build
- Developing with vagrant (also the quickest way to try out a gd2 cluster locally)
- Package
- Setup GD2 environment
- Install
- Access
- Create volumes
- Screenshots
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
Volume Creation Wizard
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