Virtual Systems
Academic Year 2026/2027 - Teacher: FABRIZIO MESSINAExpected Learning Outcomes
Knowledge and understanding:
The primary objective of the course is to provide theoretical and practical training in computing system virtualization. The course focuses on the fundamental concepts of virtualization, its applications in modern computing, and its strategic role in optimizing modern computing infrastructures. Furthermore, a significant portion of the course will be dedicated to the use of some of the most widely used virtualization technologies to understand the key operational aspects of virtual computing systems.
Applying knowledge and understanding:
The course focuses on the tools needed to understand the main aspects of virtualization as well as the key differences between hypervisors. The course will provide an understanding of the key aspects of virtual system automation. A final important aspect is understanding the principles of virtualization for implementing high-availability systems.
Students will be able to apply their knowledge of specific tools to configure virtual storage and network connections between virtual machines, as well as apply their knowledge of specific tools for managing the virtual machine lifecycle.
Making judgments: Through the examination of numerous practical examples, students will be able to analyze problems and design and implement solutions that involve the use of virtualization.
Communication skills: Students will acquire the necessary communication skills in using verbal/technical language in the field of virtualization.
Learning skills: The course aims to provide students with the necessary theoretical and practical methodologies to be introduced in professional contexts, such as the ability to design solutions that involve the use of virtualization, as well as the ability to easily acquire further knowledge related to different virtualization or similar technologies.
Course Structure
Classes will be held in person. The instructor will present theoretical and practical content using slides and a whiteboard. Active student participation will be encouraged through questions and discussions.
If the course is taught in a blended or distance learning format, any necessary changes to the previously stated curriculum may be made in order to adhere to the planned program outlined in the syllabus.
Required Prerequisites
Attendance of Lessons
Detailed Course Content
Introduction to virtualization ([1] chapter 1, [2] chapter 1)
what is virtualization ([1] capitolo 1)
Importance of virtualization ([2] chapter 1)
Main applications ([2] chapter 1)
Hypervisor ([1] capitolo 1, [2] chapter)
What is a hypervisor ([2] chapter 2)
Types of hypervisor ([2] chapter 2)
Full virtualization, Para virtualization, hardware assisted virtualization ([1] chapter 1)
Ecosystem QEMU/ KVM, libvirt, oVirt ([2] chapter 1,2,3)
Qemu ([2] chapter 2)
KVM ([2] chapter 1 e chapter 3)
libvirt and oVirt ([2] chapter 3)
Intstallation of KVM and libvirt ([2] chapter 3)
Creating and starting a VM ([2] chapter 3)
Virtual networking ([1] chapter 10, [2] chapter 4)
TAP e TUN devices ([1] chapter 10, [2] chapter 4)
Bridging ([1] chapter 10, [2] chapter 4)
Networking with libvirt ([1] chapter 10, [2] chapter 4)
Open vSwitch ([1] chapter 10, [2] chapter 4)
Virtual storage ([1] chapter 9, [2] chapter 5)
Storage pool ([1] chapter 9, [2] chapter 5)
Nfs ([2] chapter 5)
Iscsi, Storage Area Network (SAN) ([1] chapter 9, [2] chapter 5)
Redudance, multipathing ([2] chapter 5)
Virtual images ([2] chapter 5)
Virtual machines and their lifecycle ([2] chapter 10)
Installaatio and configuration of VMs ([2] chapter 10)
VM migration ([2] chapter 10)
Virtual disks, template, snapshot ([1] chapter 11, [2] chapter 8)
libguestfs ([2] chapter 8)
Template ([2] chapter 8, [1] chapter 11)
virt-builder ([2] chapter 8)
Snapshots ([2] chapter 8, [1] chapter 11)
Automation of virtual ecosystems ([2] chapter 9, [2] chapter 11)
Cloud-init ([2] chapter 9)
Ansible ([2] chapter 11)
[1] Dakic, V., Chirammal, H.D., Mukhedkar, P. and Vettathu, A. "Mastering KVM Virtualization: Design expert data center virtualization solutions with the power of Linux KVM, Second Edition". 2020 ISBN: 978-1838828714
[2] Matthew Portnoy. "Virtualization Essentials. Third edition". 2023. ISBN: 978-1394181568.
[3] Materiale di supporto fornito dal docente, che sara’ pubblicato al seguente link: www.dmi.unict.it/messina
Textbook Information
[1] Dakic, V., Chirammal, H.D., Mukhedkar, P. and Vettathu, A. "Mastering KVM Virtualization: Design expert data center virtualization solutions with the power of Linux KVM, Second Edition". 2020 ISBN: 978-1838828714
[2] Matthew Portnoy. "Virtualization Essentials. Third edition". 2023. ISBN: 978-1394181568.
Course Planning
| Subjects | Text References | |
|---|---|---|
| 1 | introduction to virtualization | Textbooks, teacher's material |
| 2 | Hypervisor | Textbooks, teacher's material |
| 3 | QEMU/ KVM, libvirt and oVirt ecosystem | Textbooks, teacher's material |
| 4 | Virtual networking | Textbooks, teacher's material |
| 5 | Virtual storage | Textbooks, teacher's material |
| 6 | Virtual machines and their life cycle | Textbooks, teacher's material |
| 7 | Management of virtual disks, templates, snapshots | Textbooks, teacher's material |
| 8 | Automation of virtual ecosystems | Textbooks, teacher's material |
Learning Assessment
Learning Assessment Procedures
The exam consists of a written test and a subsequent oral exam.
These tests may be conducted online, if conditions require. The oral exam may be held on the same day as the written test or a few days later.
The exam is designed to thoroughly assess the student's preparation, analytical and reasoning skills on the topics covered during the course, as well as the appropriateness of the technical language used.
The oral exam complements the written test and is integral to determining the final grade. It does not represent an opportunity to increase the student's score, but rather a necessary complement to the overall assessment of the student's preparation.
The final grade will generally be assigned according to the following criteria:
- Not passed: The student has not mastered the basic concepts and is unable to complete the exercises.
- 18-23: The student demonstrates minimal mastery of basic concepts; his/her presentation and connection skills are modest; he/she is able to solve simple exercises.
- 24-27: The student demonstrates good mastery of the course content; his/her presentation and connection skills are good; he/she solves the exercises with few errors.
- 28-30 with honors: The student has mastered all the course content and is able to present it thoroughly and connect it critically; he/she solves the exercises completely and without errors.
Students with disabilities and/or learning disabilities (LD) must contact the instructor, the DMI CInAP representative (Prof. Daniele), and CInAP well in advance of the exam date to communicate their intention to take the exam with appropriate compensatory measures.
Examples of frequently asked questions and / or exercises
Explain the main features of the Qemu/KVM ecosystem.
What is the libvirt library?
Explain the principles of virtualization.
Networking with libvirt. Managing virtual images.