- Entirely command line driven.
- - No required dependencies except libvirt and ssh.
-
- - Only designed for tiny clusters (up to around 10 hosts).
+ - No required dependencies except ansible (on the client only),
+ libvirt and ssh.
- Nothing to install on the nodes except libvirtd and sshd.
- - Single, simple configuration file.
+ - Only designed for small clusters (up to around 10-20 hosts).
+
+ - Simple configuration.
Example commands
----------------------------------------------------------------------
mclu status Display status of the cluster
mclu list List all virtual machines on the cluster
- mclu wake ham0 Wake up node 'ham0' in the cluster
- mclu shutdown ham0 Shut down node 'ham0' in the cluster
+ mclu on ham0 Switch on (wake-on-LAN) node 'ham0'
+ mclu off ham0 Power off node 'ham0' in the cluster
mclu start ham0:vm Start vm on node 'ham0'
mclu stop ham0:* Stop all VMs on node 'ham0'
mclu migrate *:* ham2: Live migrate all VMs to 'ham2'
mclu info Print general configuration information
mclu --help Print help on all commands
+Since the mclu cluster is based on an ansible "hosts group", you can
+also issue ansible commands, eg:
+
+ ansible cluster -u root -a "yum -y update" Update all nodes in the cluster
+ ansible cluster -m ping Ping all nodes
+
Configuration notes
----------------------------------------------------------------------
- Edit the configuration file (mclu.conf).
+ - Add the hosts group (usually called '[cluster]') to /etc/ansible/hosts.
+ You can set $ANSIBLE_HOSTS to change the location of this file.
+
- Run commands such as:
./run status
- Edit the configuration file (/etc/mclu/mclu.conf).
+ - Add the hosts group (usually called '[cluster]') to /etc/ansible/hosts.
+
- Run commands such as:
mclu status