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 |