This course will cover the basic concepts of Cloud Computing and Cloud Native thinking. We will study the five components of Cloud. Topics will focus on application and infrastructure scalability, reliability, and security. Commercial and local cloud architectures are examined. An integration of course topics will result in a project employing various cloud computing technologies.
Background: Assumes you have had basic Networking TCP/IP and an introduction to Linux using the command line and writing shell scripts
By the end of this course, students will be able to:
- Explain the five core components of cloud computing
- Use and administer industry standard cloud resources
- Correctly identify cloud native operations and development methodologies
- Build and deploy elastic scaling applications on a cloud platform
- Describe and employ web technologies for software deployment
- Working with command line Cloud Tools
- Describe How to Think Cloud Native
Software Requirements: An AWS account – we will make use of the free-tier.
A GitHub account and creation of a private repo
VirtualBox
A laptop that you own or have control to install needed software for the course
Cloud Computing Technologies - Bachelor's
Illinois Institute of Technology via Coursera
-
148
-
- Write review
Overview
Syllabus
- Module 1: Development of Cloud Computing and Cloud Native Thinking
- Welcome to Cloud Computing Technologies! Module 1 provides an in-depth exploration of the technological advancements and key developments that have shaped the realm of Cloud Computing. Students will delve into the historical context, pivotal innovations, and the significant contributions of industry leaders that have defined the standards and practices of today’s cloud computing landscape. By examining the technical, operational, and strategic aspects, learners will gain a comprehensive understanding of how cloud computing has evolved and its foundational components.
- Module 2: Cloud Native Tooling
- Module 2 is designed to equip students with the essential technical skills needed for setting up, managing, and deploying virtualization solutions and cloud-based environments. Focused on industry-standard practices, students will learn how to navigate and utilize virtualization tools, package managers, version control systems, Integrated Development Environments (IDEs), and cloud services. This module emphasizes practical experience, guiding students through configuring and deploying virtualization layers, managing cloud provider accounts, and leveraging command-line tools for cloud service authentication.
- Module 3: Cloud Native Design Patterns and Principles – I Target Groups
- This module dives deep into the architectural and operational aspects of cloud computing, with a special focus on design patterns, cloud components, and resource management using Amazon Web Services (AWS) as a primary example. Students will gain a thorough understanding of how to articulate cloud design concepts, create and manage cloud resources programmatically, and apply best practices in version control and script-based management. Through practical exercises and demonstrations, learners will become proficient in deploying and removing cloud resources effectively, understanding load balancing mechanisms, and leveraging AWS for scalable and resilient cloud architectures.
- Module 4: Cloud Native Design Patterns and Principles – II Autoscaling Groups
- This module offers a comprehensive exploration of Autoscaling within cloud computing, focusing on the principles and practical applications of scaling infrastructure dynamically in response to application demand. Through a detailed examination of Autoscaling mechanisms, particularly within the context of Amazon Web Services (AWS), students will learn how to design, implement, and manage scalable cloud-native solutions efficiently. This module covers the conceptual underpinnings of Autoscaling, the strategic use of Launch Templates versus traditional EC2 commands, and the operational practices for managing the lifecycle of instances within Autoscaling Groups.
- Module 5: Cloud Native Storage Patterns and Principles
- This module introduces students to the fundamental concepts of storage in cloud computing, focusing on the three primary types of storage: Object, Block, and File storage. It provides a detailed examination of the differences between these storage types and their suitable applications. Special emphasis is given to Object storage, its design alignment with cloud computing paradigms, and its implementation through Amazon S3. Students will explore the security considerations, performance issues, and practical applications of each storage type. The module aims to equip students with the knowledge to make informed decisions about storage solutions in cloud environments and to implement these solutions effectively.
- Module 6: Cloud Native Database Patterns and Principles
- This module delves into the intricacies of database management within the cloud environment, contrasting traditional relational databases with cloud-native solutions. Students will explore the operational dynamics, advantages, and disadvantages of relational databases in the cloud, and examine the innovative features and security benefits of cloud-native databases. This module will cover hosted database services, the economic implications of adopting cloud-native databases, and the crucial role of secret management in securing database access. Through practical demonstrations, students will gain hands-on experience with a Cloud Platform Secrets Manager and learn the processes for database backups and restoration in the cloud. This module aims to provide a comprehensive understanding of database choices in the cloud and best practices for security and cost management.
- Module 7: Cloud Native Orchestration Patterns and Principles
- This module explores the foundational concepts and practical applications of Infrastructure as Code (IaC) in cloud computing, with a focus on declarative and imperative languages used for deploying cloud infrastructure. Students will gain an understanding of the nuances between these two approaches and their applicability in different scenarios of cloud infrastructure management. The course will also address the security considerations associated with creating custom Amazon Machine Images (AMIs), the intricacies of interacting with application source code, and the deployment, configuration, and management of AWS environments using Terraform. Additionally, it will guide students through the process of converting existing infrastructure to be managed by Terraform, emphasizing best practices for efficiency, security, and scalability.
- Module 8: Business, Compute, and Realization models of Cloud Computing
- This comprehensive module explores the various models of cloud computing, their application across different industries, and the underlying components that define them. Students will learn to differentiate between the main models of cloud computing and understand how these models can be applied to meet the unique needs of different sectors. This module will also delve into the standard definition of cloud computing, outline the three traditional service levels, and discuss the evolution of cloud models from their inception to future projections. Additionally, it will cover the three basic cloud-native design patterns and contrast them with legacy design patterns, providing students with a holistic view of cloud architecture and its practical implications.
- Summative Course Assessment
- This module contains the summative course assessment that has been designed to evaluate your understanding of the course material and assess your ability to apply the knowledge you have acquired throughout the course.
Taught by
Marwan Omar