Signed-off-by: Erik Skultety <eskultet(a)redhat.com>
---
docs/apps.html.in | 488 ----------------------------------------------
docs/apps.rst | 348 +++++++++++++++++++++++++++++++++
docs/meson.build | 2 +-
3 files changed, 349 insertions(+), 489 deletions(-)
delete mode 100644 docs/apps.html.in
create mode 100644 docs/apps.rst
diff --git a/docs/apps.html.in b/docs/apps.html.in
deleted file mode 100644
index bac1e36365..0000000000
--- a/docs/apps.html.in
+++ /dev/null
@@ -1,488 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html>
-<html
xmlns="http://www.w3.org/1999/xhtml">
- <body>
- <h1>Applications using libvirt</h1>
-
- <p>
- This page provides an illustration of the wide variety of
- applications using the libvirt management API.
- </p>
-
- <ul id="toc"></ul>
-
- <h2><a id="add">Add an application</a></h2>
-
- <p>
- To add an application not listed on this page, send a message
- to the <a href="contact.html">mailing list</a>, requesting
it
- be added here, or simply send a patch against the documentation
- in the libvirt.git docs subdirectory.
- If your application uses libvirt as its API,
- the following graphics are available for your website to advertise
- support for libvirt:
- </p>
-
- <p class="image">
- <img src="logos/logo-square-powered-96.png" alt="libvirt
powered"/>
- <img src="logos/logo-square-powered-128.png" alt="libvirt
powered"/>
- <img src="logos/logo-square-powered-192.png" alt="libvirt
powered"/>
- <img src="logos/logo-square-powered-256.png" alt="libvirt
powered"/>
- </p>
-
- <h2><a id="command">Command line tools</a></h2>
-
- <dl>
- <dt><a
href="https://libguestfs.org">guestfish</a></dt>
- <dd>
- Guestfish is an interactive shell and command-line tool for examining
- and modifying virtual machine filesystems. It uses libvirt to find
- guests and their associated disks.
- </dd>
- <dt>virsh</dt>
- <dd>
- An interactive shell, and batch scriptable tool for performing
- management tasks on all libvirt managed domains, networks and
- storage. This is part of the libvirt core distribution.
- </dd>
- <dt><a
href="https://virt-manager.org/">virt-clone</a></dt...
- <dd>
- Allows the disk image(s) and configuration for an existing
- virtual machine to be cloned to form a new virtual machine.
- It automates copying of data across to new disk images, and
- updates the UUID, MAC address, and name in the configuration.
- </dd>
- <dt><a
href="https://people.redhat.com/rjones/virt-df/">virt-df<...
- <dd>
- Examine the utilization of each filesystem in a virtual machine
- from the comfort of the host machine. This tool peeks into the
- guest disks and determines how much space is used. It can cope
- with common Linux filesystems and LVM volumes.
- </dd>
- <dt><a
href="https://virt-manager.org/">virt-image</a></dt...
- <dd>
- Provides a way to deploy virtual appliances. It defines a
- simplified portable XML format describing the pre-requisites
- of a virtual machine. At time of deployment this is translated
- into the domain XML format for execution under any libvirt
- hypervisor meeting the pre-requisites.
- </dd>
- <dt><a
href="https://virt-manager.org/">virt-install</a></...
- <dd>
- Provides a way to provision new virtual machines from a
- OS distribution install tree. It supports provisioning from
- local CD images, and the network over NFS, HTTP and FTP.
- </dd>
- <dt><a
href="https://people.redhat.com/rjones/virt-top/">virt-top&l...
- <dd>
- Watch the CPU, memory, network and disk utilization of all
- virtual machines running on a host.
- </dd>
- <dt>
- <a
href="https://people.redhat.com/~rjones/virt-what/">virt-wha...
- </dt>
- <dd>
- virt-what is a shell script for detecting if the program is running
- in a virtual machine. It prints out a list of facts about the
- virtual machine, derived from heuristics.
- </dd>
- <dt><a
href="https://sourceware.org/systemtap/">stap</a></...
- <dd>
- SystemTap is a tool used to gather rich information about a running
- system through the use of scripts. Starting from v2.4, the front-end
- application stap can use libvirt to gather data within virtual
- machines.
- </dd>
- <dt><a
href="https://github.com/pradels/vagrant-libvirt/">vagrant-l...
- <dd>
- Vagrant-Libvirt is a Vagrant plugin that uses libvirt to manage virtual
- machines. It is a command line tool for developers that makes it very
- fast and easy to deploy and re-deploy an environment of vm's.
- </dd>
- <dt><a
href="https://github.com/virt-lightning/virt-lightning">virt...
- <dd>
- Virt-Lightning uses libvirt, cloud-init and libguestfs to allow anyone
- to quickly start a new VM. Very much like a container CLI, but with a
- virtual machine.
- </dd>
- </dl>
-
- <h2><a id="configmgmt">Configuration
Management</a></h2>
-
- <dl>
- <dt><a
href="https://wiki.lcfg.org/bin/view/LCFG/LcfgLibvirt">LCFG&...
- <dd>
- LCFG is a system for automatically installing and managing the
- configuration of large numbers of Unix systems. It is particularly
- suitable for sites with very diverse and rapidly changing
- configurations.
- </dd>
- <dd>
- The lcfg-libvirt package adds support for virtualized systems to
- LCFG, with both Xen and KVM known to work. Cloning guests is
- supported, as are the bridged, routed, and isolated modes for
- Virtual Networking.
- </dd>
- </dl>
-
- <h2><a id="continuousintegration">Continuous
Integration</a></h2>
-
- <dl>
- <dt><a
href="https://docs.buildbot.net/latest/manual/configuration/workers-...
- <dd>
- BuildBot is a system to automate the compile/test cycle required
- by most software projects. CVS commits trigger new builds, run on
- a variety of client machines. Build status (pass/fail/etc) are
- displayed on a web page or through other protocols.
- </dd>
- </dl>
-
- <dl>
- <dt><a
href="https://plugins.jenkins.io/libvirt-slave/">Jenkins</a></dt>
- <dd>
- This plugin for Jenkins adds a way to control guest domains hosted
- on Xen or QEMU/KVM. You configure a Jenkins Agent,
- selecting the guest domain and hypervisor. When you need to build a
- job on a specific Agent, its guest domain is started, then the job is
- run. When the build process is finished, the guest domain is shut
- down, ready to be used again as required.
- </dd>
- </dl>
-
- <h2><a id="conversion">Conversion</a></h2>
-
- <dl>
- <dt><a
href="https://libguestfs.org/virt-p2v.1.html">virt-p2v</a...
- <dd>
- Convert a physical machine to run on KVM. It is a LiveCD
- which is booted on the machine to be converted. It collects a
- little information from the user, then copies the disks over
- to a remote machine and defines the XML for a domain to run
- the guest. (Note this tool is included with libguestfs)
- </dd>
- <dt><a
href="https://libguestfs.org/virt-v2v.1.html">virt-v2v</a...
- <dd>
- virt-v2v converts guests from a foreign hypervisor to run on
- KVM, managed by libvirt. It can convert guests from VMware or
- Xen to run on OpenStack, oVirt (RHEV-M), or local libvirt. It
- will enable VirtIO drivers in the converted guest if possible.
- (Note this tool is included with libguestfs)
- </dd>
- <dd>
- For RHEL customers of Red Hat, conversion of Windows guests is also
- possible. This conversion requires some Microsoft signed pieces,
- that Red Hat can provide.
- </dd>
- <dt><a
href="https://launchpad.net/virt-goodies">vmware2libvirt<...
- <dd>
- Part of the <i>virt-goodies</i> package, vmware2libvirt is a python
- script for migrating a vmware image to libvirt.
- </dd>
- </dl>
-
- <h2><a id="desktop">Desktop applications</a></h2>
-
- <dl>
- <dt><a
href="https://virt-manager.org/">virt-manager</a></...
- <dd>
- A general purpose desktop management tool, able to manage
- virtual machines across both local and remotely accessed
- hypervisors. It is targeted at home and small office usage
- up to managing 10-20 hosts and their VMs.
- </dd>
- <dt><a
href="https://virt-manager.org/">virt-viewer</a></d...
- <dd>
- A lightweight tool for accessing the graphical console
- associated with a virtual machine. It can securely connect
- to remote consoles supporting the VNC protocol. Also provides
- an optional mozilla browser plugin.
- </dd>
- <dt><a
href="https://f1ash.github.io/qt-virt-manager">qt-virt-manager</a></dt>
- <dd>
- The Qt GUI for create and control VMs and another virtual entities
- (aka networks, storages, interfaces, secrets, network filters).
- Contains integrated LXC/SPICE/VNC viewer for accessing the graphical or
- text console associated with a virtual machine or container.
- </dd>
- <dt><a
href="https://f1ash.github.io/qt-virt-manager/#virtual-machines-viewer">qt-remote-viewer</a></dt>
- <dd>
- The Qt VNC/SPICE viewer for access to remote desktops or VMs.
- </dd>
- </dl>
-
- <h2><a id="iaas">Infrastructure as a Service
(IaaS)</a></h2>
-
- <dl>
- <dt><a href="http://cc1.ifj.edu.pl">Cracow Cloud
One</a></dt>
- <dd>The CC1 system provides a complete solution for Private
- Cloud Computing. An intuitive web access interface with an
- administration module and simple installation procedure make
- it easy to benefit from private Cloud Computing technology.
- </dd>
-
- <dt><a
href="https://github.com/eucalyptus/eucalyptus">Eucalyptus&l...
- <dd>
- Eucalyptus is an on-premise Infrastructure as a Service cloud
- software platform that is open source and
- AWS-compatible. Eucalyptus uses libvirt virtualization API to
- directly interact with Xen and KVM hypervisors.
- </dd>
-
- <dt><a
href="http://www.nimbusproject.org">Nimbus</a></dt>
- <dd>
- Nimbus is an open-source toolkit focused on providing
- Infrastructure-as-a-Service (IaaS) capabilities to the scientific
- community. It uses libvirt for communication with all KVM and Xen
- virtual machines.
- </dd>
-
- <dt><a
href="http://snooze.inria.fr">Snooze</a></dt>
- <dd>
- Snooze is an open-source scalable, autonomic, and energy-efficient
- virtual machine (VM) management framework for private clouds. It
- integrates libvirt for VM monitoring, live migration, and life-cycle
- management.
- </dd>
-
- <dt><a
href="https://www.openstack.org">OpenStack</a></dt>
- <dd>
- OpenStack is a "cloud operating system" usable for both public
- and private clouds. Its various parts take care of compute,
- storage and networking resources and interface with the user
- using a dashboard. Compute part uses libvirt to manage VM
- life-cycle, monitoring and so on.
- </dd>
-
- <dt><a
href="https://kubevirt.io/">KubeVirt</a></dt>
- <dd>
- KubeVirt is a virtual machine management add-on for Kubernetes. The aim
- is to provide a common ground for virtualization solutions on top of
- Kubernetes.
- </dd>
-
- <dt><a
href="https://github.com/gustavfranssonnyvell/cherrypop">Che...
- <dd>
- A cloud software with no masters or central points. Nodes
- autodetect other nodes and autodistribute virtual
- machines and autodivide up the workload. Also there is no
- minimum limit for hosts, well, one might be nice. It's
- perfect for setting up low-end servers in a cloud or a
- cloud where you want the most bang for the bucks.
- </dd>
-
- <dt><a
href="https://en.zstack.io/">ZStack</a></dt>
- <dd>
- ZStack is an open source IaaS software that aims to automate the
- management of all resources (compute, storage, networking, etc.) in a
- datacenter by using APIs, thus conforming to the principles of a
- software-defined datacenter. The key strengths of ZStack in terms of
- management are scalability, performance, and a fast, user-friendly
- deployment.
- </dd>
- </dl>
-
- <h2><a id="libraries">Libraries</a></h2>
-
- <dl>
- <dt><a
href="https://libguestfs.org">libguestfs</a></dt>
- <dd>
- A library and set of tools for accessing and modifying virtual
- machine disk images. It can be linked with C and C++ management
- programs, and has bindings for Perl, Python, Ruby, Java, OCaml,
- PHP, Haskell, and C#.
- </dd>
- <dd>
- Using its FUSE module, you can also mount guest filesystems on the
- host, and there is a subproject to allow merging changes into the
- Windows Registry in Windows guests.
- </dd>
-
- <dt><a
href="https://sandbox.libvirt.org">libvirt-sandbox</a></dt>
- <dd>
- A library and command line tools for simplifying the creation of
- application sandboxes using virtualization technology. It currently
- supports either KVM, QEMU or LXC as backends. Integration with
- systemd facilitates sandboxing of system services like apache.
- </dd>
- <dt><a
href="https://github.com/ohadlevy/virt#readme">Ruby
- Libvirt Object bindings</a></dt>
- <dd>
- Allows using simple ruby objects to manipulate
- hypervisors, guests, storage, network etc. It is
- based on top of
- the <a
href="https://libvirt.org/ruby">native ruby
bindings</a>.
- </dd>
- </dl>
-
- <h2><a id="livecd">LiveCD / Appliances</a></h2>
-
- <dl>
- <dt><a
href="https://libguestfs.org/virt-v2v/">virt-p2v</a>&l...
- <dd>
- An older tool for converting a physical machine into a virtual
- machine. It is a LiveCD which is booted on the machine to be
- converted. It collects a little information from the user, then
- copies the disks over to a remote machine and defines the XML for a
- domain to run the guest.
- </dd>
- </dl>
-
- <h2><a id="monitoring">Monitoring</a></h2>
- <dl>
- <dt><a
href="https://collectd.org/plugins/libvirt.shtml">collectd&l...
- <dd>
- The libvirt-plugin is part of <a
href="https://collectd.org/">collectd</a>
- and gathers statistics about virtualized guests on a system. This
- way, you can collect CPU, network interface and block device usage
- for each guest without installing collectd on the guest systems.
- For a full description, please refer to the libvirt section in the
- collectd.conf(5) manual page.
- </dd>
- <dt><a
href="https://www.sflow.net/">Host
sFlow</a></dt>
- <dd>
- Host sFlow is a lightweight agent running on KVM hypervisors that
- links to libvirt library and exports standardized cpu, memory, network
- and disk metrics for all virtual machines.
- </dd>
- <dt><a
href="https://honk.sigxcpu.org/projects/libvirt/#munin">Muni...
- <dd>
- The plugins provided by Guido Günther allow to monitor various things
- like network and block I/O with
- <a href="http://munin.projects.linpro.no/">Munin</a>.
- </dd>
- <dt><a
href="https://people.redhat.com/rjones/nagios-virt/">Nagios-...
- <dd>
- Nagios-virt is a configuration tool to add monitoring of your
- virtualised domains to <a
href="https://www.nagios.org/">Nagios</a>.
- You can use this tool to either set up a new Nagios installation for
- your Xen or QEMU/KVM guests, or to integrate with your existing Nagios
- installation.
- </dd>
- <dt><a
href="https://pcp.io/man/man1/pmdalibvirt.1.html">PCP</a></dt>
- <dd>
- The PCP libvirt PMDA (plugin) is part of the
- <a href="https://pcp.io/">PCP</a> toolkit and provides
- hypervisor and guest information and complete set of guest performance
- metrics. It supports pCPU, vCPU, memory, block device, network interface,
- and performance event metrics for each virtual guest.
- </dd>
- </dl>
-
- <h2><a id="provisioning">Provisioning</a></h2>
-
- <dl>
- <dt><a
href="https://www.ibm.com/developerworks/community/wikis/home?lang=e...
Provisioning Manager</a></dt>
- <dd>
- Part of the IBM Tivoli family, Tivoli Provisioning Manager (TPM) is
- an IT lifecycle automation product. It
- <a
href="http://publib.boulder.ibm.com/infocenter/tivihelp/v38r1/index....
libvirt</a>
- for communication with virtualization hosts and guest domains.
- </dd>
- </dl>
-
- <dl>
- <dt><a
href="https://theforeman.org">Foreman</a></dt>
- <dd>
- Foreman is an open source web based application aimed to be a
- Single Address For All Machines Life Cycle Management. Foreman:
-
- <ul>
- <li>Creates everything you need when adding a new machine to
- your network, its goal being automatically managing
- everything you would normally manage manually (DNS, DHCP,
- TFTP, Virtual Machines,CA, CMDB...)</li>
- <li>Integrates with Puppet (and acts as web front end to it).</li>
- <li>Takes care of provisioning until the point puppet is
- running, allowing Puppet to do what it does best.</li>
- <li>Shows you Systems Inventory (based on Facter) and
- provides real time information about hosts status based on
- Puppet reports.</li>
- </ul>
- </dd>
- </dl>
-
-
- <h2><a id="web">Web applications</a></h2>
-
- <dl>
- <dt><a
href="https://www.abiquo.com/">AbiCloud</a></dt>
- <dd>
- AbiCloud is an open source cloud platform manager which allows to
- easily deploy a private cloud in your datacenter. One of the key
- differences of AbiCloud is the web rich interface for managing the
- infrastructure. You can deploy a new service just dragging and
- dropping a VM.
- </dd>
- <dt><a
href="https://kimchi-project.github.io/kimchi/">Kimchi</a></dt>
- <dd>
- Kimchi is an HTML5 based management tool for KVM. It is designed to
- make it as easy as possible to get started with KVM and create your first guest.
-
- Kimchi manages KVM guests through libvirt. The management interface is accessed
- over the web using a browser that supports HTML5.
- </dd>
- <dt><a
href="https://ovirt.org/">oVirt</a></dt>
- <dd>
- oVirt provides the ability to manage large numbers of virtual
- machines across an entire data center of hosts. It integrates
- with FreeIPA for Kerberos authentication, and in the future,
- certificate management.
- </dd>
- <dt><a
href="https://ispsystem.com/en/software/vmmanager">VMmanager...
- <dd>
- VMmanager is a software solution for virtualization management
- that can be used both for hosting virtual machines and
- building a cloud. VMmanager can manage not only one server,
- but a large cluster of hypervisors. It delivers a number of
- functions, such as live migration that allows for load
- balancing between cluster nodes, monitoring CPU, memory.
- </dd>
- <dt><a href="https://mist.io/">mist.io</a></dt>
- <dd>
- Mist.io is an open source project and a service that can assist you in
- managing your virtual machines on a unified way, providing a simple
- interface for all of your infrastructure (multiple public cloud
- providers, OpenStack based public/private clouds, Docker servers, bare
- metal servers and now KVM hypervisors).
- </dd>
- <dt><a
href="https://ravada.upc.edu/">Ravada</a></dt>
- <dd>
- Ravada is an open source tool for managing Virtual Desktop
- Infrastructure (VDI). It is very easy to install and use. Following
- the documentation, you'll be ready to deploy virtual machines in
- minutes. The only requirements for the users are a Web browser and
- a lightweight remote viewer.
- </dd>
- <dt><a
href="https://github.com/cutelyst/Virtlyst">Virtlyst</a&g...
- <dd>
- Virtlyst is an open source web application built with C++11, Cutelyst and Qt.
- It features:
- <ul>
- <li>Low memory usage (around 5 MiB of RAM)</li>
- <li>Look and feel easily customized with HTML templates that use the
Django syntax</li>
- <li>VNC/Spice console directly in the browser using websockets on the
same HTTP port</li>
- <li>Host and Domain statistics graphs (CPU, Memory, IO,
Network)</li>
- <li>Connect to multiple libvirtd instances (over local Unix domain
socket, SSH, TCP and TLS)</li>
- <li>Manage Storage Pools, Storage Volumes, Networks, Interfaces, and
Secrets</li>
- <li>Create and launch VMs</li>
- <li>Configure VMs with easy panels or go pro and edit the VM's
XML</li>
- </ul>
- </dd>
- </dl>
-
- <h2><a id="other">Other</a></h2>
-
- <dl>
- <dt><a
href="https://cuckoosandbox.org/">Cuckoo
Sandbox</a></dt>
- <dd>
- Cuckoo Sandbox is a malware analysis system. You can throw
- any suspicious file at it and in a matter of seconds Cuckoo
- will provide you back some detailed results outlining what
- such file did when executed inside an isolated environment.
- And libvirt is one of the backends that can be used for the
- isolated environment.
- </dd>
- </dl>
-
- </body>
-</html>
diff --git a/docs/apps.rst b/docs/apps.rst
new file mode 100644
index 0000000000..a21e2249ea
--- /dev/null
+++ b/docs/apps.rst
@@ -0,0 +1,348 @@
+==========================
+Applications using libvirt
+==========================
+
+This page provides an illustration of the wide variety of applications
+using the libvirt management API.
+
+.. contents::
+
+Add an application
+------------------
+
+To add an application not listed on this page, send a message to the
+`mailing list <contact.html>`__, requesting it be added here, or simply
+send a patch against the documentation in the libvirt.git docs
+subdirectory. If your application uses libvirt as its API, the following
+graphics are available for your website to advertise support for
+libvirt:
+
+|libvirt powered 96| |libvirt powered 128| |libvirt powered 192| |libvirt powered 256|
+
+Command line tools
+------------------
+
+`guestfish <
https://libguestfs.org>`__
+ Guestfish is an interactive shell and command-line tool for examining
+ and modifying virtual machine filesystems. It uses libvirt to find
+ guests and their associated disks.
+virsh
+ An interactive shell, and batch scriptable tool for performing
+ management tasks on all libvirt managed domains, networks and
+ storage. This is part of the libvirt core distribution.
+`virt-clone <
https://virt-manager.org/>`__
+ Allows the disk image(s) and configuration for an existing virtual
+ machine to be cloned to form a new virtual machine. It automates
+ copying of data across to new disk images, and updates the UUID, MAC
+ address, and name in the configuration.
+`virt-df <
https://people.redhat.com/rjones/virt-df/>`__
+ Examine the utilization of each filesystem in a virtual machine from
+ the comfort of the host machine. This tool peeks into the guest disks
+ and determines how much space is used. It can cope with common Linux
+ filesystems and LVM volumes.
+`virt-image <
https://virt-manager.org/>`__
+ Provides a way to deploy virtual appliances. It defines a simplified
+ portable XML format describing the pre-requisites of a virtual
+ machine. At time of deployment this is translated into the domain XML
+ format for execution under any libvirt hypervisor meeting the
+ pre-requisites.
+`virt-install <
https://virt-manager.org/>`__
+ Provides a way to provision new virtual machines from a OS
+ distribution install tree. It supports provisioning from local CD
+ images, and the network over NFS, HTTP and FTP.
+`virt-top <
https://people.redhat.com/rjones/virt-top/>`__
+ Watch the CPU, memory, network and disk utilization of all virtual
+ machines running on a host.
+`virt-what <
https://people.redhat.com/~rjones/virt-what/>`__
+ virt-what is a shell script for detecting if the program is running
+ in a virtual machine. It prints out a list of facts about the virtual
+ machine, derived from heuristics.
+`stap <
https://sourceware.org/systemtap/>`__
+ SystemTap is a tool used to gather rich information about a running
+ system through the use of scripts. Starting from v2.4, the front-end
+ application stap can use libvirt to gather data within virtual
+ machines.
+`vagrant-libvirt <
https://github.com/pradels/vagrant-libvirt/>`__
+ Vagrant-Libvirt is a Vagrant plugin that uses libvirt to manage
+ virtual machines. It is a command line tool for developers that makes
+ it very fast and easy to deploy and re-deploy an environment of vm's.
+`virt-lightning <
https://github.com/virt-lightning/virt-lightning>`__
+ Virt-Lightning uses libvirt, cloud-init and libguestfs to allow
+ anyone to quickly start a new VM. Very much like a container CLI, but
+ with a virtual machine.
+
+Configuration Management
+------------------------
+
+`LCFG <
https://wiki.lcfg.org/bin/view/LCFG/LcfgLibvirt>`__
+ LCFG is a system for automatically installing and managing the
+ configuration of large numbers of Unix systems. It is particularly
+ suitable for sites with very diverse and rapidly changing
+ configurations.
+ The lcfg-libvirt package adds support for virtualized systems to
+ LCFG, with both Xen and KVM known to work. Cloning guests is
+ supported, as are the bridged, routed, and isolated modes for Virtual
+ Networking.
+
+Continuous Integration
+----------------------
+
+`BuildBot
<
https://docs.buildbot.net/latest/manual/configuration/workers-libvirt.htm...
+ BuildBot is a system to automate the compile/test cycle required by
+ most software projects. CVS commits trigger new builds, run on a
+ variety of client machines. Build status (pass/fail/etc) are
+ displayed on a web page or through other protocols.
+
+`Jenkins <
https://plugins.jenkins.io/libvirt-slave/>`__
+ This plugin for Jenkins adds a way to control guest domains hosted on
+ Xen or QEMU/KVM. You configure a Jenkins Agent, selecting the guest
+ domain and hypervisor. When you need to build a job on a specific
+ Agent, its guest domain is started, then the job is run. When the
+ build process is finished, the guest domain is shut down, ready to be
+ used again as required.
+
+Conversion
+----------
+
+`virt-p2v <
https://libguestfs.org/virt-p2v.1.html>`__
+ Convert a physical machine to run on KVM. It is a LiveCD which is
+ booted on the machine to be converted. It collects a little
+ information from the user, then copies the disks over to a remote
+ machine and defines the XML for a domain to run the guest. (Note this
+ tool is included with libguestfs)
+`virt-v2v <
https://libguestfs.org/virt-v2v.1.html>`__
+ virt-v2v converts guests from a foreign hypervisor to run on KVM,
+ managed by libvirt. It can convert guests from VMware or Xen to run
+ on OpenStack, oVirt (RHEV-M), or local libvirt. It will enable VirtIO
+ drivers in the converted guest if possible. (Note this tool is
+ included with libguestfs)
+ For RHEL customers of Red Hat, conversion of Windows guests is also
+ possible. This conversion requires some Microsoft signed pieces, that
+ Red Hat can provide.
+`vmware2libvirt <
https://launchpad.net/virt-goodies>`__
+ Part of the *virt-goodies* package, vmware2libvirt is a python script
+ for migrating a vmware image to libvirt.
+
+Desktop applications
+--------------------
+
+`virt-manager <
https://virt-manager.org/>`__
+ A general purpose desktop management tool, able to manage virtual
+ machines across both local and remotely accessed hypervisors. It is
+ targeted at home and small office usage up to managing 10-20 hosts
+ and their VMs.
+`virt-viewer <
https://virt-manager.org/>`__
+ A lightweight tool for accessing the graphical console associated
+ with a virtual machine. It can securely connect to remote consoles
+ supporting the VNC protocol. Also provides an optional mozilla
+ browser plugin.
+`qt-virt-manager <
https://f1ash.github.io/qt-virt-manager>`__
+ The Qt GUI for create and control VMs and another virtual entities
+ (aka networks, storages, interfaces, secrets, network filters).
+ Contains integrated LXC/SPICE/VNC viewer for accessing the graphical
+ or text console associated with a virtual machine or container.
+`qt-remote-viewer
<
https://f1ash.github.io/qt-virt-manager/#virtual-machines-viewer>`__
+ The Qt VNC/SPICE viewer for access to remote desktops or VMs.
+
+Infrastructure as a Service (IaaS)
+----------------------------------
+
+`Cracow Cloud One <
http://cc1.ifj.edu.pl>`__
+ The CC1 system provides a complete solution for Private Cloud
+ Computing. An intuitive web access interface with an administration
+ module and simple installation procedure make it easy to benefit from
+ private Cloud Computing technology.
+`Eucalyptus <
https://github.com/eucalyptus/eucalyptus>`__
+ Eucalyptus is an on-premise Infrastructure as a Service cloud
+ software platform that is open source and AWS-compatible. Eucalyptus
+ uses libvirt virtualization API to directly interact with Xen and KVM
+ hypervisors.
+`Nimbus <
http://www.nimbusproject.org>`__
+ Nimbus is an open-source toolkit focused on providing
+ Infrastructure-as-a-Service (IaaS) capabilities to the scientific
+ community. It uses libvirt for communication with all KVM and Xen
+ virtual machines.
+`Snooze <
http://snooze.inria.fr>`__
+ Snooze is an open-source scalable, autonomic, and energy-efficient
+ virtual machine (VM) management framework for private clouds. It
+ integrates libvirt for VM monitoring, live migration, and life-cycle
+ management.
+`OpenStack <
https://www.openstack.org>`__
+ OpenStack is a "cloud operating system" usable for both public and
+ private clouds. Its various parts take care of compute, storage and
+ networking resources and interface with the user using a dashboard.
+ Compute part uses libvirt to manage VM life-cycle, monitoring and so
+ on.
+`KubeVirt <
https://kubevirt.io/>`__
+ KubeVirt is a virtual machine management add-on for Kubernetes. The
+ aim is to provide a common ground for virtualization solutions on top
+ of Kubernetes.
+`Cherrypop <
https://github.com/gustavfranssonnyvell/cherrypop>`__
+ A cloud software with no masters or central points. Nodes autodetect
+ other nodes and autodistribute virtual machines and autodivide up the
+ workload. Also there is no minimum limit for hosts, well, one might
+ be nice. It's perfect for setting up low-end servers in a cloud or a
+ cloud where you want the most bang for the bucks.
+`ZStack <
https://en.zstack.io/>`__
+ ZStack is an open source IaaS software that aims to automate the
+ management of all resources (compute, storage, networking, etc.) in a
+ datacenter by using APIs, thus conforming to the principles of a
+ software-defined datacenter. The key strengths of ZStack in terms of
+ management are scalability, performance, and a fast, user-friendly
+ deployment.
+
+Libraries
+---------
+
+`libguestfs <
https://libguestfs.org>`__
+ A library and set of tools for accessing and modifying virtual
+ machine disk images. It can be linked with C and C++ management
+ programs, and has bindings for Perl, Python, Ruby, Java, OCaml, PHP,
+ Haskell, and C#.
+ Using its FUSE module, you can also mount guest filesystems on the
+ host, and there is a subproject to allow merging changes into the
+ Windows Registry in Windows guests.
+`libvirt-sandbox <
https://sandbox.libvirt.org>`__
+ A library and command line tools for simplifying the creation of
+ application sandboxes using virtualization technology. It currently
+ supports either KVM, QEMU or LXC as backends. Integration with
+ systemd facilitates sandboxing of system services like apache.
+`Ruby Libvirt Object bindings <
https://github.com/ohadlevy/virt#readme>`__
+ Allows using simple ruby objects to manipulate hypervisors, guests,
+ storage, network etc. It is based on top of the `native ruby
+ bindings <
https://libvirt.org/ruby>`__.
+
+LiveCD / Appliances
+-------------------
+
+`virt-p2v <
https://libguestfs.org/virt-v2v/>`__
+ An older tool for converting a physical machine into a virtual
+ machine. It is a LiveCD which is booted on the machine to be
+ converted. It collects a little information from the user, then
+ copies the disks over to a remote machine and defines the XML for a
+ domain to run the guest.
+
+Monitoring
+----------
+
+`collectd <
https://collectd.org/plugins/libvirt.shtml>`__
+ The libvirt-plugin is part of `collectd <
https://collectd.org/>`__
+ and gathers statistics about virtualized guests on a system. This
+ way, you can collect CPU, network interface and block device usage
+ for each guest without installing collectd on the guest systems. For
+ a full description, please refer to the libvirt section in the
+ collectd.conf(5) manual page.
+`Host sFlow <
https://www.sflow.net/>`__
+ Host sFlow is a lightweight agent running on KVM hypervisors that
+ links to libvirt library and exports standardized cpu, memory,
+ network and disk metrics for all virtual machines.
+`Munin <
https://honk.sigxcpu.org/projects/libvirt/#munin>`__
+ The plugins provided by Guido Günther allow to monitor various things
+ like network and block I/O with
+ `Munin <
http://munin.projects.linpro.no/>`__.
+`Nagios-virt <
https://people.redhat.com/rjones/nagios-virt/>`__
+ Nagios-virt is a configuration tool to add monitoring of your
+ virtualised domains to `Nagios <
https://www.nagios.org/>`__. You can
+ use this tool to either set up a new Nagios installation for your Xen
+ or QEMU/KVM guests, or to integrate with your existing Nagios
+ installation.
+`PCP <
https://pcp.io/man/man1/pmdalibvirt.1.html>`__
+ The PCP libvirt PMDA (plugin) is part of the
+ `PCP <
https://pcp.io/>`__ toolkit and provides hypervisor and guest
+ information and complete set of guest performance metrics. It
+ supports pCPU, vCPU, memory, block device, network interface, and
+ performance event metrics for each virtual guest.
+
+Provisioning
+------------
+
+`Tivoli Provisioning Manager
<
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Ti...
+ Part of the IBM Tivoli family, Tivoli Provisioning Manager (TPM) is
+ an IT lifecycle automation product. It `uses
+ libvirt
<
http://publib.boulder.ibm.com/infocenter/tivihelp/v38r1/index.jsp?topic=/...
+ for communication with virtualization hosts and guest domains.
+
+`Foreman <
https://theforeman.org>`__
+ Foreman is an open source web based application aimed to be a Single
+ Address For All Machines Life Cycle Management. Foreman:
+
+ - Creates everything you need when adding a new machine to your
+ network, its goal being automatically managing everything you
+ would normally manage manually (DNS, DHCP, TFTP, Virtual
+ Machines,CA, CMDB...)
+ - Integrates with Puppet (and acts as web front end to it).
+ - Takes care of provisioning until the point puppet is running,
+ allowing Puppet to do what it does best.
+ - Shows you Systems Inventory (based on Facter) and provides real
+ time information about hosts status based on Puppet reports.
+
+Web applications
+----------------
+
+`AbiCloud <
https://www.abiquo.com/>`__
+ AbiCloud is an open source cloud platform manager which allows to
+ easily deploy a private cloud in your datacenter. One of the key
+ differences of AbiCloud is the web rich interface for managing the
+ infrastructure. You can deploy a new service just dragging and
+ dropping a VM.
+`Kimchi <
https://kimchi-project.github.io/kimchi/>`__
+ Kimchi is an HTML5 based management tool for KVM. It is designed to
+ make it as easy as possible to get started with KVM and create your
+ first guest. Kimchi manages KVM guests through libvirt. The
+ management interface is accessed over the web using a browser that
+ supports HTML5.
+`oVirt <
https://ovirt.org/>`__
+ oVirt provides the ability to manage large numbers of virtual
+ machines across an entire data center of hosts. It integrates with
+ FreeIPA for Kerberos authentication, and in the future, certificate
+ management.
+`VMmanager <
https://ispsystem.com/en/software/vmmanager>`__
+ VMmanager is a software solution for virtualization management that
+ can be used both for hosting virtual machines and building a cloud.
+ VMmanager can manage not only one server, but a large cluster of
+ hypervisors. It delivers a number of functions, such as live
+ migration that allows for load balancing between cluster nodes,
+ monitoring CPU, memory.
+`mist.io <
https://mist.io/>`__
+ Mist.io is an open source project and a service that can assist you
+ in managing your virtual machines on a unified way, providing a
+ simple interface for all of your infrastructure (multiple public
+ cloud providers, OpenStack based public/private clouds, Docker
+ servers, bare metal servers and now KVM hypervisors).
+`Ravada <
https://ravada.upc.edu/>`__
+ Ravada is an open source tool for managing Virtual Desktop
+ Infrastructure (VDI). It is very easy to install and use. Following
+ the documentation, you'll be ready to deploy virtual machines in
+ minutes. The only requirements for the users are a Web browser and a
+ lightweight remote viewer.
+`Virtlyst <
https://github.com/cutelyst/Virtlyst>`__
+ Virtlyst is an open source web application built with C++11, Cutelyst
+ and Qt. It features:
+
+ - Low memory usage (around 5 MiB of RAM)
+ - Look and feel easily customized with HTML templates that use the
+ Django syntax
+ - VNC/Spice console directly in the browser using websockets on the
+ same HTTP port
+ - Host and Domain statistics graphs (CPU, Memory, IO, Network)
+ - Connect to multiple libvirtd instances (over local Unix domain
+ socket, SSH, TCP and TLS)
+ - Manage Storage Pools, Storage Volumes, Networks, Interfaces, and
+ Secrets
+ - Create and launch VMs
+ - Configure VMs with easy panels or go pro and edit the VM's XML
+
+Other
+-----
+
+`Cuckoo Sandbox <
https://cuckoosandbox.org/>`__
+ Cuckoo Sandbox is a malware analysis system. You can throw any
+ suspicious file at it and in a matter of seconds Cuckoo will provide
+ you back some detailed results outlining what such file did when
+ executed inside an isolated environment. And libvirt is one of the
+ backends that can be used for the isolated environment.
+
+.. |libvirt powered 96| image:: logos/logo-square-powered-96.png
+.. |libvirt powered 128| image:: logos/logo-square-powered-128.png
+.. |libvirt powered 192| image:: logos/logo-square-powered-192.png
+.. |libvirt powered 256| image:: logos/logo-square-powered-256.png
diff --git a/docs/meson.build b/docs/meson.build
index 942cce6fdc..b61377ea8b 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -32,7 +32,6 @@ docs_assets = [
docs_html_in_files = [
'404',
- 'apps',
'architecture',
'auditlog',
'auth',
@@ -107,6 +106,7 @@ docs_rst_files = [
'advanced-tests',
'api_extension',
'api',
+ 'apps',
'best-practices',
'ci',
'coding-style',
--
2.29.2