Course title, code: Cloud based Services, GAINBAN-FELHALSZ-1

Name and type of the study programme: Computer science engineering, BSc
Curriculum: 2021
Number of classes per week (lectures+seminars+labs): 2+0+2
Credits: 5
Theory: 50 %
Practice: 50 %
Recommended semester: 5
Study mode: full-time
Prerequisites: 100 cr
Evaluation type: term mark
Course category: required optional
Language: english
Responsible instructor: Dr. Kovács Tamás
Responsible department: Department of Information Technologies
Instructor(s): Kurucz Bence
Course objectives:
Students will learn the purpose and basic concepts of cloud-based services. Using Amazon Web Services, they will be able to create basic and, in some cases, advanced services.
Course content - lectures:

(1) From rented servers to cloud-based solutions. (2) Cloud ecosystem. (3-4) Structure of internal networks in data centers. (5) Resource virtualization techniques. (6) Secure data storage in the cloud. (7) Basic security challenges in the cloud. (8) Introduction to Docker (9) Basics of overlayfs (10) Comparison between virtual machines and docker (11) Security risks (12) Other container techniques (13) Midterm exam


Course content - labs:

(1) Creating and configuring EC2 instances. (2) Configuring operating systems via SSH protocol. (3) Installing and configuring applications in the EC2 service. (4) Creating AMI (binary backup), data security. (5) Creating AutoScalingGroups and Load Balancers for improved user experience. (6) Creating and configuring RDS (MYSQL) database service. (7) Configuring VPC services. (8) Security challenges in the cloud. (9) Installing and configuring Docker environments. (10) Deploying applications in Docker containers. (11) Creating application-running containers using Dockerfiles. (12) Starting containers using native and compose methods. (13) Security challenges of containers and Dockerfiles.

Acquired competences:
Knowledge:

- His/her English language skills will be sufficient for the level of training, and to understand English-language literature, to process professional texts, to carry out professional tasks, as well as for continuous professional development. - Knowledge of the principles and methods of natural sciences (mathematics, physics, other natural sciences) relevant to the field of IT. - He/she knows the operations of hardware and software elements, the technology of their implementation, how to solve problems related to their operation and the possibilities of the interconnection of IT and other technical systems. - He/she posesses a basic knowledge and engineering approach to signal processing, modelling, simulation and control of systems and networks. - He/she is familiar with the important software development methodologies, and the notation systems for IT designs and documentation. - He/she has basic data security skills. - He knows the vocabulary and special terms of the engineering profession in the Hungarian and English languages at least on the basic level.

Skills:

- He/she uses the principles and methods of natural sciences (mathematics, physics, other natural sciences) relevant to the field of information technology in his/her engineering work for the design of information systems. - Using the knowledge gained from his/her studies, he/she will be able to install and configure computer and telecommunications networks, troubleshoot network faults, operate and upgrade networks. - He/she is able to develop applications, program client-server and WEB, mobile operating systems, develop multiplatform systems. - He/she is able to develop enterprise information systems and implement previous developments. - He/she is abile to specify and implement embedded systems using the knowledge gained from his/her studies. He/she can apply his/her knowledge acquired during his/her study to acquire deeper knowledge in the field of information engineering and to process special literature and solve problems related to information technology. - He/she is able to fulfill analytical, specification, planning, development and operation tasks, in addition, he/she applies the development methodology, debugging, testing and quality assurance methods in his/her field. - He/she cooperates with other computer science engineers, electrical engineers during team work, and with other experts during the analysis and solution of a problems. - He/she can communicate in Hungarian and in English about professional issues, he/she uses the terms of information technology in a creative way. - He/she constantly improves his/her knowledge and keeps up with the development of the computer engineering profession.

Attitude:

- He/she genuinely represents the professional principles of engineering and information technology fields. - He/she aims to see through the entire engineering system not only his/her own field. - He/she is open to acquire new methods, programming languages and develop skills to use them. - He/she is open to get to know other fields which employ information technology tools, and open to work out information technology soultions in cooperation with the experts of other areas. - He/she makes decisions with full respect for the law and ethical standards in decision-making situations requiring a complex approach. - He/she understands and embraces the ethical principles and legal implications of his/her profession. - He/she makes an effort to work efficiently and to high standards. - He/she keeps in mind and ensures the security of his/her employees' and customers' data and information.

Autonomy and responsibilities:

- He/she feels responsible for IT systems analysis, development and operation, both individually and as part of a team. - He/she reveals the weaknesses of the technologies applied, risks of processes and initiates measures which reduce them. - He/she has a security-conscious attitude in posession of his/her professional knowledge, and is aware of potential threats and opportunities for attack, as well as is prepared to prevent them.

Additional professional competences:


Requirements, evaluation, grading:
Mid-term study requirements:
Visiting the classes, reviewing and supplementing what was heard at home based on the literature recommended in the class. Solving the tasks assigned by the internship supervisor. Students can earn points by solving the tasks given during the sessions and the tasks given at the end of the training. The resulting total score determines the practical grade.
Exam requirements:

Study aids, laboratory background:

Compulsory readings:

[1] Dan C. Marinescu: Cloud Computing: Theory and Practice, Morgan Kaufmann, 2022, ISBN: 0323852777 [2] Thomas Erl, Eric Monroy: Cloud Computing: Concepts, Technology, Security, and Architecture, Pearson, 2023, ISBN: 0138052255 [3] Nayan B. Ruparelia: Cloud Computing, Revised And Updated Edition, MIT Press, 2023, ISBN: 9780262546478

Recommended readings:

[1] Amazon Web Service – Getting Started / User Guides (minden szolgáltatáshoz) E-bookshttp://www.amazon.com/Amazon-Web-Services/e/B007R6MVQ6/ref=dp_byline_cont_ebooks_1 [2] Cloud Computing: Principles and Paradigms (Rajkumar Buyya, James Broberg, Andrzej M. Goscinski) [3] Bálint Farkas, Gábor Kovács, István Király, Attila Turóczy, Tibor Kőnig, Attila Érsek, Mátyás Safranka, Dávid Fülöp, Krisztián Pellek, Balázs Kiss: Windows Azure step by step, JEDLIK EDUCATIONAL STUDIO, Budapest, 2013, ISBN: 978 -615-5012-21-1