Web interface for accessing Ganeti clusters through the Ganeti RAPI. Provides cluster status information and management of instances (virtual machines).
ganeti-manager is written in python and uses the phew framework.
Screenshot of the status page:
The ganeti-manager requires:
Ganeti-manager is capable of managing:
Installation is a matter of getting the sources and using setup.py to install:
$ git clone http://projects.pekdon.net/git/ganeti_manager.git ganeti-manager $ python setup.py install
The ganeti-manager configuration location is specified by the PHEW_CONFIG environment variable, recommended location is /etc/ganeti-manager.cfg.
Create a base configuration file by executing:
$ cat >/etc/ganeti-manager.cfg <<EOF [application] module = ganetimanager [frontend] cache = /tmp/ganeti-manager_cache_apache url = /ganeti-manager url_static = /ganeti-manager_static [user] type = memory user-admin = password:admin [rapi] host = cluster-hostname port = 5080 username = ganeti-user password = ganeti-password job_cache_path = /tmp/ganeti-manager_cache_apache/rapi EOF
Add the following configuration in a virtual host in Apache:
ScriptAlias /ganeti-manager /usr/lib/python2.4/site-packages/phew/handler.py <Location /ganeti-manager> SetEnv PHEW_CONFIG /etc/ganeti-manager.cfg </Location> Alias /ganeti-manager_static/phew /usr/lib/python2.4/site-packages/phew/static/ Alias /ganeti-manager_static /usr/lib/python2.4/site-packages/ganetimanager/static/
Users is configured with standard phew user configuration, the most straight-forward configuration is using memory users specified in the configuration file. As shown in the example above memory users is configured in the [user] section of the configuration file and the format is:
user-login = password:role1,role2
Roles currently have no effect on ganeti-manager but will be used later on for ACLs.
Remote access for ganeti-manager needs to be confiured in ganeti:
# cat > /var/lib/ganeti/rapi_users <<EOF username password write EOF # gnt-cluster copyfile /var/lib/ganeti/rapi_users