2018-03-25 21:36:10 -07:00
variable " cluster_name " {
type = " string "
description = " Unique cluster name "
}
# bare-metal
2017-07-24 23:16:34 -07:00
variable " matchbox_http_endpoint " {
type = " string "
description = " Matchbox HTTP read-only endpoint (e.g. http://matchbox.example.com:8080) "
}
variable " container_linux_channel " {
type = " string "
description = " Container Linux channel corresponding to the container_linux_version "
}
variable " container_linux_version " {
type = " string "
description = " Container Linux version of the kernel/initrd to PXE or the image to install "
}
2018-03-25 21:36:10 -07:00
# machines
2018-02-04 15:13:10 -05:00
# Terraform's crude "type system" does not properly support lists of maps so we do this.
2017-07-24 23:16:34 -07:00
variable " controller_names " {
type = "list "
}
variable " controller_macs " {
type = "list "
}
variable " controller_domains " {
type = "list "
}
variable " worker_names " {
type = "list "
}
variable " worker_macs " {
type = "list "
}
variable " worker_domains " {
type = "list "
}
2018-03-25 21:36:10 -07:00
# configuration
2017-07-24 23:16:34 -07:00
variable " k8s_domain_name " {
description = " Controller DNS name which resolves to a controller instance. Workers and kubeconfig's will communicate with this endpoint (e.g. cluster.example.com) "
type = " string "
}
2018-03-25 21:36:10 -07:00
variable " ssh_authorized_key " {
type = " string "
description = " SSH public key for user 'core' "
}
2017-07-24 23:16:34 -07:00
variable " asset_dir " {
description = " Path to a directory where generated assets should be placed (contains secrets) "
type = " string "
}
2017-09-01 14:23:25 -07:00
variable " networking " {
description = " Choice of networking provider (flannel or calico) "
type = " string "
2017-09-12 09:16:58 -07:00
default = " calico "
2017-09-01 14:23:25 -07:00
}
2017-09-05 18:24:57 -07:00
variable " network_mtu " {
description = " CNI interface MTU (applies to calico only) "
type = " string "
default = " 1480 "
}
2017-07-24 23:16:34 -07:00
variable " pod_cidr " {
2018-03-25 21:36:10 -07:00
description = " CIDR IPv4 range to assign Kubernetes pods "
2017-07-24 23:16:34 -07:00
type = " string "
default = " 10.2.0.0/16 "
}
variable " service_cidr " {
description = < < EOD
2018-03-25 21:36:10 -07:00
CIDR IPv4 range to assign Kubernetes services .
2017-11-05 22:43:30 -08:00
The 1 st IP will be reserved for kube_apiserver , the 10 th IP will be reserved for kube - dns .
2017-07-24 23:16:34 -07:00
EOD
type = " string "
default = " 10.3.0.0/16 "
}
# optional
2017-12-09 13:36:59 -08:00
variable " cluster_domain_suffix " {
description = " Queries for domains with the suffix will be answered by kube-dns. Default is cluster.local (e.g. foo.default.svc.cluster.local) "
type = " string "
default = " cluster.local "
}
2017-07-24 23:16:34 -07:00
variable " cached_install " {
type = " string "
default = " false "
description = " Whether Container Linux should PXE boot and install from matchbox /assets cache. Note that the admin must have downloaded the container_linux_version into matchbox assets. "
}
variable " install_disk " {
type = " string "
default = " /dev/sda "
description = " Disk device to which the install profiles should install Container Linux (e.g. /dev/sda) "
}
variable " container_linux_oem " {
type = " string "
default = " "
description = " Specify an OEM image id to use as base for the installation (e.g. ami, vmware_raw, xen) or leave blank for the default image "
}
2017-10-02 11:47:44 -05:00
variable " kernel_args " {
2017-10-16 00:39:58 -07:00
description = " Additional kernel arguments to provide at PXE boot. "
2017-10-02 11:47:44 -05:00
type = "list "
default = [ ]
}
2017-10-16 00:39:58 -07:00
# unofficial, undocumented, unsupported, temporary
variable " controller_networkds " {
2017-10-16 01:32:25 -07:00
type = "list "
2017-10-16 00:39:58 -07:00
description = " Controller Container Linux config networkd section "
2017-10-16 01:32:25 -07:00
default = [ ]
2017-10-16 00:39:58 -07:00
}
variable " worker_networkds " {
2017-10-16 01:32:25 -07:00
type = "list "
2017-10-16 00:39:58 -07:00
description = " Worker Container Linux config networkd section "
2017-10-16 01:32:25 -07:00
default = [ ]
2017-10-16 00:39:58 -07:00
}