Course Instructor :
Dr. Preethi Sheba Hepsiba, Associate Professor
Department of CSE
Contact : 9008005933
Cabin : 4th Floor staff room, Cabin 11
Email : preethisheba.h@cmrit.ac.in
LinkedIn: https://www.linkedin.com/in/preethihepsiba/
Site: https://sites.google.com/a/cmrit.ac.in/preethi-sheba-hepsiba
Course Learning Objectives
CLO 1 Introduce the rationale behind the cloud computing revolution and the business drivers
CLO 2 Understand various models, types and challenges of cloud computing
CLO 3 Understand the design of cloud native applications, the necessary tools and the design tradeoffs
CLO 4 Realize the importance of Cloud Virtualization, Abstraction`s, Enabling Technologies and cloud security
Module-1
Distributed System Models and Enabling Technologies: Scalable Computing Over the Internet, Technologies for Network Based Systems, System Models for Distributed and Cloud Computing, Software Environments for Distributed Systems and Clouds, Performance, Security and Energy Efficiency.
Textbook 1: Chapter 1: 1.1 to 1.5
Module-2
Virtual Machines and Virtualization of Clusters and Data Centers: Implementation Levels of Virtualization, Virtualization Structure/Tools and Mechanisms, Virtualization of CPU/Memory and I/O devices, Virtual Clusters and Resource Management, Virtualization for Data Center Automation.
Textbook 1: Chapter 3: 3.1 to 3.5
Module-3
Cloud Platform Architecture over Virtualized Datacenters: Cloud Computing and Service Models, Data Center Design and Interconnection Networks, Architectural Design of Compute and Storage Clouds, Public Cloud Platforms: GAE, AWS and Azure, Inter-Cloud Resource Management.
Textbook 1: Chapter 4: 4.1 to 4.5
Module-4
Cloud Security: Top concern for cloud users, Risks, Privacy Impact Assessment, Cloud Data Encryption, Security of Database Services, OS security, VM Security, Security Risks Posed by Shared Images and Management OS, XOAR, A Trusted Hypervisor, Mobile Devices and Cloud Security
Cloud Security and Trust Management: Cloud Security Defense Strategies, Distributed Intrusion/Anomaly Detection, Data and Software Protection Techniques, Reputation-Guided Protection of Data Centers.
Textbook 2: Chapter 11: 11.1 to 11.3, 11.5 to 11.8, 11.10 to 11.14
Textbook 1: Chapter 4: 4.6
Module-5
Cloud Programming and Software Environments:
Features of Cloud and Grid Platforms, Parallel and Distributed Computing Paradigms, Programming Support for Google App Engine, Programming on Amazon AWS and Microsoft, Emerging Cloud Software Environments.
Textbook 1: Chapter 6: 6.1 to 6.5
Sl.NO Experiments
1 Creating a Virtual Machine: Configure and deploy a virtual machine with specific CPU and memory requirements in Google Cloud.
OR
Exploring AWS CloudShell and the AWS Cloud9 IDE
2 Getting Started with Cloud Shell and gcloud: Discover the use of gcloud commands to manage Google Cloud resources from Cloud Shell.
OR
Working with Amazon S3Orchestrating Serverless Functions with AWS Step Functions
3 Cloud Functions: Create and deploy a Cloud Function to automate a specific task based on a Cloud Storage event.
OR
Working with Amazon DynamoDB
4 App Engine: Deploy a web application on App Engine with automatic scaling enabled. OR
Developing REST APIs with Amazon API Gateway
5 Cloud Storage: Qwikstart: Google Cloud Storage provides scalable and secure object storage for managing data, accessible via the Cloud Console or gsutil CLI.
OR
Creating Lambda Functions Using the AWS SDK for Python
6 Cloud SQL for MySQL: Discover how Google Cloud SQL for MySQL provide automated management and high availability for MySQL databases?
OR
Migrating a Web Application to Docker Containers
7 Cloud Pub/Sub: Experiment how Google Cloud Pub/Sub facilitate real-time messaging and communication between distributed applications.
OR
Caching Application Data with ElastiCache, Caching with Amazon CloudFronT, Caching Strategies
8 Multiple VPC Networks: Explore benefits of using multiple VPC networks in Google Cloud for organizing and isolating resources.
OR
Implementing CloudFront for Caching and Application Security
9 Cloud Monitoring: Discover how Cloud Monitoring help in tracking and analyzing the performance and health of cloud resources?
OR
Orchestrating Serverless Functions with AWS Step Functions
10 Kubernetes Engine: Qwik Start: Deploy a containerized application to a Kubernetes Engine cluster.
OR
Automating Application Deployment Using a CI/CD Pipeline
Complex Experiments (Not for CIE)
1. Create and Manage Cloud Resources: Challenge Lab: In this lab, Students will use the Google Cloud Console and the gcloud command-line tool to create and manage various cloud resources. Start by provisioning virtual machines with specific configurations, such as CPU and memory requirements, and setting up storage
buckets for data persistence. Students also manage IAM roles to control access to these resources, ensuring that only authorized users can perform actions. The lab emphasizes the importance of understanding the relationships between different Google Cloud services and how to configure them to work together effectively. Successful completion requires a careful approach to resource management, including monitoring, security settings, and cost optimization.
2. Set Up an App Dev Environment on Google Cloud: Challenge Lab: This lab focuses
on setting up a complete development environment on Google Cloud, starting with configuring Cloud Shell and installing the necessary development tools. Students work with Cloud SDK and other programming languages or frameworks required for
your application. After setting up the environment, Deploy a sample application to test the configuration and ensure that the environment is fully functional. This lab highlights the importance of creating a robust and scalable environment that can support continuous development and deployment processes. Additionally, you must ensure that the environment is optimized for performance and ready to handle real-world application
development and testing on Google Cloud.
At the end of the course, the student will be able to:
1. Describe various cloud computing platforms and service providers.
2. Illustrate the significance of various types of virtualization.
3. Identify the architecture, delivery models and industrial platforms for cloud computing based applications.
4. Analyze the role of security aspects in cloud computing
5. Demonstrate cloud applications in various fields using suitable cloud platforms.
Resources:
Suggested Learning Resources:
Text Books:
1. Kai Hwang, Geoffrey C Fox, and Jack J Dongarra, Distributed and Cloud Computing, Morgan Kaufmann, Elsevier 2012
2. Dan C. Marinescu, Cloud Computing Theory and Practice, Morgan Kaufmann, 2nd Edition, Elsevier 2018
3. Google Cloud Teaching Resources – LMS [for practical component]
4. AWS Cloud Developing – AWS Academy Courses [for practical component]
Reference Books:
1. Rajkumar Buyya, Christian Vecchiola, and Thamrai Selvi, Mastering Cloud Computing McGrawHill Education, 1st Edition, 2017
2. Toby Velte, Anthony Velte, Cloud Computing: A Practical Approach, McGraw-Hill Education, 2017.
3. George Reese, Cloud Application Architectures: Building Applications and Infrastructure in the Cloud, O'Reilly Publication, 1st Edition, 2009
4. John Rhoton, Cloud Computing Explained: Implementation Handbook for Enterprises, Recursive Press, 2nd Edition, 2009.
Assessment Details (both CIE and SEE)
The weightage of Continuous Internal Evaluation (CIE) is 50% and for Semester End Exam (SEE) is 50%. The minimum passing mark for the CIE is 40% of the maximum marks (20 marks out of 50) and for the SEE minimum passing mark is 35% of the maximum marks (18 out of 50 marks). A student shall be deemed to have satisfied the academic requirements and earned the credits allotted to each subject/ course if the student secures a minimum of 40% (40 marks out of 100) in the sum total of the CIE (Continuous Internal Evaluation) and SEE (Semester End Examination) taken together.
CIE for the theory component of the IPCC (maximum marks 50)
● IPCC means practical portion integrated with the theory of the course.
● CIE marks for the theory component are 25 marks and that for the practical component is 25 marks.
● 25 marks for the theory component are split into 15 marks for two Internal Assessment Tests (Two Tests, each of 15 Marks with 01-hour duration, are to be conducted) and 10 marks for other assessment methods mentioned in 22OB4.2. The first test at the end of 40-50% coverage of the syllabus and the second test after covering 85-90% of the syllabus.
● Scaled-down marks of the sum of two tests and other assessment methods will be CIE marks for the theory component of IPCC (that is for 25 marks).
● The student has to secure 40% of 25 marks to qualify in the CIE of the theory component of IPCC.
CIE for the practical component of the IPCC
● 15 marks for the conduction of the experiment and preparation of laboratory record, and 10 marks for the test to be conducted after the completion of all the laboratory sessions.
● On completion of every experiment/program in the laboratory, the students shall be evaluated including viva-voce and marks shall be awarded on the same day.
● The CIE marks awarded in the case of the Practical component shall be based on the continuous evaluation of the laboratory report. Each experiment report can be evaluated for 10 marks. Marks of all experiments’ write-ups are added and scaled down to 15 marks.
● The laboratory test (duration 02/03 hours) after completion of all the experiments
shall be conducted for 50 marks and scaled down to 10 marks.
● Scaled-down marks of write-up evaluations and tests added will be CIE marks for the laboratory component of IPCC for 25 marks.
● The student has to secure 40% of 25 marks to qualify in the CIE of the practical component of the IPCC.
SEE for IPCC
Theory SEE will be conducted by University as per the scheduled timetable, with common question papers for the course (duration 03 hours)
1. The question paper will have ten questions. Each question is set for 20 marks.
2. There will be 2 questions from each module. Each of the two questions under a module (with a maximum of 3 sub-questions), should have a mix of topics under that module.
3. The students have to answer 5 full questions, selecting one full question from each module.
4. Marks scored by the student shall be proportionally scaled down to 50 Marks
5. The theory portion of the IPCC shall be for both CIE and SEE, whereas the practical portion will have a CIE component only. Questions mentioned in the SEE paper may include questions from the practical component.