Difference between revisions of "Terraform provider: Kubernetes"
Jump to navigation
Jump to search
(24 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
* https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs | * https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs | ||
+ | == Resources == | ||
+ | {{k8s tf resources}} | ||
− | + | == K8s [[Provider]] configuration == | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | [[provider]] "kubernetes" { | |
− | provider "kubernetes" { | + | [[config_path]] = "[[~/.kube/config]]" |
− | config_path = "[[~/.kube/config]]" | + | [[config_context]] = "my-context-cluster" |
− | config_context = "my-context" | ||
} | } | ||
Line 22: | Line 16: | ||
} | } | ||
} | } | ||
− | |||
== [[Terraform EKS]] examples == | == [[Terraform EKS]] examples == | ||
Line 30: | Line 23: | ||
host = [[data.]][[aws_eks_cluster]].cluster.endpoint | host = [[data.]][[aws_eks_cluster]].cluster.endpoint | ||
[[token]] = data.[[aws_eks_cluster_auth]].cluster.token | [[token]] = data.[[aws_eks_cluster_auth]].cluster.token | ||
− | cluster_ca_certificate = [[base64decode]](data.aws_eks_cluster.cluster.certificate_authority.0.data) | + | [[cluster_ca_certificate]] = [[base64decode]](data.aws_eks_cluster.cluster.certificate_authority.0.data) |
} | } | ||
https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs#exec-plugins | https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs#exec-plugins | ||
− | provider | + | {{provider kubernetes eks}} |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | == Errors == | ||
+ | * <code>[[Error: Provider configuration: cannot load Kubernetes client config]]</code> | ||
+ | * <code>[[Error: Unauthorized]]</code> | ||
== Related == | == Related == | ||
Line 52: | Line 40: | ||
* [[Deploy GKE cluster using Terraform]] | * [[Deploy GKE cluster using Terraform]] | ||
* [[Deploy EKS cluster using Terraform]] | * [[Deploy EKS cluster using Terraform]] | ||
+ | * [[Terraform EKS module]] | ||
+ | * <code>[[client.authentication.k8s.io/v1beta1]]</code> | ||
== See also == | == See also == | ||
* {{Tf K8s}} | * {{Tf K8s}} | ||
− | |||
[[Category:Terraform]] | [[Category:Terraform]] | ||
[[Category:K8s]] | [[Category:K8s]] |
Latest revision as of 13:32, 12 February 2024
Contents
Resources[edit]
kubernetes_service_account
kubernetes_secret
kubernetes_manifest
kubernetes_namespace
kubernetes_daemonset
kubernetes_cluster_role
kubernetes_cluster_role_binding
kubernetes_config_map
kubernetes_storage_class_v1
kubernetes_persistent_volume
kubernetes_labels
kubernetes_annotations
K8s Provider configuration[edit]
provider "kubernetes" { config_path = "~/.kube/config" config_context = "my-context-cluster" } resource "kubernetes_namespace" "example" { metadata { name = "my-first-namespace" } }
Terraform EKS examples[edit]
provider "kubernetes" { load_config_file = false host = data.aws_eks_cluster.cluster.endpoint token = data.aws_eks_cluster_auth.cluster.token cluster_ca_certificate = base64decode(data.aws_eks_cluster.cluster.certificate_authority.0.data) }
https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs#exec-plugins
provider "kubernetes" { host = var.cluster_endpoint cluster_ca_certificate = base64decode(var.cluster_ca_cert) exec { api_version = "client.authentication.k8s.io/v1alpha1" args = ["eks", "get-token", "--cluster-name", var.cluster_name] command = "aws" } }
Errors[edit]
Related[edit]
- Terraform: Helm provider
token
- Terraform provider: kubectl
hashicorp/kubernetes
- Deploy GKE cluster using Terraform
- Deploy EKS cluster using Terraform
- Terraform EKS module
client.authentication.k8s.io/v1beta1
See also[edit]
- Terraform provider: Kubernetes,
kubernetes_storage_class_v1, kubernetes_persistent_volume, kubernetes_manifest, kubernetes daemonset, kubernetes_service, kubernetes_namespace, kubernetes_service_account, kubernetes_secret, kubernetes_namespace, kubernetes_service_account_v1, kubernetes_secret_v1, kubernetes horizontal pod autoscaler v1, kubernetes_ingress_v1, kubernetes_persistent_volume_claim_v1
Advertising: