k8s
hajowieland/k8s/oci
Terraform module for creating a Kubernetes cluster on Oracle Cloud Infrastructure
Terraform Kubernetes on Oracle Cloud Infrastructure (OKE) This repository contains the Terraform module for creating a simple but ready-to-use Kubernetes Cluster on Oracle Container Engine for Kubernetes (OKE). It uses the latest available Kubernetes version available in the Oracle Cloud Infrastructure region and creates a kubeconfig file at completion. - Terraform Kubernetes on Oracle Cloud - Requirements - Features - Notes - Defaults - Terraform Inputs - Outputs Requirements You need an Oracle Cloud account. Features Always uses latest Kubernetes version available at Oracle Cloud kubeconfig file generation Creates separate node pool for worker nodes Allows SSH access from workstation IPv4 address only Notes export KUBECONFIG=./kubeconfig_oci in repo root dir to use the generated kubeconf
| Name | Type | Description | Default |
|---|---|---|---|
| oci_user_ocid | string | OCI User OCID | required |
| oci_fingerprint | string | OCI SSH public key fingerprint | required |
| oci_tenancy_ocid | string | OCI Tenancy OCID | required |
| oci_private_key_path | string | OCI private key path (e.g. `~/.oci/oci_api_key.pem`) | "~/.oci/oci_api_key.pem" |
| oci_cluster_name | string | OCI OKE Kubernetes cluster name (e.g. `k8soci`) | "k8soci" |
| enable_oracle | bool | Enable / Disable Oracle (e.g. `1`) | true |
| random_cluster_suffix | string | Random 6 byte hex suffix for cluster name | "" |
| lbs | number | Count of 8-bit numbers of LoadBalancer base_cidr_block | 10 |
| oci_node_pool_name | string | OCI Kubernetes node pool name (e.g. `k8s-nodepool-oci`) | "k8s-nodepool-oci" |
| oci_node_pool_node_shape | string | OCI Kubernetes node pool Shape (e.g. `VM.Standard2.1` => 1vCPU, 15GB RAM) | "VM.Standard2.1" |
| oci_cluster_add_ons_kubernetes_dashboard | bool | Enable Kubernetes Dashboard (e.g. `false`) | false |
| oci_subnets | number | Count of 8-bit numbers of subnets base_cidr_block | 2 |
| oci_node_pool_ssh_public_key | string | SSH public key to add to each node in the node pool (e.g. `~/.ssh/id_rsa.pub`) | "~/.ssh/id_rsa.pub" |
| oci_subnet_prohibit_public_ip_on_vnic | bool | OCI VCN subnet prohibits assigning public IPs or not (e.g. `false`) | true |
| oci_node_pool_node_image_name | string | OCI Kubernetes node pool image name (e.g. `Oracle-Linux-7.6`) | "Oracle-Linux-7.6" |
| oci_cluster_add_ons_tiller | bool | Enable Tiller for helm (e.g. `false`) | false |
| oci_region | string | OCI Region to use (e.g. `eu-frankfurt-1` => Frankfurt) | "eu-frankfurt-1" |
| oci_public_key_path | string | OCI public key path (e.g. `~/.oci/oci_api_key_public.pem`) | "~/.oci/oci_api_key_public.pem" |
| oci_cidr_block | string | OCI VCN CIDR block (e.g. `10.0.23.0/16`) | "10.0.0.0/16" |
| oci_policy_statements | list(string) | OCI Policy Statements in policy language | [
"Allow service OKE to manage all-res |
| oke_node_pool_size | number | OKE Kubernetes worker node pool quantity per subnet (e.g. `2`) | 2 |
kubernetes_versionkubeconfig_path_ociAzure landing zones Terraform module
Terraform supermodule for the Terraform platform engineering for Azure
Terraform module to deploy landing zone subscriptions (and much more) in Azure
Terraform Module to define a consistent naming convention by (namespace, stage,