2.2 Virtualization and Cloud Computing Concepts
Cloud Models
IaaS = infrastructure as a service - you will be managing the system, data security, software installation - cloud service only provides the hardware for you
SaaS = software as a service - on demand software you simply login and use - no need to maintain the application or installation
PaaS = platform as a service - no servers, no software, no maintenance - usually hosted with a third party, they give you the building blocks
XaaS = anything as a service - any type of sevice provided in cloud - pay for what you're using


Edge and Fog Computing
Edge computing = practice of processing data as close as possible to the location where it is generated or needed - it pushes computational resources and data storage closer to the "edge" of the network, which can be IoT devices, sensors, or user devices. - no latency, no network requirement - increased speed and performance, process where the data is, instead of processing in the cloud - by processing data locally, it minimizes the delay caused by sending data to a centralized data center or cloud server - used in systems where log latency is crucial
Fog computing = an extension of edge computing that adds a layer of computing resources and intelligence between edge devices and centralized cloud data centers. The "fog" represents the intermediate layer - edge devices send data to nearby fog nodes, which can be gateways or small data centers - preprocess data, perform analytics, and make decisions locally - filter and process data before forwarding relevant information to the cloud
Designing the Cloud
Virtualization = running many different operating systems on the same hardware - each application instance has its own operating system - adds overhead and complexity
Application containerization container = contains everything you need to run an application - isolated process in a sandbox - lightweight, uses the host kernel - secure separation between applications

Monolithic application = each component and its associated components must all be present for code to be executed or compiled and for the software to run - multiple components are combined into one large application - application contains all decision making process like user interface, busines logic, data input/output
Microservice architecture = uses APIs which breaks down one single service into many different microservices - scalable, resilient, higher security
Serverless architecture = an approach to software that allows developers to build and run services without having to manage the underlying infrastructure - applications are separated into individual, autonomous functions - removes the operating system from the equation
Transit gateway = router in cloud which connects multiple VPCs (virtual private cloud) together
Infrastructure as Code
IaC is an approach to managing and provisioning computing infrastructure through code and automation scripts, rather than manual configurations. e.g. Terraform, AWS CloudFormation
Software defined networks = innovative approach to network management that uses software-based controllers or application programming interfaces (APIs) to communicate with the underlying hardware infrastructure and direct traffic on the network. - SDN separates the control plane (manages traffic) from the data plane (forwards traffic), enabling dynamic and programmable network management
Last updated
Was this helpful?