ha-k3s

aigisuk/ha-k3s/digitalocean

Terraform Module HCL DIGITALOCEAN

High Availability K3s Cluster deployed on DigitalOcean (Load Balanced API Server and external Postgres/MySQL Datastore)

Install
module "ha-k3s" {
source = "aigisuk/ha-k3s/digitalocean"
version = "0.2.3"
}
⭐ Source on GitHub 📦 Registry page
README

Terraform DigitalOcean HA K3S Module An opinionated Terraform module to provision a high availability K3s cluster with external database on the DigitalOcean cloud platform. Perfect for development or testing. !2021-10-24 05_45_35-k3s-cluster_project_DigitalOcean Features [x] High Availability K3s Cluster provisioned on the DigitalOcean platform [x] Managed PostgreSQL/MySQL database provisioned. Serves as the datastore for the cluster's state (configurable options: size & node count) [x] Dedicated VPC provisioned for cluster use (IP Range: 10.10.10.0/24) [x] Number of provisioned Servers (Masters) and Agents (Workers) is configurable [x] Cluster API/Server(s) are behind a provisioned load balancer for high availability [x] All resources assigned to a dedicated DigitalOcean project (expect L

Inputs (24)
NameTypeDescriptionDefault
ssh_key_fingerprintslist(string)List of SSH Key fingerprints required
do_tokenstringDigitalOcean Personal Access Token required
agent_countnumberNumber of agent (worker) nodes to provision1
server_taint_criticalonlyboolAllow only critical addons to be scheduled on servers? (thus preventing workloadtrue
k8s_dashboardboolPre-install the Kubernetes Dashboard? (Default is false)false
k8s_dashboard_versionstringKubernetes Dashboard version"2.7.0"
cert_manager_versionstringcert-manager version"1.11.0"
vpc_network_rangestringRange of IP addresses for the VPC in CIDR notation. Cannot be larger than /16 or"10.10.10.0/24"
server_sizestringServer droplet size. e.g. s-1vcpu-2gb"s-1vcpu-2gb"
agent_tagstringAgent resource tag name."k3s_agent"
sys_upgrade_ctrlboolPre-install the System Upgrade Controller?false
ingressstringIngress controller to install"none"
traefik_versionstringTraefik version to install (if enabled)"2.9.7"
regionstringRegion in which to deploy the cluster. Default is fra1 (Frankfurt, Germany)"fra1"
database_userstringDatabase Username"k3s_default_user"
server_tagstringServer resource tag name."k3s_server"
server_countnumberNumber of server (master) nodes to provision2
cert_managerboolPre-install cert-manager? (Default is false)false
database_enginestringDatabase engine. PostgreSQL (13) or MySQL (8)"postgres"
database_sizestringDatabase Droplet size associated with the cluster (ex. db-s-1vcpu-1gb)"db-s-1vcpu-1gb"
flannel_backendstringFlannel Backend Type. Valid options include vxlan (default), ipsec or wireguard"vxlan"
agent_sizestringAgent droplet size. e.g. s-1vcpu-2gb"s-1vcpu-2gb"
Outputs (1)
cluster_summary — Cluster Summary.
Resources (12)
digitalocean_database_clusterdigitalocean_database_firewalldigitalocean_database_userdigitalocean_dropletdigitalocean_firewalldigitalocean_loadbalancerdigitalocean_projectdigitalocean_project_resourcesdigitalocean_tagdigitalocean_vpcrandom_idrandom_password
Details
FrameworkTerraform Module
LanguageHCL
Version0.2.3
Cloud DIGITALOCEAN
★ Stars52
Forks22
Total downloads775
Inputs24
Outputs1
Resources12
Examples2
LicenseMIT
Namespaceaigisuk
Updated