Add an install_container_networking variable (default true)

* When `true`, the chosen container `networking` provider is installed during cluster bootstrap
* Set `false` to self-manage the container networking provider. This allows flannel, Calico, or Cilium
to be managed via Terraform (like any other Kubernetes resources). Nodes will be NotReady until you
apply the self-managed container networking provider. This may become the default in future.
This commit is contained in:
Dalton Hubble
2024-02-24 18:48:06 -08:00
parent 7a46eb03ae
commit 2325a503e1
21 changed files with 77 additions and 15 deletions

View File

@ -5,7 +5,7 @@ module "bootstrap" {
cluster_name = var.cluster_name
api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)]
etcd_servers = aws_route53_record.etcds.*.fqdn
networking = var.networking
networking = var.install_container_networking ? var.networking : "none"
network_mtu = var.network_mtu
pod_cidr = var.pod_cidr
service_cidr = var.service_cidr

View File

@ -107,6 +107,12 @@ variable "networking" {
default = "cilium"
}
variable "install_container_networking" {
type = bool
description = "Install the chosen networking provider during cluster bootstrap (use false to self-manage)"
default = true
}
variable "network_mtu" {
type = number
description = "CNI interface MTU (applies to calico only). Use 8981 if using instances types with Jumbo frames."