Interested in LXD and LXC? Check out our new LXC/LXD Deep Dive course here at Linux Academy! We cover topics including installation, launching containers, persistent storage, networking, and even cover some fascinating use cases to make LXC useful and relevant to you right now!
We’ve also created this LXC-LXD Cheat Sheet to help you get started with LXD right away!
LXD is a really fun and easy way to jump into containers, especially if you have some experience with virtual machines. LXD is designed to create machine containers, which strongly resemble virtual machines, so trying out new distributions or testing application deployments is easy and – dare I say it – fun. LXD 2.0 brought myriad new features to the platform, but a few tasks remain adorably unfledged. A single node of LXD, for instance, can easily be initialized and containers come up on their own private network with the default settings. Once a second node is added, a major limitation becomes obvious: Each node has its own private network for containers and, without some networking jujitsu, will never be able to communicate with one another.
Getting all those containers on the same layer 2 network, regardless of which host each one resides on, is what this post is all about.