Inputs

Sub-modules currently use a sparse definition of inputs required from the root:

Identity Access Management (IAM)

NameDescriptionTypeDefaultRequired
create_iam_autoscaler_policyn/abooln/ayes
create_iam_defined_tagsTagsbooln/ayes
create_iam_kms_policyn/abooln/ayes
create_iam_operator_policyn/abooln/ayes
create_iam_resourcesn/abooln/ayes
create_iam_tag_namespacen/abooln/ayes
create_iam_worker_policyn/abooln/ayes
use_defined_tagsn/abooln/ayes
autoscaler_compartmentsPolicylist(string)n/ayes
worker_compartmentsn/alist(string)n/ayes
defined_tagsn/amap(string)n/ayes
freeform_tagsn/amap(string)n/ayes
cluster_idCommonstringn/ayes
cluster_kms_key_idKMSstringn/ayes
compartment_idn/astringn/ayes
operator_volume_kms_key_idn/astringn/ayes
state_idn/astringn/ayes
tag_namespacen/astringn/ayes
tenancy_idn/astringn/ayes
worker_volume_kms_key_idn/astringn/ayes

Network

NameDescriptionTypeDefaultRequired
allow_rules_internal_lbn/aanyn/ayes
allow_rules_public_lbn/aanyn/ayes
allow_rules_workersn/aanyn/ayes
drg_attachmentsn/aanyn/ayes
allow_bastion_cluster_accessn/abooln/ayes
allow_node_port_accessNetworkbooln/ayes
allow_pod_internet_accessn/abooln/ayes
allow_worker_internet_accessn/abooln/ayes
allow_worker_ssh_accessn/abooln/ayes
assign_dnsn/abooln/ayes
bastion_is_publicn/abooln/ayes
control_plane_is_publicn/abooln/ayes
create_bastionn/abooln/ayes
create_clustern/abooln/ayes
create_operatorn/abooln/ayes
enable_wafn/abooln/ayes
use_defined_tagsn/abooln/ayes
worker_is_publicn/abooln/ayes
vcn_cidrsn/alist(string)n/ayes
subnetsn/amap(object({
create = optional(string)
id = optional(string)
newbits = optional(string)
netnum = optional(string)
cidr = optional(string)
dns_label = optional(string)
}))
n/ayes
nsgsn/amap(object({
create = optional(string)
id = optional(string)
}))
n/ayes
defined_tagsTagsmap(string)n/ayes
freeform_tagsn/amap(string)n/ayes
bastion_allowed_cidrsn/aset(string)n/ayes
control_plane_allowed_cidrsn/aset(string)n/ayes
cni_typen/astringn/ayes
compartment_idCommonstringn/ayes
ig_route_table_idn/astringn/ayes
load_balancersn/astringn/ayes
nat_route_table_idn/astringn/ayes
state_idn/astringn/ayes
tag_namespacen/astringn/ayes
vcn_idn/astringn/ayes

Bastion

NameDescriptionTypeDefaultRequired
assign_dnsBastionbooln/ayes
is_publicn/abooln/ayes
upgraden/abooln/ayes
use_defined_tagsn/abooln/ayes
nsg_idsn/alist(string)n/ayes
shapen/amap(any)n/ayes
defined_tagsTagsmap(string)n/ayes
freeform_tagsn/amap(string)n/ayes
availability_domainn/astringn/ayes
bastion_image_os_versionn/astringn/ayes
compartment_idCommonstringn/ayes
image_idn/astringn/ayes
ssh_private_keyn/astringn/ayes
ssh_public_keyn/astringn/ayes
state_idn/astringn/ayes
subnet_idn/astringn/ayes
tag_namespacen/astringn/ayes
timezonen/astringn/ayes
usern/astringn/ayes

Cluster

NameDescriptionTypeDefaultRequired
assign_public_ip_to_control_planen/abooln/ayes
control_plane_is_publicn/abooln/ayes
use_signed_imagesn/abooln/ayes
cluster_defined_tagsTaggingmap(string)n/ayes
cluster_freeform_tagsn/amap(string)n/ayes
persistent_volume_defined_tagsn/amap(string)n/ayes
persistent_volume_freeform_tagsn/amap(string)n/ayes
service_lb_defined_tagsn/amap(string)n/ayes
service_lb_freeform_tagsn/amap(string)n/ayes
control_plane_nsg_idsn/aset(string)n/ayes
image_signing_keysn/aset(string)n/ayes
cluster_kms_key_idClusterstringn/ayes
cluster_namen/astringn/ayes
cluster_typen/astringn/ayes
cni_typen/astringn/ayes
compartment_idCommonstringn/ayes
control_plane_subnet_idn/astringn/ayes
kubernetes_versionn/astringn/ayes
pods_cidrn/astringn/ayes
service_lb_subnet_idn/astringn/ayes
services_cidrn/astringn/ayes
state_idn/astringn/ayes
tag_namespacen/astringn/ayes
use_defined_tagsn/astringn/ayes
vcn_idn/astringn/ayes

Workers

NameDescriptionTypeDefaultRequired
image_idsMap of images for filtering with image_os and image_os_version.any{}no
worker_poolsTuple of OKE worker pools where each key maps to the OCID of an OCI resource, and value contains its definition.any{}no
assign_dnsn/abooln/ayes
assign_public_ipn/abooln/ayes
disable_default_cloud_initWhether to disable the default OKE cloud init and only use the cloud init explicitly passed to the worker pool in 'worker_cloud_init'.boolfalseno
pv_transit_encryptionWhether to enable in-transit encryption for the data volume's paravirtualized attachment by default when unspecified on a pool.boolfalseno
use_defined_tagsWhether to apply defined tags to created resources for IAM policy and tracking.boolfalseno
cloud_initList of maps containing cloud init MIME part configuration for worker nodes. Merged with pool-specific definitions. See https://registry.terraform.io/providers/hashicorp/template/latest/docs/data-sources/cloudinit_config.html#part for expected schema of each element.list(map(string))[]no
ad_numbersn/alist(number)n/ayes
pod_nsg_idsAn additional list of network security group (NSG) IDs for pod security. Combined with 'pod_nsg_ids' specified on each pool.list(string)[]no
worker_nsg_idsAn additional list of network security group (NSG) IDs for node security. Combined with 'nsg_ids' specified on each pool.list(string)[]no
preemptible_configDefault preemptible Compute configuration when unspecified on a pool. See Preemptible Worker Nodes for more information.map(any){
"enable": false,
"is_preserve_boot_volume": false
}
no
shapeDefault shape of the created worker instance when unspecified on a pool.map(any){
"boot_volume_size": 50,
"memory": 16,
"ocpus": 2,
"shape": "VM.Standard.E4.Flex"
}
no
ad_numbers_to_namesn/amap(string)n/ayes
defined_tagsDefined tags to be applied to created resources. Must already exist in the tenancy.map(string){}no
freeform_tagsFreeform tags to be applied to created resources.map(string){}no
node_labelsDefault worker node labels. Merged with labels defined on each pool.map(string){}no
node_metadataMap of additional worker node instance metadata. Merged with metadata defined on each pool.map(string){}no
max_pods_per_nodeThe default maximum number of pods to deploy per node when unspecified on a pool. Absolute maximum is 110. Ignored when when cni_type != 'npn'.number31no
worker_pool_sizeDefault size for worker pools when unspecified on a pool.number0no
agent_configDefault agent_config for self-managed worker pools created with mode: 'instance', 'instance-pool', or 'cluster-network'. See <a href=https://docs.oracle.com/en-us/iaas/api/#/en/iaas/20160918/datatypes/InstanceAgentConfig for more information.object({
are_all_plugins_disabled = bool,
is_management_disabled = bool,
is_monitoring_disabled = bool,
plugins_config = map(string),
})
n/ayes
platform_configDefault platform_config for self-managed worker pools created with mode: 'instance', 'instance-pool', or 'cluster-network'. See PlatformConfig for more information.object({
type = optional(string),
are_virtual_instructions_enabled = optional(bool),
is_access_control_service_enabled = optional(bool),
is_input_output_memory_management_unit_enabled = optional(bool),
is_measured_boot_enabled = optional(bool),
is_memory_encryption_enabled = optional(bool),
is_secure_boot_enabled = optional(bool),
is_symmetric_multi_threading_enabled = optional(bool),
is_trusted_platform_module_enabled = optional(bool),
numa_nodes_per_socket = optional(number),
percentage_of_cores_enabled = optional(bool),
})
nullno
apiserver_private_hostn/astringn/ayes
block_volume_typeDefault block volume attachment type for Instance Configurations when unspecified on a pool.string"paravirtualized"no
capacity_reservation_idThe ID of the Compute capacity reservation the worker node will be launched under. See Capacity Reservations for more information.stringnullno
cluster_ca_certBase64+PEM-encoded cluster CA certificate for unmanaged instance pools. Determined automatically when 'create_cluster' = true or 'cluster_id' is provided.stringnullno
cluster_dnsCluster DNS resolver IP address. Determined automatically when not set (recommended).stringnullno
cluster_idAn existing OKE cluster OCID when create_cluster = false.stringnullno
cluster_typeThe cluster type. See Working with Enhanced Clusters and Basic Clusters for more information.string"basic"no
cni_typeThe CNI for the cluster: 'flannel' or 'npn'. See Pod Networking.string"flannel"no
compartment_idThe compartment id where resources will be created.stringnullno
image_idDefault image for worker pools when unspecified on a pool.stringnullno
image_osDefault worker image operating system name when worker_image_type = 'oke' or 'platform' and unspecified on a pool.string"Oracle Linux"no
image_os_versionDefault worker image operating system version when worker_image_type = 'oke' or 'platform' and unspecified on a pool.string"8"no
image_typeWhether to use a platform, OKE, or custom image for worker nodes by default when unspecified on a pool. When custom is set, the worker_image_id must be specified.string"oke"no
kubeproxy_modeThe mode in which to run kube-proxy when unspecified on a pool.string"iptables"no
kubernetes_versionThe version of Kubernetes used for worker nodes.string"v1.26.2"no
pod_subnet_idn/astringn/ayes
ssh_public_keyThe contents of the SSH public key file. Used to allow login for workers/bastion/operator with corresponding private key.stringnullno
state_idOptional Terraform state_id from an existing deployment of the module to re-use with created resources.stringnullno
tag_namespaceThe tag namespace for standard OKE defined tags.string"oke"no
tenancy_idThe tenancy id of the OCI Cloud Account in which to create the resources.stringnullno
timezonen/astringn/ayes
volume_kms_key_idThe ID of the OCI KMS key to be used as the master encryption key for Boot Volume and Block Volume encryption by default when unspecified on a pool.stringnullno
worker_pool_modeDefault management mode for workers when unspecified on a pool. Only 'node-pool' is currently supported.string"node-pool"no
worker_subnet_idn/astringn/ayes

Operator

NameDescriptionTypeDefaultRequired
assign_dnsOperatorbooln/ayes
install_ciliumn/abooln/ayes
install_helmn/abooln/ayes
install_istioctln/abooln/ayes
install_k9sn/abooln/ayes
install_kubectl_from_repon/abooltrueno
install_kubectxn/abooln/ayes
pv_transit_encryptionn/abooln/ayes
upgraden/abooln/ayes
use_defined_tagsn/abooln/ayes
cloud_initn/alist(map(string))n/ayes
nsg_idsn/alist(string)n/ayes
shapen/amap(any)n/ayes
defined_tagsTagsmap(string)n/ayes
freeform_tagsn/amap(string)n/ayes
availability_domainn/astringn/ayes
bastion_hostBastion (to await cloud-init completion)stringn/ayes
bastion_usern/astringn/ayes
compartment_idCommonstringn/ayes
image_idn/astringn/ayes
kubeconfign/astringn/ayes
kubernetes_versionn/astringn/ayes
operator_image_os_versionn/astringn/ayes
ssh_private_keyn/astringn/ayes
ssh_public_keyn/astringn/ayes
state_idn/astringn/ayes
subnet_idn/astringn/ayes
tag_namespacen/astringn/ayes
timezonen/astringn/ayes
usern/astringn/ayes
volume_kms_key_idn/astringn/ayes