OPS235 Lab 2 - Fedora17
Contents
- 1 Fedora 19 Installation Methods (on Virtual Machines: fedora1, fedora2, fedora3)
- 2 Performing Lab 2
- 2.1 Preparation
- 2.2 Investigation 1: Installing from the Fedora19 Desktop Live Disc (950MB)
- 2.3 Investigation 2: Installing from the Network
- 2.4 Investigation 3: Installing from the Network using Kickstart
- 2.5 Investigation 4: Updating and Comparing the VMs
- 2.6 Investigation 5: Managing Virtual Machines from the Command Line
- 2.7 Investigation 6: How do I backup a virtual machine?
- 2.8 Investigation 7: Kickstart Files
- 3 Completing the Lab
- 4 Preparing for Quizzes
Fedora 19 Installation Methods (on Virtual Machines: fedora1, fedora2, fedora3)
Introduction
A virtual machine is a software simulation of a computer which can be used as though it were actual hardware. It's possible to run multiple virtual machines on one computer, reducing hardware requirements and introducing flexibility. Some common uses of virtualization include:
- Software testing -- Using multiple operating systems simultaneously on a single computer for testing and experimentation.
- Network simulation -- Testing network services, protocols, and security scenarios with a small number of computers.
- Penetration Testing -- Perform Scanning & enumeration in a safe and authorized environment to test for system vulnerabilities.
- Isolation -- Protecting multiple sets of data by storing them on multiple virtual machines. If one of the virtual machines is compromised, the data on other virtual machines is still protected.
- Server consolidation -- Reducing the number of physical servers in a network by moving physical machines to virtual machines. This saves hardware, administration, cooling, and electricity costs, and it can increase the utilization of hardware (by ensuring that the hardware is not under-loaded).
- Load-balancing and disaster recovery -- It is possible to migrate virtual machines between different physical machines, to ensure that a workload is balanced across multiple computers, to allow routine hardware maintenance and upgrading, and to compensate for hardware failure or other disasters.
In this lab, you will create three virtual machines. This also gives you an opportunity to experiment with different ways of installing Fedora. Later in this course you will install another operating system distribution in a virtual machine.
|
|
Objectives
- Understand Virtualization
- Use KVM virtualization on Fedora
- Use a variety of installation methods:
- Live Image Installation
- Network Installation
- Kickstart Installation
- Understand the advantages and disadvantages of each type of installation, and be able to select the best installation method for a particular situation.
Required Materials (Bring to All Labs)
- Fedora 19 LIVE DVD
- SATA Hard Disk (in removable disk tray)
- USB Memory Stick
- Lab Logbook
(Note: The Fedora 19 x86_64 Full Installation DVD is not required for this lab)
Prerequisites
- Completion and Instructor "Sign-off" of Lab 1: OPS235 Lab 1
Linux Command Online Reference
Each Link below displays online manpages for each command (via http://linuxmanpages.com):
- virsh (Refer to Fedora Virtualization Guide link in the "Resources on the Web" section)
- gzip / gunzip
Resources on the Web
Virtualization: | Live Image Installation: | Network Installation: | Kickstart Installation: |
Performing Lab 2
Preparation
- Open a web-browser, and open the OPS235 Lab #2 WIKI.
NOTE: You need to enter your "MySeneca" username and password to obtain a "wired" Internet connection (otherwise, you will not be able to perform the "groupinstall" command in the next step). Remember to perform a "wired-connection" (logging in with your MySeneca username and password via a web-browser) every time you boot-up your host machine... - Open a shell terminal, and login to the root account.
- Install the Fedora virtualization software by issuing the Linux command:
yum groupinstall "Virtualization"
( You can alternatively use the Linux command:pkcon install @virtualization
)
- Start the virtualization service using the systemctl command:
systemctl start libvirtd.service
- The firewall configuration is altered by the addition of the virtualization software. Restart the firewall so that these changes become active:
systemctl restart iptables.service
- After rebooting your computer system, and logging back into your account, start the graphical tool by clicking the Activities menu, in the search box, type
virt-manager
and then click the virtual manager icon.
- You will be prompted to enter your password: enter your user (not root) password and click the "Authenticate" button.
- Record the setup commands in your lab log-book.
- Proceed to Investigation 1.
Investigation 1: Installing from the Fedora19 Desktop Live Disc (950MB)
Introduction
In this investigation, you will install Fedora from your live disc, and observe the differences between this type of installation and the DVD installation previously performed.
Note: There are two general tasks when installing an Operating System as a virtual machine:
- Create a Virtual Machine (in the Virtual Machine Manager) to hold the Operating System and its contents.
- Run the created Virtual Machine (created in step 1), and install the operating system while Virtual Machine is running.
VM Details
- Name: fedora1
- Boot media: Fedora 19 Desktop Live DVD
- Installation source: Fedora 19 Desktop Live DVD
- Memory: 1024MB
- Disk space: 15GB
- CPUs: 1
Screen-Shot Thumbnail Reference
Steps
- In the Virtual Machine Manger, click on the icon to Create a Virtual Machine in the upper-left corner:
(refer to Virtual Machine Manager thumbnail above). - A window will appear with the title New VM. There are five steps to be completed; click Forward after each step:
- Step 1 of 5: Enter the virtual machine (called fedora1) name and select Local install media (ISO image or CDROM) (refer to Step 1 of 5 thumbnail above).
- Click the Forward Button.
- Step 2 of 5: Insert the DVD containing the Fedora Live Disc image. Wait a moment for the disc to be recognized, You should see a black dialog box appear that recognizes the DVD. Click on the black box to confirm.
- Make certain that you select "Use CDROM or DVD".
- Under "Location your install media section", select "Use CDROM or DVD". Set the OS type to Linux and the Version to Fedora 19 (refer to Step 2 of 5 thumbnail above), then click the Forward Button.
- Step 3 of 5: Set the memory to 1024 MB and the number of CPUs to 1 (refer to Step 3 of 5 thumbnail above), Then click the Forward button.
- Step 4 of 5: This next step creates a disk file that will be used to simulate the virtual machine's disk drive. Select a size of 15 GB and check-mark the box labelled Allocate entire disk now (refer to Step 4 of 5 thumbnail above), then click the Forward button.
- Step 5 of 5: Review the options that you have selected. Make a note of the storage location. If anything needs to be changed, use the Back button to go back and edit it; otherwise, click Finish (refer to Step 5 of 5 thumbnail above).
- When you have completed your installation, click the Quit button. You should return to the Fedora Live desktop.
- Shutdown the Fedora Live session by clicking on the Live User button (at the top right-hand corner) and select Power Off, and confirm that you want to power-off. It is a good idea to be patient! Sometimes it may take a few minutes for shut-down!
- The Installation Summary dialog box will appear (similar to what you encountered in lab1 for your full DVD install). It is assumed that you will be familiar with the general steps on the installation process.
- Set the Time Zone for "Toronto".
- When back at the main installation summary menu, select Installation Destination.
- In the Installation Options dialog box Confirm approx. 15 GB for the Virtio Block Device and click the Done button in the top left-hand corner. Note: It may take a few minutes to access the next Installation Options dialog box, so please be patient!
- Click "I want to review/modify my disk partitions before continuing", confirm that the partition scheme is set to LVM, and click the Continue button.
- In the Manual Partitioning dialog box, click on the link "Click here to create them automatically"
- Review the automatically created partitions in the next dialog box. Record in your lab log-book the partition names and related sizes, and note the virtual hard disk device name (i.e. vda1). Click the Done button at the top left-hand corner.
- Confirm the Summary of Changes, and then click the "Accept Changes" button located on the bottom right-hand side. Note: please be patient, and wait a few minutes until you can access the Installation Summary dialog box. Click Begin Installation. Note the time that it takes to complete this installation.
- During the installation process, set a root password and create a least one regular user account.
- After the installation process has completed, click on the Quit button. This should return you to the LIVE version of Linux that was running to help install to the Hard Drive. Click on the live username located at the top right-hand corner and power-off the machine.
- Make certain that you remove your Fedora19 Live DVD from your DVD drive. From your Virtual Machine Manager window, start your fedora1 virtual machine (remember to press the Play button to start the VM).
- Log into your fedora1 VM as a regular user (you created during the installation process).
- Upon first log-in, set your Gnome preferences (you are NOT required to set-up a cloud account for this course).
- Open a terminal (shell), and log into root.
- Change your host name to fedora1 (refer to your OPS235 Lab 1 notes).
- Compare the installation time to the amount of time it took to do this type of installation. Record this information in the table contained in Investigation 4.
- Enable SSH access to your virtual machine with these commands (semi-colon allows commands to be run in sequence):
systemctl start sshd; systemctl enable sshd.service
- Find out the IP address of your virtual machine:
ifconfig eth0
- Enter the following command on your virtual machine to create a firewall exception to allow ssh traffic into the machine:
iptables -I INPUT -p tcp -s0/0 -d0/0 --dport 22 -j ACCEPT
- Confirm that you can ssh to your virtual machine from your host (f19host):
ssh fedora1_IP_address
(determined from step 27 above)
Answer the Investigation 1 observations / questions in your lab log book.
Investigation 2: Installing from the Network
Introduction
It is possible to install Fedora entirely from the network. In this investigation, you will install Fedora from a webserver on Seneca's LAN.
VM details
- Name: fedora2
- Boot media: Network installation
- Installation source: http://belmont.senecac.on.ca/fedora/releases/19/Fedora/x86_64/os/
- Memory: 1024MB
- Disk space: 20GB
- CPUs: 1
Steps
- Create the VM (called fedora2) as you did with the fedora1 virtual machine, except:
- In step 1 of 5, set the installation type to Network Install (HTTP, FTP, or NFS).
- In step 2 of 5, provide the location of the software source by providing the URL http://belmont.senecac.on.ca/fedora/releases/19/Fedora/x86_64/os/ . You can set the option to have the the appropriate OS type and Linux version automatically detected.
- In step 3 of 5, select the appropriate RAM.
- In step 4 of 5, set the hard-drive space to 20GB (NOT 15 GB!)
- In step 5 of 5, review the settings, and click Finish.
- Observe the boot process. How is it different from booting from an optical disc (DVD)?
- You will then be prompted for default language. Make the appropriate selection and proceed.
- Complete the Installation Summary sections (Date and Time, Installation Destinatation) like you did in the fedora1 install, except in the partitioning step, select Review and modify partition layout. Allow the installation program to automatically create the partitions, but we will be making changes to the partition sizes.
- On the next screen, change the logical volumes as follows:
- Select the logical volume (partition) root (i.e. / ), and reduce the size to 10 GB, then click Update Settings.
- Click the plus sign (i.e. +) to add a logical volume called /home with a size of 2 GB and click the Add Mount Point button. Note that you can make changes to other items (such as the file system type like ext4), but you are not required to do this for this lab.
- Review your changes, click Done, click Accept Changes to return to the Installation Summary.
- Make certain that Software Selection is set to Gnome Desktop.
- Complete the installation, and set a root password and at least one regular user account.
- Click Reboot to restart the system. Note: be patient for the reboot process! (Force a Virtual Machine shutdown only if absolutely necessary).
- Record the time taken to install, and compare this to the time taken by the previous installations.
- What was different with your fedora2 install (upon completion) that was different than your fedora1 install? What was similar?
- Record this information in the table contained in Investigation 4.
Answer the Investigation 2 observations / questions in your lab log book.
Investigation 3: Installing from the Network using Kickstart
Introduction
When Fedora is installed using the techniques you have used so far, the user is asked a number of questions. In some situations, it is better to provide the answers to these questions in a file rather than answer them individually. This type of file is called a kickstart file.
In this investigation, a kickstart file is provided for you. You can also create or modify a kickstart file using a regular text editor or a graphical tool.
VM details
- Name: fedora3
- Boot media: Network installation
- Installation source: http://belmont.senecac.on.ca/fedora/releases/19/Fedora/x86_64/os/
- Kickstart location: http://www.drivehq.com/file/df.aspx/shareID10606286/fileID1269952040/Fedora19-kickstart.cfg
- Memory: 1024MB
- Disk space: 15GB
- CPUs: 1
Steps
- Create a VM called fedora3. You will be installing from the network (like you did with fedora2, but you will be specifying a kickstart file URL).
- In step 2 of 5, use the same URL for Installation Source. Click to expand the URL Options and enter the Kickstart URL: http://scs.senecac.on.ca/~kent.poots/Fedora19-kickstart.cfg . Make certain to select the option for the kick-start file to determine the OS type and version and click Forward.
- Specify the RAM amount (1024 MB) and Hard Disk space (15GB) and proceed to next screen.
- Verify the installation settings, and then click Finish.
- Observe the installation. How is it different from booting from an optical disc (DVD)? What is the purpose of the kickstart file?
- Complete the installation. Record the time taken to install, and compare this to the time taken by the previous installations.
- What happens when the installation is finished?
- Take a look at the kickstart file by clicking on the link in a web-browser (using the URL you entered) and search for "password" (you may have to search for this pattern a couple of times). Determine the root password as well as the regular username and password for the first user account.
- Boot the virtual machine and log in (use the user ID and password information from the previous step). Compare the experience to the first time you booted the other virtual machines.
- Record this information in the table contained in Investigation 4.
Answer the Investigation 3 observations / questions in your lab log book.
Investigation 4: Updating and Comparing the VMs
- In each VM, run this command:
yum update
- Record the answers to these questions in your log book:
- How long did it take to run on each VM? How many packages were updated?
- Why does it take longer in some VMs than others?
Complete the following table (and transfer into your lab2 log-book notes):
f19host | fedora1 | fedora2 | fedora3 | |
---|---|---|---|---|
Installation Method | Installation Disc | Live Disc | Network Installation | Network Installation + Kickstart |
Packages Installed | ||||
Updates Installed immediately after installation | ||||
Software could be selected during installation | ||||
Disk layout could be selected during installation | ||||
No questions asked during installation | ||||
Total installation time (after installation questions) | ||||
Amount of disk space used | ||||
Questions asked during first boot | ||||
Advantages of this type of installation | ||||
Disadvantages of this type of installation | ||||
This type of installation is recommended for... |
Investigation 5: Managing Virtual Machines from the Command Line
- Start the fedora1 virtual machine, and stop the fedora2 and fedora3 virtual machines.
- Switch to the f19host machine, and open a shell terminal.
- Enter these commands into your f19host machine and note the result:
-
virsh list
-
virsh list --all
-
virsh list --inactive
-
- Now, shut-down your fedora1 VM normally, and close the fedora1 VM window. Make certain NOT to close the Virtual Machine Manager main window.
- Switch to your terminal and issue the command:
virsh start fedora1
- Check to see if your fedora1 VM is now running.
- Switch to the terminal and issue the command:
virsh list --all
and confirm the status of the fedora1 VM. - There are other commands that can be used (such as suspend, or shutdown). The "shutdown" command may not always work since it sends a request to "shutdown virtual machine gracefully", but may not always work. Why do you think it is useful to have commands to manipulate VMs?
Answer the Investigation 5 observations / questions in your lab log book.
Investigation 6: How do I backup a virtual machine?
- Shut down all of the virtual machines.
- Change to the directory
/var/lib/libvirt/images/
. Note the size of the files in this directory. What do these files contain? - Make a compressed backup of the
fedora3.img
file to your home directory with this command:gzip < fedora3.img > ~YourUserId/fedora3.img.backup.gz
(Note: Make certain to use the redirection signs "<" and ">" properly in the command!)
- Compare the size of the compressed and original files.
- Start the fedora3 VM.
- Make certain that you are in your fedora VM and not in your Fedora main system!
- Wreck only your fedora 3 system! Try this command inside the fedora3 virtual machine:
rm -rf /*
- Shut down the VM. If you tried to start the Fedora3 VM, it would not boot since all system files have been removed!
- Restore the original image from the backup in your home directory by typing this command:
gunzip < ~YourUserId/fedora3.img.backup.gz > fedora3.img
- Restart the VM. Is it working normally?
- Create compressed backups of your other virtual machines.
- You should make a copy of the xml configuration file in case you "wipe" and re-install the host machine, and want to add a restored VM backups to the virtual machine manager list. We will demonstrate using the fedora 3 xml configuration file, and prove that a "clone" can be added to your list.Please perform the following step:
- Verify that you are in the directory:
/var/lib/libvirt/images/
. - Execute the following command:
virsh dumpxml fedora3 >fedora3.xml
- Examine the file
fedora3.xml
. What does it contain? What format is it in? - Make a copy of
fedora3.xml
calledfedora3a.xml
. - Edit the file
fedora3a.xml
, making the following changes:
- Change the name (in the file, not the file name) to
fedora3a
- Change at least one of the hexadecimal characters in the UUID. Do not change the length of the UUID. Valid hexadecimal characters are 0-9 and a-f.
- Change the name (in the file, not the file name) to
- Issue this command:
virsh define fedora3a.xml
- Issue the command
virsh list --all
and record any changes. - Issue the command:
virsh undefine fedora3a
- List all of the virtual machines again, and note any changes.
- Verify that you are in the directory:
- For the remainder of these labs, it is assumed that you will backup both the images and xml configuration files for all Virtual machines, when asked to backup your virtual machines. It is also highly recommended to backup these files to an external storage device (eg. USB key) in case the host machine gets "wiped" and you need to rebuild your HOST machine and then restore your Virtual Machines...
- Answer this question in your log book:
- In order to fully back up a virtual machine, what information should be saved in addition to the virtual machine image?
Answer the Investigation 6 observations / questions in your lab log book.
Investigation 7: Kickstart Files
When you perform a non-Kickstart installation, the installation program creates a Kickstart file in the /root
directory for reference.
- Obtain the kickstart files for all four of your installations (your disk pack f19host, plus the fedora1, fedora2, and fedora3 virtual machines).
- To prevent confusion, copy your kickstart files to kickstart filenames that describe their purpose (eg. kickstart_host, kickstart_fedora1, kickstart_fedora2, etc...)
- Copy them all to your f19host system (tip: use
scp
), or use the hint in the tip box above to send via e-mail. - Compare these files. What are the differences? Similarities? (Tip: you may want to use tools such as
sdiff
to help with the comparison). - How could you use the kickstart file produced by the installation program to perform additional, identical installations?
Answer the Investigation 7 observations / questions in your lab log book.
Completing the Lab
Arrange evidence for each of these items on your screen, then ask your instructor to review them and sign off on the lab's completion:
- Three working virtual machines created.
- Four kickstart files.
- All virtual machines fully updated.
- All virtual machines backed up.
- Installation comparison table filled in.
- Lab Logbook (lab2) notes filled-in.
Preparing for Quizzes
- What is the name of the Fedora installation program?
- Which factors recorded in your table (above) were due to the type of installation performed, and which factors were due to the amount of software installed?
- Which type of installation works best for confirming compatibility with hardware before installation? Why?
- Which type of installation works best for installing large numbers of computers? Why?
- What factors affect installation time?
- How can you reduce the number of software updates required immediately after installation?
- Why would you enable additional repositories during installation?
- What does the file
/root/anaconda-ks.cfg
contain, and how is it created? - How do you start and stop virtual machines?
- How do you SSH into your virtual machines?
- What is the purpose of and relationship between these pieces of software?
- libvirt
- libvirtd
- virsh
- virt-manager
- virt-install
- kvm
- The kickstart installation (fedora3) was a network installation. Can a kickstart file be used with a DVD installation?
- The kickstart installation (fedora3) was fairly fast. Why? Under what circumstances would it take a long time, even on a fast network?
- What other types of installation sources are possible (besides Live Disc, Installation Disc, and Network?)