Advanced Virtualization Concepts and DevOps

Објавено: June 27, 2023
1. Course Title Advanced Virtualization Concepts and DevOps
2. Code 4ФЕИТ07008
3. Study program 7-NKS, 8-KM-INN, 21-PNMI
4. Organizer of the study program (unit, institute, department) Faculty of Electrical Engineering and Information Technologies
5. Degree (first, second, third cycle) Second cycle
6. Academic year/semester I/1   7.    Number of ECTS credits 6.00
8. Lecturer Dr Daniel Denkovski
9. Course Prerequisites
10. Course Goals (acquired competencies):

Knowledge of the basic concepts and practices in hypervisor- and container-based virtualization, continuous integration and continuous delivery of modern software solutions. Ability to operate, deploy and manage virtualized and containerized environments on server and cloud systems.

11. Course Syllabus:

Basic concepts of virtualization. Classic virtualization techniques using hypervisors. Management of resources and devices in virtual machines. Modern user space (OS-level) virtualization techniques using containers. Advantages and disadvantages of container-based virtualization. Concepts of network function virtualization. Key concepts and practices in the DevOps methodology. Concept of CI/CD (continuous integration and continuous delivery). Principles of continuous software development, integration and deployment. Introduction to CI/CD tools (Git, Docker, Jenkins, Ansible). Repositories, artifacts. MLOps methodology. Lifecycle management of machine learning models throughout all phases: development, operationalization, deployment, monitoring, maintenance and management. Basic practices in using infrastructure in the cloud: Azure, GCP, AWS.

12. Learning methods:

Lectures, independent work on project tasks and preparation of seminar work

13. Total number of course hours 180
14. Distribution of course hours 3 + 3
15. Forms of teaching 15.1 Lectures-theoretical teaching 45 hours
15.2 Exercises (laboratory, practice classes), seminars, teamwork 45 hours
16. Other course activities 16.1 Projects, seminar papers 30 hours
16.2 Individual tasks 30 hours
16.3 Homework and self-learning 30 hours
17. Grading
17.1 Exams 0 points
17.2 Seminar work/project (presentation: written and oral) 50 points
17.3. Activity and participation 0 points
17.4. Final exam 50 points
18. Grading criteria (points) up to 50 points 5 (five) (F)
from 51 to 60 points 6 (six) (E)
from 61 to 70 points 7 (seven) (D)
from 71 to 80 points 8 (eight) (C)
from 81 to 90 points 9 (nine) (B)
from 91 to 100 points 10 (ten) (A)
19. Conditions for acquiring teacher’s signature and for taking final exam Regular attendance on lectures
20. Forms of assessment

Each student must complete a mandatory project assignment. Final exam with a duration of 90 minutes. The final grade is determined based on the total points from the project assignment and the final exam.

21. Language Macedonian and English
22. Method of monitoring of teaching quality Self-evaluation
23. Literature
23.1. Required Literature
No. Author Title Publisher Year
1. N. G. Nguyen, D.-N. Le, J. M. Chatterjee and R. Kumar Cloud Computing and Virtualization Wiley 2018
2. S. M. Jain Linux Containers and Virtualization: A Kernel Perspective Apress 2020
23.2. Additional Literature
No. Author Title Publisher Year
1.  M. Treveil, N. Omont, C. Stenac, K. Lefevre, D. Phan, J. Zentici, A. Lavoillotte, M. Miyazaki and L. Heidmann  Introducing MLOps: How to Scale Machine Learning in the Enterprise  O’Reilly Media  2020
2.  H. Saito, H.-C. C. Lee and K.-J. C. Hsu  Kubernetes Cookbook: Practical Solutions to Container Orchestration  Packt Publishing  2018
3.  Matthew Portnoy  Virtualization Essentials, 2nd Edition  Wiley  2016