This note contains a collection of weekly quizzes from the Cloud Systems course, organized by topic. These self-assessment questions are useful for checking your understanding and preparing for the exam.
Week 1: Cloud Computing Introduction
-
Which statement correctly differentiates between clusters, clouds, and grids?
- ✓ Clusters locally connect computers to form a single system, grids integrate widely distributed systems for common tasks, and clouds offer scalable computing resources as a service.
- ✗ Clusters use loosely connected computers that are used together to solve large problems, while grids consist of computers connected in a high-performance local network, and clouds provide on-demand resources over the Internet.
- ✗ Clouds provide centralized resources on top of grid computing infrastructure, with better scalability than clusters.
-
Which correctly matches the cloud service model with its primary function?
- ✗ IaaS: Provides a framework for application components and development tools for coding.
- ✗ PaaS: Offers virtual machines, storage, and networking resources for full user control.
- ✓ SaaS: Delivers complete software solutions accessible via the Internet (e.g., as Web applications).
-
Which is NOT one of the five essential characteristics of cloud computing as defined by NIST?
- ✗ On-Demand Self-Service
- ✗ Broad Network Access
- ✓ High Availability (guaranteed uptime and limited service interruptions)
- ✗ Resource Pooling
- ✗ Rapid Elasticity
-
Which best describes virtualization?
- ✗ Virtualization is the creation of simulated environments that fully replace physical hardware.
- ✓ Virtualization allows multiple virtual instances to run on a single physical hardware resource, abstracting and sharing resources.
- ✗ Virtualization refers to using cloud-based services to dynamically allocate physical servers to customers.
-
Which statement correctly describes the use cases of VMs versus containers?
- ✓ VMs allow running applications requiring a different operating system, while containers are more suitable for shipping software components with their dependencies.
- ✗ VMs provide faster startup times and are ideal for high-performance applications, while containers are ideal only for stateless applications.
- ✗ It is typically possible to both run more VM instances and to store more VM images than container instances and images on the same physical host machine.
Week 2: System Virtualization
-
Which statement correctly differentiates between Type 1 and Type 2 hypervisors?
- ✓ Type 1 hypervisors run on bare-metal hardware, minimizing overhead (ideal for clouds), whereas Type 2 hypervisors run on top of an operating system, enabling virtualization on personal computing environments.
- ✗ Both Type 1 and Type 2 hypervisors run directly on hardware, but Type 2 hypervisors have more complex architectures, making them less efficient.
- ✗ Type 2 hypervisors run on top of a host operating system, ideal for running containerized applications, whereas Type 1 hypervisors run directly on bare-metal hardware, ideal for running virtual machines.
-
Which computing resources are typically virtualized to allow multiple VMs to operate on a single physical host?
- ✗ Only CPUs and memory are virtualized, as network and storage devices cannot be shared.
- ✓ Access to CPUs, memory, I/O devices, and storage devices all need to be managed to create isolated environments for VMs on a shared host system.
- ✗ Typically, only specific CPU instructions need to be virtualized, as memory, I/O devices, and storage devices are accessed through instructions.
-
Which statement accurately describes Popek and Goldberg’s theorem for efficient virtualization and its implications for x86 processors?
- ✗ The theorem states that efficient virtualization can only be achieved if there are no sensitive instructions.
- ✓ The theorem requires that all privileged and sensitive instructions trap to the hypervisor when executed in user mode. x86 processors did not meet this requirement, requiring binary re-writing.
- ✗ The theorem specifies that all privileged instructions can only execute in kernel mode, and x86 processors implement this by using two of four rings.
-
In the context of full virtualization, what is true for shadow page tables?
- ✓ Shadow page tables, which map virtual memory addresses as used by the guest OS directly to the actual physical memory of the host, are maintained by the hypervisor and used by hardware.
- ✗ Shadow page tables are maintained by the guest operating system, so it can manage and use physical memory without hypervisor involvement.
- ✗ Shadow page tables copy the memory address translation entries of guest operating systems to make VMs fault-tolerant and easy-to-migrate.
-
In Xen, how is I/O virtualized to allow guest VMs isolated access to physical devices?
- ✗ Each guest VM includes its own device drivers, which communicate directly with the physical hardware.
- ✗ In Xen, all device drivers are installed in the hypervisor, which provides virtual devices.
- ✓ Xen uses a split-driver model where lightweight virtual device drivers in guest VMs communicate with Xen through hypercalls and events, and Xen, in turn, uses the actual physical device drivers in the privileged domain (Dom0).
Week 3: Containers
-
Which Linux kernel feature is NOT used for OS-level virtualization?
- ✗ chroot, which restricts a process’s file system access to a specific directory.
- ✗ namespaces, which limits access to system resources such as network devices, mount points, and processes.
- ✓ cron, which schedules recurring tasks at specific times or intervals.
- ✗ cgroups, which limit access to compute resources such as CPU and memory.
-
Which is NOT a feature that Docker provides on top of a container library?
- ✗ Image distribution – Docker provides tools to pull and push container images from and to public/private registries using a hierarchical image format.
- ✗ Build tools – Docker includes tooling to create images from textual descriptions that modify a base image.
- ✗ Orchestration – Docker facilitates basic orchestration (e.g., via docker-compose) of multi-container applications.
- ✓ Fault tolerance and auto-scaling – Docker automatically restarts and replicates containers as required.
-
When comparing the performance overhead of VMs and containers, which statement is true?
- ✗ Since containers share the same operating system kernel, while VMs include their own guest operating system, containers have a higher CPU overhead.
- ✓ Using hardware devices through virtual devices and virtual device drivers can lead to higher latencies and latency variations in VMs.
- ✗ Containers typically experience lower throughput for sequential memory operations than VMs due to the lack of direct access to hardware resources.
- ✗ A set of similar VMs on one host has a smaller disk footprint than several similar container images because VM images are hierarchical, and layers can be shared among similar VMs.
-
Which is NOT an advantage of microservice architectures?
- ✗ Microservices enable independent deployment and scaling of services.
- ✗ Microservices can improve resilience by isolating failures within individual services.
- ✗ Microservices allow flexibility in choosing different technologies for different components.
- ✓ Microservices increase cluster resource utilization by running more services simultaneously.
-
Which statement is true for features of Kubernetes?
- ✗ Using a load balancer in Kubernetes spreads the containers of a pod over different nodes.
- ✓ Kubernetes probes nodes and pods in a configurable interval, noticing failures with a delay as large as the interval.
- ✗ Kubernetes’ horizontal pod autoscaler will optimize the CPU limit of containers in a pod towards a user-provided CPU utilization target.
- ✗ The Kubernetes scheduler prioritizes CPU utilization over memory and disk utilization.
Week 4: Cloud Infrastructure Management
-
Why do cloud operating systems like OpenStack NOT typically use different physical hosts for different host roles?
- ✗ To ensure fault tolerance by isolating critical services so that failure in one component does not affect other components.
- ✓ To reduce costs by spreading out storage, compute, and networking across clusters.
- ✗ To prevent interference between guest VMs on compute and the systems controllers on the controller hosts.
- ✗ To enable the use of specialized hardware for different functions.
-
Which statement on virtual networking is NOT correct?
- ✗ Virtual switches allow VMs on the same host to communicate, functioning similarly to physical network switches.
- ✓ Virtual Network Functions (VNFs) refer to software-based network appliances like firewalls, load balancers, and routers running on physical infrastructure to perform traditional networking tasks.
- ✗ Virtual networks are logically isolated network environments created in virtualized environments.
- ✗ Software-Defined Networks (SDNs) revolve around the programmability of network configurations.
-
Which is NOT a correct step or feature of live VM migration in Xen?
- ✗ Xen uses an iterative pre-copy strategy to migrate memory pages, with the last dirty pages being transferred after the VM is paused.
- ✗ Xen sends unsolicited ARP requests to invalidate IP-to-MAC mappings, allowing the destination VM to respond to new ARP requests.
- ✗ Xen utilizes network migration and remote virtual storage to ensure continuous access to volumes after.
- ✓ Xen synchronizes the source and destination VMs by executing the same CPU instructions in real time during live migration.
-
Which issue is NOT effectively addressed by adopting the Infrastructure-as-Code paradigm?
- ✗ Configuration drift: IaC can help avoid undocumented inconsistencies in configuration.
- ✗ Server sprawl: IaC can effectively address the uncontrolled creation and proliferation of redundant servers.
- ✓ Resource underprovisioning: IaC can mitigate resource bottlenecks by adequately scaling the infrastructure for the code.
- ✗ Snowflake servers: IaC can help eliminate unique, difficult-to-replicate servers.
-
Which type of testing is NOT commonly performed during canary deployments?
- ✗ Traffic Analysis: Monitoring user behavior, latency, and error rates of the new deployment under real-world traffic.
- ✗ Performance Monitoring: Measuring system responsiveness, resource utilization, and throughput during the partial release.
- ✗ A/B Testing: Comparing the canary version’s performance and user engagement metrics side-by-side against the previous version’s metrics.
- ✓ Chaos Testing: Randomly introducing controlled failures to the system to evaluate the new deployment’s resiliency.
Week 5: Cloud Sustainability
-
Which is NOT a correct category of computer system lifecycle emissions?
- ✗ Embodied emissions: emissions from the production and manufacturing of hardware.
- ✗ Operational emissions: emissions during the use of computer systems.
- ✗ End-of-life emissions: emissions from the disposal and recycling of hardware.
- ✓ Development emissions: emissions from design, development, and testing of software.
-
Which statement is NOT true for the power consumption of computing hardware?
- ✗ CPUs typically have a larger dynamic range than RAM, disks, and network interfaces.
- ✗ A low server utilization usually correlates with low energy efficiency.
- ✓ As the peak performance increases from one server generation to the next, it becomes more and more important to utilize server hardware well for energy-proportional computing.
- ✗ The dynamic power consumption of wired networks is so limited that this is often neglected in carbon footprint assessment.
-
Which statement about Power Usage Effectiveness (PUE) is NOT true?
- ✗ Most of the facility power taken into account for PUE in large data centers goes to cooling, followed by power distribution and conversion.
- ✓ PUE is often better for small, specialized data centers, as they need less energy overall.
- ✗ PUE can be misleading when facility energy is reused beyond data centers.
- ✗ PUE measurement methodologies vary drastically to the point that results are hard to compare.
-
What is NOT a reason why operational cloud carbon footprint assessments are difficult?
- ✓ Grid carbon intensity varies between regions, seasons, weekdays, and times of day.
- ✗ Cloud provider reports are coarse-grained, published late, and methodologies are not detailed.
- ✗ Location independence means you do not know what physical server CPU is used by your VMs.
- ✗ You do not have access to any physical or software power meter readings from within a VM.
-
What is NOT a reason why carbon-aware computing is not used more in practice?
- ✗ Missing runtime information: To time shift large-scale delay-tolerant batch processing applications, you need to know application runtimes before running the applications.
- ✓ Limited applicability: The majority of cloud applications are not delay-tolerant but latency-critical, user-facing Web applications, and those cannot be managed based on varying grid carbon intensity.
- ✗ Missing financial incentive: There is no financial benefit to aligning computational loads with low-carbon energy availability so far.
- ✗ Limited support on public clouds: No public cloud provider has made carbon-aware computing mechanisms available to their customers.
Related Topics
References:
- COMPSCI4106/5118 Cloud Systems course materials