Cgroups + namespaces + chroot
Low level virtualization for production high load infrastructure. Docker and LXC are based on this technologies. You should create multiple systemd files and specify RootDirectory=/srv/containers/chroot/test/ in [Service]
Virtualization provided by Linux kernel, KVM is a framework for kernel virtualization with API, QEMU can use it.
Server – XenServer is iso image for baremetal, client – XenCenter is a windows application client.
- live migration
- acls for operators
- live storage migration
- restart VM if fail
- sharing RAM between VMs
- improved disaster recovery
- designed for single process
- after container reboot all data will be loss
- minimum nodes in cluster is 3 (A three-manager swarm tolerates a maximum loss of one manager. A five-manager swarm tolerates a maximum simultaneous loss of two manager nodes.)
Orchestration for containers like Docker, you should install docker before Kubernetes. In kubernetes “Pod” is a logical unit. For example, you create container for DB, container for web server, this containers merge into Pod, which have persistent ip address. Containers can communicate through network 127.0.0.1:[port number], but not by file sockets.
- rolling updates
- fault tolerance
- load balancing
- container hypervisor
- full OS
- LXC functionality
- live migration
- REST API for OpenStack
like LXD but it is iso for bare metal installation. Special patched kernel, if something goes wrong apps developers will point to that.
Solution for hosting providers.
KVM and LXC HA management, you can use it for free, but subscription not free like in RedHat.
Clustered network OS. Designed for more then 1000 physical servers. Even Riot Games with 600 build server do not use it be cause of it’s complexity.