Skip to content
Devyani Kota edited this page Nov 21, 2017 · 13 revisions

gdeploy is a tool to set-up, deploy, and configure software over multiple hosts using Ansible.

This repository provides the modules, roles, and playbooks to deploy GlusterFS. This repository also includes roles to deploy NFS Ganesha, Samba, Geo-Replication, and other GlusterFS features.

GlusterFS Modules

glusterfs_peer
glusterfs_volume
glusterfs_georep

Logical volume modules to setup backend for GlusterFS

glusterfs_pv
glusterfs_vg
glusterfs_lv

Ansible roles for gdeploy

Using the above modules and the modules provided by Ansible project we build roles for deployment of GlusterFS and implementing other usecases.

System

  • backend_setup --- A generic backend setup for GlusterFS volume
  • backend_reset --- A generic backend reset for GlusterFS volume
  • glusterfs_vg --- Create a volume group
  • glusterfs_lv --- Create a logical volume
  • mount --- mount a logical volume, or a GlusterFS volume
  • umount --- umount a logical volume, or a GlusterFS volume

glusterfs

  • peer_probe --- Peer probe a node; add a node to cluster
  • peer_detach --- Detach a node from the cluster
  • volume_create --- Create a GlusterFS volume
  • volume_delete --- Delete a GlusterFS volume

georeplication

  • georep_create --- Create a geo-replication session (Secure and root)
  • georep_delete --- Delete a geo-replication session
  • georep_pause --- Pause a geo-replication session
  • georep_resume --- Resume a geo-replication session
  • georep_start --- Start a geo-replication session
  • georep_stop --- Stop a geo-replication session

nfs_ganesha

  • nfs_ganesha_create
  • nfs_ganesha_destroy
  • nfs_ganesha_add_node
  • nfs_ganesha_del_node
  • nfs_ganesha_export_vol
  • nfs_ganesha_unexport_vol
  • nfs_ganesha_refresh_conf

ctdb

  • ctdb_setup
  • ctdb_enable
  • ctdb_disable
  • ctdb_stop
  • ctdb_start

Quota

  • quota_enable
  • quota_disable
  • quota_remove
  • quota_remove_objects
  • quota_default_soft_limits
  • quota_limit_usage
  • quota_limit_objects
  • quota_alert_time
  • quota_soft_timeout
  • quota_hard_timeout

glusterfs_clients

  • glusterfs_client_mount
  • glusterfs_client_umount

glusterfs_snapshot

  • glusterfs_snapshot_create
  • glusterfs_snapshot_delete
  • glusterfs_snapshot_activate
  • glusterfs_snapshot_deactivate
  • glusterfs_snapshot_clone
  • glusterfs_snapshot_restore
  • glusterfs_snapshot_config

gdeploy tool

The roles can be invoked by `ansible-playbook’ by manually providing the variables and writing a playbook to call the necessary roles. Or one can choose to use the Ansible Tower to invoke the roles.

Alternatively the project provides the `gdeploy’ CLI to invoke the roles to achieve the usecases. Input for the role variables can be provided by the configuration files. We will support configuration files in .ini and .yaml format.