This note provides an overview of the key topics covered in the Cloud Systems course (COMPSCI4106/5118) that are relevant for the exam. The exam has a 50% weight of the overall grade and covers both parts of the course evenly.
Exam Format
- Weight: 50% of the overall grade
- Structure: Four questions, 10 marks each
- Two questions on Part 1 (Cloud Resource Management)
- Two questions on Part 2 (Scalable and Sustainable Architectures)
- Question Types: Mix of long-form answers and MCQ-style questions
- Duration: 60 minutes for 40 marks
Part 1: Cloud Resource Management
Chapter 1: Introduction to Cloud Computing
- NIST Definition and its Dimensions
- Five essential characteristics
- Three service models
- Four deployment models
- Virtualization Terminology and Categories
- Process virtualization
- OS-level virtualization
- System virtualization
- Differences between categories
Chapter 2: Virtual Machines
- Categories of Instructions and Virtualizability
- Privileged vs. sensitive instructions
- Popek and Goldberg’s theorem
- Critical instructions in x86
- Full Virtualization (Binary Translation)
- How binary translation works
- Shadow page tables
- Memory management in virtualization
- OS-Assisted Virtualization
- Xen architecture (domains)
- CPU virtualization in Xen
- Memory management in Xen
- Hardware-Assisted Virtualization
- CPU virtualization extensions
- Memory virtualization extensions
- Tagged Translation Lookaside Buffer
Chapter 3: Containers and Container Management
- Linux Kernel Containment Features
- chroot system call
- namespaces (PID, network, mount, etc.)
- cgroups (Control Groups)
- capabilities
- Docker
- Images and Dockerfiles
- Container instances
- Docker architecture and components
- Containers vs. VMs
- Performance differences (CPU, memory, network, I/O)
- Image size and boot time
- Isolation and security considerations
- Container Orchestration
- Kubernetes architecture
- Pods, deployments, services
- Horizontal Pod Autoscaler
Chapter 4: Cloud Infrastructure Management
- Challenges in Cloud Infrastructure
- Server sprawl
- Configuration drift
- Snowflake servers
- Cloud Operating Systems
- OpenStack components
- Virtual networking
- Software-Defined Networking (SDN)
- VM Management
- VM snapshots
- VM migration (cold, warm, live)
- Live migration process in Xen
- Infrastructure-as-Code and CI/CD
- Infrastructure definition files
- Ansible architecture and concepts
- Continuous delivery vs. continuous deployment
- Deployment strategies (blue/green, canary)
Chapter 5: Cloud Sustainability
- Emissions Lifecycle
- Embodied emissions
- Operational emissions
- End-of-life emissions
- Energy Efficiency and Proportionality
- Static vs. dynamic power consumption
- Energy-proportional computing
- Koomey’s Law and trends
- Power Usage Effectiveness (PUE)
- Definition and calculation
- Industry trends and benchmarks
- Limitations of PUE
- Carbon Footprint Measurement
- Greenhouse Gas Protocol scopes
- Estimation methodologies
- Cloud Carbon Footprint (CCF)
- Carbon-Aware Computing
- Time-shifting workloads
- Location-shifting workloads
- Carbon intensity signals
Part 2: Scalable and Sustainable Architectures
Chapter 6: Cloud System Design
- Distributed Systems Concepts
- Fallacies of distributed computing
- Key aspects of distributed systems
- Failures, errors, faults, and QoS
- Quality Attributes
- Dependability
- Availability
- Reliability
- High Availability
- Fault tolerance
- Error detection
- Failover strategies (active-active, active-passive)
Chapter 7: Modern Cloud Architectures
- Architectural Approaches
- Layering and tiering
- Redundancy by replication
- Cloud Scaling
- Stateless scaling (load balancing)
- Stateful scaling (partitioning)
- Horizontal vs. vertical scaling
- Advanced Architectures
- Microservices
- Service Mesh Technologies (SMTs)
- Cloud-native technologies
- API Gateways
Chapter 8: Flavours of Cloud
- Provisioning Levels
- Infrastructure as a Service (IaaS)
- Platform as a Service (PaaS)
- Software as a Service (SaaS)
- Function as a Service (FaaS)
- Deployment Models
- Public, private, community, hybrid clouds
- Considerations for choosing models
- Cross-Cloud Computing
- Hybrid clouds
- Federated clouds
- Multi-clouds
- Meta-clouds
- Computing Continuum
- Edge computing vs. fog computing
- Support roles in the continuum
- Comparison of fog/edge with cloud
Chapter 9: A Wider Lens on Sustainability
- Designing Dependable Data Centres
- Hardware redundancy
- Network redundancy
- Power redundancy
- Cooling redundancy
- Carbon Footprint Measurement Frameworks
- GHG Protocol
- Real-time vs. historical approaches
- Life Cycle Assessment (LCA)
- Measurement Granularities
- Software-level
- Server-level
- Rack-level
- Data center-level
- Network-level
- Carbon Intensity
- Definition and regional variations
- Average vs. marginal intensity
- Carbon intensity signals
- Carbon-Aware Decision Making
- Vendor decisions
- User decisions
- Instance type selection
Exam Preparation Tips
-
Focus on Understanding Concepts:
- Rather than memorizing details, ensure you understand core concepts and can explain them
- Be prepared to apply concepts to different scenarios
-
Practice Explanation and Justification:
- Many questions will ask you to explain your reasoning
- Practice articulating clear, concise explanations
-
Review Example Questions:
- Look at the example questions provided in lecture materials
- Practice answering similar questions within the word limits
-
Connect Related Concepts:
- Understand how different topics relate to each other
- Be prepared to discuss trade-offs between different approaches
-
Terminology:
- Ensure you’re familiar with the correct terminology
- Be able to define key terms and concepts
-
MCQ Strategy:
- For MCQ questions, you’ll need to both select the right answer and explain your choice
- Practice justifying answers in one concise sentence