Fedora 25Virtualization GettingStarted GuideVirtualization DocumentationFedora Documentation Project
Virtualization Getting Started GuideFedora 25 Virtualization Getting Started GuideVirtualization DocumentationEdition 1AuthorFedora Documentation ProjectCopyright 2012-2015 Red Hat, Inc. and others.The text of and illustrations in this document are licensed by Red Hat under a Creative CommonsAttribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is availableat http://creativecommons.org/licenses/by-sa/3.0/. The original authors of this document, and Red Hat,designate the Fedora Project as the "Attribution Party" for purposes of CC-BY-SA. In accordance withCC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for theoriginal version.Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert,Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the InfinityLogo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.For guidelines on the permitted uses of the Fedora trademarks, refer to https://fedoraproject.org/wiki/Legal:Trademark guidelines.Linux is the registered trademark of Linus Torvalds in the United States and other countries.Java is a registered trademark of Oracle and/or its affiliates.XFS is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United Statesand/or other countries.MySQL is a registered trademark of MySQL AB in the United States, the European Union and othercountries.All other trademarks are the property of their respective owners.The Fedora Virtualization Getting Started Guide describes the basics of virtualization and thevirtualization products and technologies that are available with Fedora.
Prefacev1. Document Conventions . v1.1. Typographic Conventions . v1.2. Pull-quote Conventions . vi1.3. Notes and Warnings . vii2. We Need Feedback! . vii1. Introduction1.1. Who should read this guide? .1.2. Virtualization in Fedora Linux .1.3. Virtualization resources .11112. What is Virtualization?2.1. How Does Virtualization work? .2.2. Virtualization Methods .2.3. Virtualization Considerations .2.4. Performance .2.5. Flexibility .2.6. Disaster Recovery .33334443. Introduction to Fedora virtualization products3.1. KVM in Fedora .3.2. libvirt and libvirt tools .3.3. Boxes .55664. Introduction to Boxes74.1. Features of Boxes . 74.2. How do I create a virtual machine in Boxes? . 74.3. How do I connect to other computers in Boxes? . 114.4. How do I change the settings of a machine in boxes? . 154.5. How do I delete a box? . 184.6. Boxes Tips and Tricks . 234.7. Advanced Commands in Boxes . 235. Creating and Managing Guests with Virt-Manager5.1. System Requirements .5.2. Installing Virtualization package groups .5.3. Network Support .5.4. Creating guests with virt-manager .2525252626A. Advanced Virtualization ConceptsA.1. Virtualized hardware devices .A.1.1. Virtualized and emulated devices .A.1.2. Storage volumes .A.1.3. Para-virtualized devices .A.1.4. Physical host devices .A.1.5. CPU models .A.1.6. Storage .A.2. guestfish .A.3. Other useful tools .33333334353536363737B. Revision History41iii
iv
Preface1. Document ConventionsThis manual uses several conventions to highlight certain words and phrases and draw attention tospecific pieces of information.1In PDF and paper editions, this manual uses typefaces drawn from the Liberation Fonts set. TheLiberation Fonts set is also used in HTML editions if the set is installed on your system. If not,alternative but equivalent typefaces are displayed. Note: Red Hat Enterprise Linux 5 and later includesthe Liberation Fonts set by default.1.1. Typographic ConventionsFour typographic conventions are used to call attention to specific words and phrases. Theseconventions, and the circumstances they apply to, are as follows.Mono-spaced BoldUsed to highlight system input, including shell commands, file names and paths. Also used to highlightkeycaps and key combinations. For example:To see the contents of the file my next bestselling novel in your currentworking directory, enter the cat my next bestselling novel command at theshell prompt and press Enter to execute the command.The above includes a file name, a shell command and a keycap, all presented in mono-spaced boldand all distinguishable thanks to context.Key combinations can be distinguished from keycaps by the hyphen connecting each part of a keycombination. For example:Press Enter to execute the command.Press Ctrl Alt F2 to switch to the first virtual terminal. Press Ctrl Alt F1 toreturn to your X-Windows session.The first paragraph highlights the particular keycap to press. The second highlights two keycombinations (each a set of three keycaps with each set pressed simultaneously).If source code is discussed, class names, methods, functions, variable names and returned valuesmentioned within a paragraph will be presented as above, in mono-spaced bold. For example:File-related classes include filesystem for file systems, file for files, and dir fordirectories. Each class has its own associated set of permissions.Proportional BoldThis denotes words or phrases encountered on a system, including application names; dialog box text;labeled buttons; check-box and radio button labels; menu titles and sub-menu titles. For example:Choose System Preferences Mouse from the main menu bar to launch MousePreferences. In the Buttons tab, click the Left-handed mouse check box and click1https://fedorahosted.org/liberation-fonts/v
PrefaceClose to switch the primary mouse button from the left to the right (making the mousesuitable for use in the left hand).To insert a special character into a gedit file, choose Applications Accessories Character Map from the main menu bar. Next, choose Search Find from theCharacter Map menu bar, type the name of the character in the Search field and clickNext. The character you sought will be highlighted in the Character Table. Doubleclick this highlighted character to place it in the Text to copy field and then click theCopy button. Now switch back to your document and choose Edit Paste from thegedit menu bar.The above text includes application names; system-wide menu names and items; application-specificmenu names; and buttons and text found within a GUI interface, all presented in proportional bold andall distinguishable by context.Mono-spaced Bold Italic or Proportional Bold ItalicWhether mono-spaced bold or proportional bold, the addition of italics indicates replaceable orvariable text. Italics denotes text you do not input literally or displayed text that changes depending oncircumstance. For example:To connect to a remote machine using ssh, type ssh username@domain.name ata shell prompt. If the remote machine is example.com and your username on thatmachine is john, type ssh john@example.com.The mount -o remount file-system command remounts the named filesystem. For example, to remount the /home file system, the command is mount -oremount /home.To see the version of a currently installed package, use the rpm -q packagecommand. It will return a result as follows: package-version-release.Note the words in bold italics above — username, domain.name, file-system, package, version andrelease. Each word is a placeholder, either for text you enter when issuing a command or for textdisplayed by the system.Aside from standard usage for presenting the title of a work, italics denotes the first use of a new andimportant term. For example:Publican is a DocBook publishing system.1.2. Pull-quote ConventionsTerminal output and source code listings are set off visually from the surrounding text.Output sent to a terminal is set in mono-spaced roman and presented thus:booksbooks agesmssnotesphotosscriptsstuffsvgssvnSource-code listings are also set in mono-spaced roman but add syntax highlighting as follows:package org.jboss.book.jca.ex1;import javax.naming.InitialContext;public class ExClientvi
Notes and Warnings{public static void main(String args[])throws Exception{InitialContext iniCtx new InitialContext();Objectref iniCtx.lookup("EchoBean");EchoHomehome (EchoHome) ref;Echoecho home.create();System.out.println("Created Echo");System.out.println("Echo.echo('Hello') " echo.echo("Hello"));}}1.3. Notes and WarningsFinally, we use three visual styles to draw attention to information that might otherwise be overlooked.NoteNotes are tips, shortcuts or alternative approaches to the task at hand. Ignoring a note shouldhave no negative consequences, but you might miss out on a trick that makes your life easier.ImportantImportant boxes detail things that are easily missed: configuration changes that only apply tothe current session, or services that need restarting before an update will apply. Ignoring a boxlabeled 'Important' will not cause data loss but may cause irritation and frustration.WarningWarnings should not be ignored. Ignoring warnings will most likely cause data loss.2. We Need Feedback!If you find a typographical error in this manual, or if you have thought of a way to make this manualbetter, we would love to hear from you! Please submit a report in Bugzilla: http://bugzilla.redhat.com/bugzilla/ against the product Fedora 25.When submitting a bug report, be sure to mention the manual's identifier: virtualization-getting-startedguideIf you have a suggestion for improving the documentation, try to be as specific as possible whendescribing it. If you have found an error, please include the section number and some of thesurrounding text so we can find it easily.vii
viii
Chapter 1.IntroductionThe Fedora Virtualization Getting Started Guide introduces the basics of virtualization and assists withthe navigation of other virtualization documentation and products that Fedora provides.This guide also explains the advantages of virtualization and dispels some common myths that existregarding virtualization.1.1. Who should read this guide?This guide is designed for anyone wishing to understand the basics of virtualization, but may be ofparticular interest to: Those who are new to virtualization. Those considering deployment of virtualized machines in their environment. Those looking for an overview of the virtualization technologies that Fedora produces and supports.1.2. Virtualization in Fedora LinuxFedora contains packages and tools to support a variety of virtualized environments.Virtualization in Fedora is carried out by KVM (Kernel-based Virtual Machine). KVM is a fullvirtualization solution built into Fedora.Refer to Chapter 3, Introduction to Fedora virtualization products for more about the virtualizationproducts available in Fedora.1.3. Virtualization resourcesFedora contains packages and tools to support a variety of virtualized environments. Fedoravirtualization provides the upstream development for virtualization in Red Hat Enterprise Linux. Referto Chapter 3, Introduction to Fedora virtualization products for more information about the virtualizationproducts available in Fedora.1
2
Chapter 2.What is Virtualization?Virtualization is a broad term used to describe running multiple guest operating systems with asoftware to manage them.2.1. How Does Virtualization work?Most implementations of virtualization use a hypervisor. The hypervisor allows multiple operatingsystems, called guests, to run on the same physical system by offering virtualized hardware to theguest operating system.2.2. Virtualization MethodsFull virtualizationFull virtualization uses the hardware features of the processor to provide guests with total abstractionof the underlying physical system. This creates a new virtual system, called a virtual machine, thatallows guest operating systems to run without modifications. The guest operating system and anyapplications on the guest virtual machine are unaware of their virtualized environment and runnormally. Hardware-assisted virtualization is the technique used for full virtualization with KVM (Kernelbased Virtual Machine) in Fedora.Para-virtualizationPara-virtualization employs a collection of software and data structures that are presented to thevirtualized guest, requiring software modifications in the guest to use the para-virtualized environment.Para-virtualization can encompass the entire kernel, as is the case for Xen para-virtualized guests, ordrivers that virtualize I/O devices.Software virtualization]Software virtualization uses slower binary translation and other emulation techniques to rununmodified operating systems.NoteFor more information and detailed instructions on guest installation, refer to the FedoraVirtualization Deployment and Administration Guide2.3. Virtualization ConsiderationsBefore you consider to virtualize your environment it is important to perform a return on investment(ROI) analysis to determine the best use of virtualization in your environment. Consider the followingbenefits: Smaller footprint Using virtualization negates much of the need for multiple physical platforms.Consolidating servers onto fewer machines means less physical space is required. This equates toless power being drawn for machine operation and cooling, resulting in reduced energy costs. Thismeans more efficient energy resource management for your data center. Less time and maintenance needed to support virtualized systems provided that adequate planningis performed before migrating physical systems to virtualized ones.3
Chapter 2. What is Virtualization? Extended life for installed software. Older versions of software may not run on newer, bare metalmachines directly. However, by running the older software virtually on a larger, faster system, thelife of the software may be extended while taking advantage of the performance from the newhardware.2.4. PerformanceModern servers have multiple core CPUs. This has significantly changed the possibilities with virtualmachines. Depending on what you would like to use your virtual machine for, and how many CPUs areavailable, you can now set up a virtual machines with multiple CPUs.2.5. Flexibility Virtualization provides greater flexibility for managing systems.Virtual machines can be copied or moved to test software updates and validate configuration changes,without impacting other systems. Because each of the virtualized systems are completely separate toeach other, one system's downtime will not affect any others.Since less space is needed in a data center to put up the production environment, it is easier to createextra space for development and testing environments. Both are easily set up and discarded. Having amore flexible environment, makes it easier to provide secure redundancy planning.With the fast changing market, a virtual configuration will provide a flexible, stable environment, withwhich a business can quickly adapt, this helps the organization stay competitive.2.6. Disaster Recovery Disaster Recovery is generally easierDisaster recovery is a major component in information technology planning. Virtualization provides aflexible and reliable environment for production systems. This flexibility also gives a large benefit offlexible and easy disaster recovery. Virtual machines have features that they can be moved, backedup, and restored, in many different ways that are not available with a typical server.Even when the production environment is still on normal server hardware, disaster recovery is quickerand easier when the systems are virtualized. If something catastrophic happens on a typical physicalserver a complete or complicated re-install of the system is usually required; resulting in hours ofrecovery time. However, when a clone or snapshot of a virtual machine is stored as a backup, this canbe used as a fast recovery method of the virtual machine. A virtual machine does not depended onspecific hardware, this makes any server suitable to recover a virtual machine on.4
Chapter 3.Introduction to Fedora virtualizationproductsThis chapter introduces the various virtualization products available in Fedora.3.1. KVM in FedoraWhat is KVM?KVM (Kernel-based Virtual Machine) is a full virtualization solution for Linux on AMD64 andIntel 64 hardware that is built into the standard Fedora kernel. It can run multiple, unmodifiedWindows and Linux guest operating systems. The KVM hypervisor in Fedora is managed with
This guide also explains the advantages of virtualization and dispels some common myths that exist regarding virtualization. 1.1. Who should read this guide? This guide is designed for anyone wishing to understand the basics of virtualization, but may be of particular interest to: Those who are new to virtualization.
In this section, we give an overview of virtualization and describe virtio, the virtualization standard for I/O devices. In addition, we discuss the state-of-the-art for network I/O virtualization. 2.1 Overview of Virtualization and virtio The virtualization technology is generally classi ed into full-virtualization and paravirtualization.
Red Hat Enterprise Linux 7 Virtualization Getting Started Guide An introduction to virtualization concepts Dayle Parker Red Hat Customer Content Services dayleparker@redhat.com . KVM and virtualization in Red Hat Enterprise Linux 3.2. libvirt and libvirt tools 3.3. Virtualized hardware devices 3.4. Storage Ch itualzati T l
Biacore T200 Getting Started 28-9840-98 Edition AB 5 Biacore T200 Getting Started Biacore T200 Getting Started Introduction This Getting Started handbook is designed as a self-study guide to introduce you to the basic operations of BiacoreTM T200, Biacore T200 Control Software and Biacore T200 Evaluation Software.
TU Dresden, 2009-12-01 MOS - Virtualization Slide 6 von 58 Virtualization – a hype A lot of interest in the research community within the last years, e.g.: SOSP 03: Xen and the Art of Virtualization EuroSys 07: a whole session on virtualization Many virtualization products: VMware, QEmu, VirtualBox, KVM
Lots of features (Contd.) Domain Isolation: VCPU and Host Interrupt Affinity Spatial and Temporal Memory Isolation Device Virtualization: Pass-through device support Block device virtualization Network device virtualization Input device virtualization Display device virtualization VirtIO v0.9.5 for Para-virtualization
physical entities, and categorizes virtualization on two levels: resource (or infrastructure) virtualization and service (or application) virtualization. In resource virtualization, physical resources such as network, compute, and storage resources are segmented or pooled as logical resources. An example of resource virtualization: Sharing a load
KVM and virtualization in Red Hat Enterprise Linux 3.2. libvirt and libvirt tools 3.3. Virtualized hardware devices 3.4. Storage C t 4 Viru i on ool . Red Hat Enterprise Linux 7 Virtualization Getting Started Guide 2. of the virtual machine's memory to the destination host. The virtual machine is then resumed on
The Question is, “Am I my brother’s keeper?” Am I My Brother’s Keeper, Bill Scheidler 4 Deuteronomy 25:5-10 – God challenges brothers to build up the house of their brothers. “If brothers dwell together, and one of them dies and has no son, the widow of the dead man shall not be married to a stranger outside the family; her husband’s brother shall go in to her, take her as his .