Skip to content

Commit

Permalink
Revert "Unified Virtual Machine Administration using libvirt (#268)"
Browse files Browse the repository at this point in the history
This reverts commit ac1b0ce.
  • Loading branch information
taroth21 committed Jan 19, 2024
1 parent ac1b0ce commit 5922bde
Show file tree
Hide file tree
Showing 8 changed files with 52 additions and 215 deletions.
21 changes: 13 additions & 8 deletions articles/manage-vm-on-commandline.asm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -19,18 +19,24 @@
-->
<!-- R E S O U R C E S -->
<!-- Glue files -->
<resources>
<resource href="../glues/manage-vm-on-commandline-more-info.xml" xml:id="_manage-vm-on-commandline-more-info">
<description>More information on libvirt</description>
<!--<resources>
<resource xml:id="_glue-example" href="../glues/glue.xml">
<description>Glue example</description>
</resource>
</resources>
<resource xml:id="_glue-more-info" href="../glues/glue-more-info.xml">
<description>Glue for more information</description>
</resource>
<resource xml:id="_glue-whats-next" href="../glues/glue-whats-next.xml">
<description>Glue what's next</description>
</resource>
</resources>-->
<!-- Concept files -->
<resources>
<resource href="../concepts/manage-vm-on-commandline-concept.xml" xml:id="_manage-vm-on-commandline-concept">
<description>Unified management of virtual machines using libvirt</description>
<description>Unified management of virtual machines using &libvirt;</description>
</resource>
<resource href="../concepts/manage-vm-on-commandline-vmm.xml" xml:id="_manage-vm-on-commandline-vmm">
<description>libvirt unifies management of virtual machines.</description>
<description>&libvirt; unifies management of virtual machines.</description>
</resource>
</resources>
<!-- Tasks -->
Expand All @@ -39,7 +45,7 @@
<!-- References -->
<resources>
<resource href="../references/manage-vm-on-commandline-tools.xml" xml:id="_manage-vm-on-commandline-tools">
<description>libvirt unifies management of virtual machines.</description>
<description>&libvirt; unifies management of virtual machines.</description>
</resource>
</resources>
<!-- Legal -->
Expand Down Expand Up @@ -165,7 +171,6 @@
<module resourceref="_manage-vm-on-commandline-concept" renderas="section"></module>
<module resourceref="_manage-vm-on-commandline-vmm" renderas="section"></module>
<module resourceref="_manage-vm-on-commandline-tools" renderas="section"></module>
<module resourceref="_manage-vm-on-commandline-more-info" renderas="section"></module>
<module resourceref="_legal" renderas="section"/>
<module resourceref="_gfdl" renderas="appendix"/>
</structure>
Expand Down
37 changes: 19 additions & 18 deletions concepts/manage-vm-on-commandline-concept.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,37 +15,38 @@
<info><title>What is &libvirt;?</title>
<meta name="maintainer" content="[email protected]" its:translate="no"/>
<abstract>
<para>libvirt is a collection of software that provides a common API (Application Programming Interface) for managing popular virtualization solutions, for example, KVM, Hypervisor.framework, QEMU, Xen, Virtuozzo, VMWare ESX, and so on. libvirt consists of an API library, a system service &libvirtd;, and a command line utility <emphasis>virsh</emphasis>.</para></abstract>
<para>libvirt is a collection of software that provides a common API (Application Programming Interface) for managing popular virtualization solutions, for example, KVM and Xen. libvirt consists of an API library, a system service libvirtd, and a command line utility virsh. </para></abstract>
</info>
<para>The modular architecture of libvirt allows developers to extend the functionality. Using libvirt, live migration of virtual machines between physical hosts is possible without downtime and this facilitates in load balancing and maintenance.</para>
<para>&libvirt; allows remote management of Virtual Machines and Host resources for multiple VM hosts and is a single tool for different hypervisors. &libvirt; has a graphical user interface and command line to write XML configurations. </para>

<figure><title>Architecture of libvirt</title>
<mediaobject>
<imageobject role="pdf">
<imagedata fileref="manage-vm-on-commandline-architecture.png" width="70%"/>
</imageobject>
<imageobject role="html">
<imagedata fileref="manage-vm-on-commandline-architecture.png" width="75%"/>
</imageobject>
</mediaobject></figure>
<section><title>How does &libvirt; work?</title>
<info><abstract><para>The &libvirtd; service runs on the VM host. The &libvirt; client libraries and utilities connect to &libvirtd; and collect configuration information and resources of the host servers.</para></abstract></info>
<info><abstract><para>The &libvirtd; service runs on the server and performs management tasks, for example, staring, stopping, and migrating guests between host servers. The &libvirt; client libraries and utilities connect to &libvirtd; and collect configuration information and resources of the host servers.</para></abstract></info>
<para>The configuration of each virtual machine is stored in an XML file, and you can manage this configuration in different ways. </para>

<para>You can configure virtual machines managed by &libvirt; using command-line or using Virtual Machine Manager. Interoperability between libvirt and libvirt-based applications are tested and is an essential part of SUSE's support stance.
</para>

<para>&libvirt; tools are designed to work with the &libvirt; API and support virtualization technologies and hypervisors. You can use the &libvirt;-based tools for managing VM Guests. Commonly used tools for libvirt are <emphasis>virsh</emphasis>, <emphasis>virt-manager</emphasis>, <emphasis>virt-install</emphasis>, <emphasis>virt-clone</emphasis>, <emphasis>virt-image</emphasis>, and so on. &libvirt; supports using graphical user interface and commands to write XML configurations.</para>
<para> For example, you can use <emphasis>virsh</emphasis> to configure virtual machines (VM) on the command line as an alternative to using the graphical &vmm;. You can also manage virtual disks using this tool.</para>
<figure xml:id="libvirt-overview"><title>libvirt Overview</title>
<mediaobject>
<imageobject role="pdf">
<imagedata fileref="libvirt_overview.svg" width="100%"/>
</imageobject>
</mediaobject></figure>
<para>The management of virtual machines on the command line provides more control over the host machines than using the graphical interface applications as it allows scripting and automation.</para>
</para>
<para>&libvirt; tools are designed to work with the &libvirt; API and support various virtualization technologies and hypervisors. Some of the commonly used tools for libvirt are virsh, virt-manager, virt-install, virt-clone, virt-image, and so on.</para>
<para>Using the &libvirt;-based tools is the recommended way of managing VM Guests. For example, you can use <command>virsh</command> to configure virtual machines (VM) on the command line as an alternative to using the graphical &vmm;. You can also manage virtual disks using this tool.</para>
<para>The management of virtual machines on command line provides more control over the host machines than using the graphical interface applications.</para>
</section>

<section><title>Benefits of using &libvirt;</title>
<info><abstract><para>The major advantages of using &libvirt; through command-line are listed below:</para></abstract></info>
<info><abstract><para>Some of the major advantages of using &libvirt; through command-line are listed below:</para></abstract></info>
<itemizedlist>
<listitem><para>Allows basic monitoring of host and virtual machines.</para></listitem>
<listitem><para>Allows automating and scripting complex virtualization tasks and workflows.</para></listitem>
<listitem><para>Enables remote management of virtualization host. This helps in managing virtualization resources on remote servers over SSH or other secure protocols.</para></listitem>
<listitem><para>Allows managing headless servers. In server environments, where systems may not have a graphical interface or GUI tools installed, the command-line tool is the only option for managing virtualization.</para></listitem>
<listitem><para>Provides resource efficiency as command line tools have fewer resource requirements compared to the graphical user interface.</para></listitem>
<listitem><para>Allows precise control and customization of commands.</para></listitem>
<listitem><para>Allows using scripts and commands to create custom reports.</para></listitem>
<listitem><para>Supports working with multiple hypervisors.</para></listitem></itemizedlist>
<listitem><para>Allows using any Linux distribution as &libvirt; is cross-platform compatible.</para></listitem></itemizedlist>
</section>
</topic>
35 changes: 17 additions & 18 deletions concepts/manage-vm-on-commandline-vmm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,25 +15,24 @@
<info><title>Virtual Machine Manager</title>
<meta name="maintainer" content="[email protected]" its:translate="no"/>
<abstract><para>
Virtual Machine Manager is a GUI (graphical user interface) application for viewing and configuring virtual machines managed by libvirt</para></abstract></info>
<para>The Virtual Machine Manager displays the summary of running domains, their live performance and resource utilization statistics. Use wizards to create new domains, configure and adjust resource allocation and virtual machine.</para>
<figure xml:id="libvirt-vmm"><title>Virtual Machine Manager</title>
<mediaobject>
<imageobject role="pdf">
<imagedata fileref="libvirt_vmm.svg" width="90%"/>
</imageobject>
</mediaobject></figure>
<para>Listed below are a few configuration options available on Virtual Machine Manager:</para>
Virtual Machine Manager is a GUI (graphical user interface) application for configuring virtual machines managed by libvirt.</para></abstract></info>
<para>You can start the Virtual Machine Manager by running the <command>virt-manager</command> command from the command line. The Virtual Machine Manager displays the summary of running domains, their live performance and resource utilization statistics. Use wizards to create new domains, configure and adjust resource allocation and virtual hardware.</para>
<note><para>Some configuration changes take effect immediately after you make the changes in the GUI, while others need a reboot of the machine. The Virtual Machine Manager warns you that you must reboot the machine.</para>
</note>
<para>Listed below are a few configuration options available on Virtual Machine Manager:</para>
<variablelist>
<varlistentry>
<term>View and configure VM Guest details</term>
<listitem><para>The <guimenu>Details</guimenu> view of the Virtual Machine Manager displays detailed information about the VM Guest's complete configuration and hardware equipment. Using this view, you can also change the guest configuration or add and modify virtual hardware to an existing virtual machine.</para></listitem>
</varlistentry><varlistentry><term>View Performance Statistics of CPU usage, memory usage, disk and network I/O of the VM guest.</term>
<listitem><para>The <guimenu>Performance</guimenu> view shows regularly updated charts of CPU and memory usage, and disk and network I/O of the VM guest. </para><para>You can also set up the virtualized processor and memory. In the CPUs section, you can configure the number of virtual CPUs allocated to the VM Guest. Logical host CPUs shows the number of online and usable CPUs on the VM Host Server. In the <guimenu>Configuration</guimenu> you can configure the CPU model and topology. </para></listitem></varlistentry>
<varlistentry><term>Configure Boot options, Storage, Controllers, Networking, Input devices</term>
<listitem><para>You can configure options affecting the VM Guest boot process and you can configure both hard disks and removable media, such as USB or CD-ROM drives in <guimenu>Storage</guimenu>. <guimenu>Controllers</guimenu> and <guimenu>Networking</guimenu> allows you to add and configure new controllers and network device respectively. The configuration of input devices such as mouse, keyboard or tablet is possible through the <guimenu>Input</guimenu> option.</para></listitem></varlistentry>
<varlistentry><term>Assign a host PCI device to a VM Guest</term><listitem><para>You can directly assign PCI devices on the VM Host Server to guests (PCI pass-through). When the PCI device is assigned to one VM Guest, it cannot be used on the host or by another VM Guest unless it is re-assigned.</para></listitem></varlistentry>
<varlistentry><term>Take snapshot of the VM host</term><listitem><para>You can take snapshots of the VM host and you can access the option from VM Details toolbar. </para></listitem></varlistentry>
<varlistentry><term>View and configure details of VM Host</term><listitem><para>You can create and manage connection, storage pools, and virtual networks.</para></listitem></varlistentry>
<term>View details of the VM Guest</term>
<listitem><para>The Details view of the Virtual Machine Manager displays detailed information about the VM Guest's complete configuration and hardware equipment. Using this view, you can also change the guest configuration or add and modify virtual hardware to an existing virtual machine.</para></listitem>
</varlistentry><varlistentry><term>View Performance Statistics of CPU and memory usage as well as disk and network I/O</term>
<listitem><para>The Performance view shows regularly updated charts of CPU and memory usage, and disk and network I/O. </para></listitem></varlistentry>
<varlistentry><term>Configure basic hardware</term>
<listitem><para>You can setup the virtualized processor and memory. In the CPUs section, you can configure the number of virtual CPUs allocated to the VM Guest. Logical host CPUs shows the number of online and usable CPUs on the VM Host Server. In the Configuration you can configure the CPU model and topology. </para></listitem></varlistentry>
<varlistentry><term>Configure boot options</term>
<listitem><para>You can configure options affecting the VM Guest boot process.</para></listitem>
</varlistentry>
<varlistentry><term>Configure Storage, Controllers, Networking, Input devices</term>
<listitem><para>You can configure both hard disks and removable media, such as USB or CD-ROM drives in Storage. Controllers and Networking allows you to add and configure new controllers and network device respectively. The configuration of input devices such as mouse, keyboard or tablet is possible through the Input option.</para></listitem></varlistentry>
<varlistentry><term>Assign a host PCI device to a VM Guest</term><listitem><para>You can directly assign PCI devices on the VM Host Server to guests (PCI pass-through). When the PCI device is assigned to one VM Guest, it cannot be used on the host or by another VM Guest unless it is re-assigned. A prerequisite for this feature is a VM Host Server configuration as described in FIXME . </para></listitem></varlistentry>
</variablelist>
</topic>
6 changes: 3 additions & 3 deletions glues/manage-vm-on-commandline-more-info.xml
Original file line number Diff line number Diff line change
Expand Up @@ -18,20 +18,20 @@
<itemizedlist>
<listitem>
<para>
For more information on &libvirt;, refer to
Latest &libvirt; documentation is at
<link xlink:href="https://libvirt.org/"/>.
</para>
</listitem>
<listitem>
<para>
For &libvirt; documentation, refer to
For &libvirt; documentation, refer
<link xlink:href="https://libvirt.org/docs.html"/>.
</para>
</listitem>
<listitem>
<para>
For information on Managing Virtual Machines with &libvirt;, refer to
<link xlink:href="https://documentation.suse.com/sles/html/SLES-all/part-virt-libvirt.html"/>.
<link xlink:href="https://documentation.suse.com/sles/15-SP1/html/SLES-all/part-virt-libvirt.html"/>.
</para>
</listitem>
</itemizedlist>
Expand Down
Loading

0 comments on commit 5922bde

Please sign in to comment.