K3s on Libvirt Quickstart
Setting up extra terraform provider
Due to an issue in the terraform provider system,
you need to download and place the libvirt provider at a very specific
location in your home directory before deploying K3s.
You can find the libvirt provider version in modules/k3s/libvirt/versions.tf .
To keep things simple this version will be referred to as
$LIBVIRT_PROVIDER_VERSION in this documentation.
Go to https://github.com/dmacvicar/terraform-provider-libvirt/releases/tag/v$LIBVIRT_PROVIDER_VERSION
and find the correct link for your OS/CPU_ARCH
(an example is linux_amd64 , referred to as $OS_CPU_ARCH in the rest of this documentation).
|
mkdir -p ~/.local/share/terraform/plugins/registry.terraform.io/dmacvicar/libvirt/$LIBVIRT_PROVIDER_VERSION/$OS_CPU_ARCH/
mv terraform-provider-libvirt ~/.local/share/terraform/plugins/registry.terraform.io/dmacvicar/libvirt/$LIBVIRT_PROVIDER_VERSION/$OS_CPU_ARCH/terraform-provider-libvirt
Prerequisites
-
Access to a functional Libvirt daemon
-
Knowledge of Terraform basics
Create the Terraform root module
module "cluster" {
source = "git::https://github.com/camptocamp/camptocamp-devops-stack.git//modules/k3s/libvirt?ref=master"
cluster_name = "my-cluster"
node_count = 2
repo_url = "https://github.com/camptocamp/camptocamp-devops-stack.git"
target_revision = "master"
}