Rejviz [ray-veez], VM / disk image tools built on top of libguestfs-tools.
Currently rejviz-builder command is implemented.
A command that proxies to virt-builder and adds a custom --nic option, which allows to configure network interfaces on the image (files /etc/sysconfig/network-scripts/ifcfg-ethX). All other options are passed to virt-builder untouched.
The format of the --nic parameter is:
--nic name=NAME[,key=VALUE]...
key = {name|hwaddr|bootproto|ipaddr|network|netmask|broadcast}
The values which are not specified can often be inferred (or in case of hwaddr, autogenerated to a random KVM MAC address).
- If only name is specified, the bootproto is 'dhcp'.
- If name and ipaddr is specified, the bootproto is 'static' and and the other values are inferred as for a /32 network.
Example usage:
rejviz-builder centos-7.0 \
-o mycentos.qcow2 --format qcow2 --size 15G \
--hostname mycentos --root-password password:mypassword \
--nic name=eth0 \
--nic name=eth1,ipaddr=192.168.122.15 \
--nic name=eth2,ipaddr=192.168.123.15
- Create a VM image
- From base image
- Having some size
- With some script run
- With network interfaces configured (some DHCP, some static IPs)
- Subscribed via RHSM
- Create a VM
- With network interface MAC addresses matching the interfaces from the image
- With some RAM and vCPUs
- Amend existing VM image (or libvirt domain)
- Reconfigure network interfaces
- Re-subscribe via RHSM
- Tell me something about an image (or libvirt domain)
- List network interfaces and their basic config
- Check that MACs on the domain match MACs in
/etc/sysconfig/network-scripts
- Creating an image
- In: params
- Out: image
rejviz-builder
command that proxies to virt-builder and adds custom params on top (RHSM, network interfaces)
- Creating a VM
- In: image and params
- Out: domain XML or created domain (both through virt-install)
rejviz-install
command that proxies to virt-install and determines some of the parameters from the image
- Amending an image (or libvirt domain)
- In: (image or domname) and params
- Out: image edited in place
rejviz-customize
command that proxies to virt-customize and adds custom params on top (RHSM, network interfaces)
- Image/domain introspection
- In: (image or domname) and params
- Out: information printed
rejviz-peek