Terraform cluster definition leveraging the libvirt provider.
-
LXD
The easiest way to install LXD is with a Snap: https://snapcraft.io/lxd. Just do a
snap install lxd
. Then you will have to add your username to thelxd
group (for accessing the LXD socket without being root) withsudo usermod -aG lxd $USER
, logout and login again. -
terraform/LXD
You whill have to compile the LXD provider by yourself with a Golang compiler (and your
GOPATH
properly set). Do ago get -v -u github.com/sl1pm4t/terraform-provider-lxd
. Maybe you will have to add the provider to your~/.terraformrc
if terraform does not find the provider automatically. For example:providers { lxd = "<GOPATH>/src/github.com/sl1pm4t/terraform-provider-lxd/terraform-provider-lxd" }
(replacing
<GOPATH>
by your GOPATH). -
kubectl
A local kubectl executable.
By default all the machines will have the following users:
- All the instances have a
root
user withlinux
password.
The cluster will be made by these machines:
${var.master_count}
master nodes, withkubeadm
and thekubelet
pre-installed.${var.worker_count}
worker nodes, withkubeadm
and thekubelet
pre-installed.
You should be able to ssh
these machines, and all of them should be able to ping each other.