vm5k.deployment

This module provides tools to deploy hosts and virtual machines on the Grid‘5000 platform, using a preconfigured version of debian wheezy.

  • a wheezy-x64-base environnement
  • libvirt-bin and qemu-kvm from debian testing (jessie)
  • a bridged networking for virtual machines

It needs an IP address range, either from g5k-subnets or kavlan to configure the VMs.

class vm5k.deployment.vm5k_deployment(infile=None, resources=None, hosts=None, ip_mac=None, vlan=None, env_name=None, env_file=None, vms=None, distribution=None, outdir=None)

Base class to control a deployment of hosts and virtual machines on Grid‘5000. It helps to deploy a wheezy-x64-base environment, to install and configure libvirt from testing repository, and to deploy virtual machines.

The base run() method allows to setup automatically the hosts and virtual machines, using the value of the object.

configure_libvirt(bridge='br0', libvirt_conf=None)

Enable a bridge if needed on the remote hosts, configure libvirt with a bridged network for the virtual machines, and restart service.

configure_service_node()

Setup automatically a DNS server to access virtual machines by id and also install a DHCP server if kavlan is used

deploy_vms(clean_disks=False, disk_location='one', apt_cacher=False)

Destroy the existing VMS, create the virtual disks, install the vms start them and wait until they have rebooted

hosts_deployment(max_tries=1, check_deploy=True, conf_ssh=True)

Deploy the hosts using kadeploy, configure ssh for taktuk execution and launch backing file disk copy

packages_management(upgrade=True, other_packages=None, launch_disk_copy=True, apt_cacher=False)

Configure APT to use testing repository, perform upgrade and install required packages. Finally start kvm module

run()

Launch the deployment and configuration of hosts and virtual machines: hosts_deployment, packages_mamangement, configure_service_node configure_libvirt, deploy_vms