Skip to main content

Additional features on top of libguestfs-tools

Project description

Rejviz [ray-veez], VM / disk image tools built on top of libguestfs-tools.

Currently rejviz-builder command is implemented.

Commands

rejviz-builder

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

Design doc

Use cases

  • 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

I/O view

  • 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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rejviz-0.0.1.tar.gz (17.5 kB view details)

Uploaded Source

File details

Details for the file rejviz-0.0.1.tar.gz.

File metadata

  • Download URL: rejviz-0.0.1.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for rejviz-0.0.1.tar.gz
Algorithm Hash digest
SHA256 5530f4485d2f4776692fd55492955857aa144b5c6eebd326fc2a51d04b0a4da8
MD5 442226814d0ddf47afd651df6e6750d1
BLAKE2b-256 e0649d5d35aa7b6d500ceb44b4fd9b61aac3a8d59569e0a9fb66d8b57eaea724

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page