IntermediateTopic 63 of 104Software & Computing
Virtualisation and containers
VMs and containers isolate workloads on shared hardware.
In depth
VMs emulate hardware via hypervisors (KVM, Hyper-V, VMware) running full guest OSs; containers share the host kernel with isolation via namespaces and cgroups (Docker). Containers start fast and are lightweight; VMs give stronger isolation. Orchestration: Kubernetes.
Key points
- Images and layers
- Resource limits
- Immutable infrastructure
Exampledocker run starts an application with all its dependencies packaged.
What is Virtualisation and containers?
VMs and containers isolate workloads on shared hardware.
Why is it important to understand virtualisation and containers?
Virtual machines and containers isolate workloads on shared hardware, which makes deployment consistent and efficient.
What is the difference between a VM and a container?
A VM runs a full guest operating system on virtual hardware, while a container shares the host kernel and isolates processes, so it is lighter.
Why do containers help with deployment?
They package the application and its dependencies together, so it runs the same way on developer laptops and servers.
How is Virtualisation and containers used in practice?
Typical applications include running several services on one server without interference, packaging an application with its dependencies for deployment anywhere and testing software on different operating systems using virtual machines.
What should I learn before Virtualisation and containers?
Study "Synchronisation primitives" first (topic 62 of 104 in Software & Computing). It covers the groundwork this topic builds on.
What are the key points of Virtualisation and containers?
Images and layers. Resource limits. Immutable infrastructure.
Can you give an example of Virtualisation and containers?
docker run starts an application with all its dependencies packaged.
What comes after Virtualisation and containers?
The next topic is "Compilers and interpreters", which builds directly on this one.
How difficult is Virtualisation and containers?
It is classed as Intermediate in Software & Computing (topic 63 of 104). It is an intermediate topic. Work through the beginner topics in Software & Computing first.