lxd the proper way of runing containers
TRANSCRIPT
LXDLXDthe proper way the proper way
of running of running containerscontainers
Marian HackMan MarinovChief System Architect of SiteGround.com
Who am I?Who am I?
Why containers?Why containers?
➢ Density
➢ KVM has to reserve memory for its guests
➢ Container is a simple process under the same kernel, so its children can share the whole machine, and do so in collaboration, because they use the same memory manager.
Why containers?Why containers?
➢ Startup time
➢ KVM 25 sec (can be optimized to around 8)
➢ Container 1.5 sec
➢ KVM 37 guests in 943sec
➢ Container 536 guests in 828sec
Intel Server with 16GB of RAM
Why containers?Why containers?
➢ Latency
Physical hardware
Linux Kernel
Host Operating System
Guest OS
Virtual Machine
Linux Kernel
Why containers?Why containers?
➢ Latency
Physical hardware
Linux Kernel
Host Operating System
Guest OS
Virtual Machine
Linux Kernel
Why containers?Why containers?
➢ Latency
Physical hardware
Linux Kernel
Host Operating System
Guest OS
Virtual Machine
Linux Kernel
Guest OS
Virtual Machine
Linux Kernel
Why containers?Why containers?
➢ Latency
Physical hardware
Linux Kernel
Host Operating System
Guest OS
Virtual Machine
Linux Kernelinit
sshd
init
sshd
init
sshd
bridge
What is LXD?What is LXD?
➢ A front-end for LXC
➢ Enables easier management of LXC containers
What is LXC?What is LXC?
➢ Linux Containers
➢ The initial project to create what we call containers today
➢ Userspace interface for the Linux kernel containment features
So why LXD then?So why LXD then?
➢ RESTful API
➢ Ability to work with remote installations
➢ Ability to control multiple LXD nodes
➢ Better command line interface
➢ Easier management
➢ storage
➢ network
➢ limits
➢ migration (including live)
InstallationInstallation
➢ Works out of the box on recent Ubuntu
➢ On Debian and CentOS it is a bit annoying
➢ you need go 1.6+
➢ latest lxc(2.0), which you can only build from source
➢ a lot of other dependencies
➢ it takes about an hour
So what can I do with it?So what can I do with it?
Marian HackMan Marinov <[email protected]>hackman @ irc.freenode.net https://github.com/hackman