diff --git a/CHANGES.md b/CHANGES.md index ef835fad..a2b85ff3 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -4,6 +4,7 @@ Notable changes between versions. ## Latest +* Kubernetes [v1.14.0](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.14.md#v1140) * Update Calico from v3.6.0 to v3.6.1 #### AWS diff --git a/README.md b/README.md index 55d4b6b6..4861b6cc 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ Typhoon distributes upstream Kubernetes, architectural conventions, and cluster ## Features -* Kubernetes v1.13.5 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) +* Kubernetes v1.14.0 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) * Single or multi-master, [Calico](https://www.projectcalico.org/) or [flannel](https://github.com/coreos/flannel) networking * On-cluster etcd with TLS, [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)-enabled, [network policy](https://kubernetes.io/docs/concepts/services-networking/network-policies/) * Advanced features like [worker pools](https://typhoon.psdn.io/advanced/worker-pools/), [preemptible](https://typhoon.psdn.io/cl/google-cloud/#preemption) workers, and [snippets](https://typhoon.psdn.io/advanced/customization/#container-linux) customization @@ -50,7 +50,7 @@ Define a Kubernetes cluster by using the Terraform module for your chosen platfo ```tf module "google-cloud-yavin" { - source = "git::https://github.com/poseidon/typhoon//google-cloud/container-linux/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//google-cloud/container-linux/kubernetes?ref=v1.14.0" providers = { google = "google.default" @@ -91,9 +91,9 @@ In 4-8 minutes (varies by platform), the cluster will be ready. This Google Clou $ export KUBECONFIG=/home/user/.secrets/clusters/yavin/auth/kubeconfig $ kubectl get nodes NAME ROLES STATUS AGE VERSION -yavin-controller-0.c.example-com.internal controller,master Ready 6m v1.13.5 -yavin-worker-jrbf.c.example-com.internal node Ready 5m v1.13.5 -yavin-worker-mzdm.c.example-com.internal node Ready 5m v1.13.5 +yavin-controller-0.c.example-com.internal controller,master Ready 6m v1.14.0 +yavin-worker-jrbf.c.example-com.internal node Ready 5m v1.14.0 +yavin-worker-mzdm.c.example-com.internal node Ready 5m v1.14.0 ``` List the pods. diff --git a/aws/container-linux/kubernetes/README.md b/aws/container-linux/kubernetes/README.md index 5eeef294..18239c43 100644 --- a/aws/container-linux/kubernetes/README.md +++ b/aws/container-linux/kubernetes/README.md @@ -11,7 +11,7 @@ Typhoon distributes upstream Kubernetes, architectural conventions, and cluster ## Features -* Kubernetes v1.13.5 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) +* Kubernetes v1.14.0 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) * Single or multi-master, [Calico](https://www.projectcalico.org/) or [flannel](https://github.com/coreos/flannel) networking * On-cluster etcd with TLS, [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)-enabled, [network policy](https://kubernetes.io/docs/concepts/services-networking/network-policies/) * Advanced features like [worker pools](https://typhoon.psdn.io/advanced/worker-pools/), [spot](https://typhoon.psdn.io/cl/aws/#spot) workers, and [snippets](https://typhoon.psdn.io/advanced/customization/#container-linux) customization diff --git a/aws/container-linux/kubernetes/bootkube.tf b/aws/container-linux/kubernetes/bootkube.tf index 0103059b..c4010897 100644 --- a/aws/container-linux/kubernetes/bootkube.tf +++ b/aws/container-linux/kubernetes/bootkube.tf @@ -1,6 +1,6 @@ # Self-hosted Kubernetes assets (kubeconfig, manifests) module "bootkube" { - source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=bcb015e1052192b166b19a1e3b5da0f25051eaf4" + source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=ce5db83663b1de2096afc1787c2b622bc08987b3" cluster_name = "${var.cluster_name}" api_servers = ["${format("%s.%s", var.cluster_name, var.dns_zone)}"] diff --git a/aws/container-linux/kubernetes/cl/controller.yaml.tmpl b/aws/container-linux/kubernetes/cl/controller.yaml.tmpl index 7252aa80..d8248e7e 100644 --- a/aws/container-linux/kubernetes/cl/controller.yaml.tmpl +++ b/aws/container-linux/kubernetes/cl/controller.yaml.tmpl @@ -123,7 +123,7 @@ storage: contents: inline: | KUBELET_IMAGE_URL=docker://k8s.gcr.io/hyperkube - KUBELET_IMAGE_TAG=v1.13.5 + KUBELET_IMAGE_TAG=v1.14.0 - path: /etc/sysctl.d/max-user-watches.conf filesystem: root contents: diff --git a/aws/container-linux/kubernetes/workers/cl/worker.yaml.tmpl b/aws/container-linux/kubernetes/workers/cl/worker.yaml.tmpl index 9cc13a6e..a42da385 100644 --- a/aws/container-linux/kubernetes/workers/cl/worker.yaml.tmpl +++ b/aws/container-linux/kubernetes/workers/cl/worker.yaml.tmpl @@ -93,7 +93,7 @@ storage: contents: inline: | KUBELET_IMAGE_URL=docker://k8s.gcr.io/hyperkube - KUBELET_IMAGE_TAG=v1.13.5 + KUBELET_IMAGE_TAG=v1.14.0 - path: /etc/sysctl.d/max-user-watches.conf filesystem: root contents: @@ -111,7 +111,7 @@ storage: --volume config,kind=host,source=/etc/kubernetes \ --mount volume=config,target=/etc/kubernetes \ --insecure-options=image \ - docker://k8s.gcr.io/hyperkube:v1.13.5 \ + docker://k8s.gcr.io/hyperkube:v1.14.0 \ --net=host \ --dns=host \ --exec=/kubectl -- --kubeconfig=/etc/kubernetes/kubeconfig delete node $(hostname) diff --git a/aws/fedora-atomic/kubernetes/README.md b/aws/fedora-atomic/kubernetes/README.md index 4069a93c..66a22c3d 100644 --- a/aws/fedora-atomic/kubernetes/README.md +++ b/aws/fedora-atomic/kubernetes/README.md @@ -11,7 +11,7 @@ Typhoon distributes upstream Kubernetes, architectural conventions, and cluster ## Features -* Kubernetes v1.13.5 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) +* Kubernetes v1.14.0 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) * Single or multi-master, [Calico](https://www.projectcalico.org/) or [flannel](https://github.com/coreos/flannel) networking * On-cluster etcd with TLS, [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)-enabled, [network policy](https://kubernetes.io/docs/concepts/services-networking/network-policies/) * Advanced features like [worker pools](https://typhoon.psdn.io/advanced/worker-pools/) and [spot](https://typhoon.psdn.io/cl/aws/#spot) workers diff --git a/aws/fedora-atomic/kubernetes/bootkube.tf b/aws/fedora-atomic/kubernetes/bootkube.tf index fc45dc31..cfa87417 100644 --- a/aws/fedora-atomic/kubernetes/bootkube.tf +++ b/aws/fedora-atomic/kubernetes/bootkube.tf @@ -1,6 +1,6 @@ # Self-hosted Kubernetes assets (kubeconfig, manifests) module "bootkube" { - source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=bcb015e1052192b166b19a1e3b5da0f25051eaf4" + source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=ce5db83663b1de2096afc1787c2b622bc08987b3" cluster_name = "${var.cluster_name}" api_servers = ["${format("%s.%s", var.cluster_name, var.dns_zone)}"] diff --git a/aws/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl b/aws/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl index 8afdfc05..5949d55d 100644 --- a/aws/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl +++ b/aws/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl @@ -79,7 +79,7 @@ runcmd: - [systemctl, daemon-reload] - [systemctl, restart, NetworkManager] - "atomic install --system --name=etcd quay.io/poseidon/etcd:v3.3.12" - - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.13.5" + - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.14.0" - "atomic install --system --name=bootkube quay.io/poseidon/bootkube:v0.14.0" - [systemctl, start, --no-block, etcd.service] - [systemctl, start, --no-block, kubelet.service] diff --git a/aws/fedora-atomic/kubernetes/workers/cloudinit/worker.yaml.tmpl b/aws/fedora-atomic/kubernetes/workers/cloudinit/worker.yaml.tmpl index a05cd877..373a7163 100644 --- a/aws/fedora-atomic/kubernetes/workers/cloudinit/worker.yaml.tmpl +++ b/aws/fedora-atomic/kubernetes/workers/cloudinit/worker.yaml.tmpl @@ -54,7 +54,7 @@ bootcmd: runcmd: - [systemctl, daemon-reload] - [systemctl, restart, NetworkManager] - - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.13.5" + - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.14.0" - [systemctl, start, --no-block, kubelet.service] users: - default diff --git a/azure/container-linux/kubernetes/README.md b/azure/container-linux/kubernetes/README.md index a8aeacbb..96ea18d7 100644 --- a/azure/container-linux/kubernetes/README.md +++ b/azure/container-linux/kubernetes/README.md @@ -11,7 +11,7 @@ Typhoon distributes upstream Kubernetes, architectural conventions, and cluster ## Features -* Kubernetes v1.13.5 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) +* Kubernetes v1.14.0 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) * Single or multi-master, [flannel](https://github.com/coreos/flannel) networking * On-cluster etcd with TLS, [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)-enabled * Advanced features like [worker pools](https://typhoon.psdn.io/advanced/worker-pools/), [low-priority](https://typhoon.psdn.io/cl/azure/#low-priority) workers, and [snippets](https://typhoon.psdn.io/advanced/customization/#container-linux) customization diff --git a/azure/container-linux/kubernetes/bootkube.tf b/azure/container-linux/kubernetes/bootkube.tf index 4055d2b2..7b0bd062 100644 --- a/azure/container-linux/kubernetes/bootkube.tf +++ b/azure/container-linux/kubernetes/bootkube.tf @@ -1,6 +1,6 @@ # Self-hosted Kubernetes assets (kubeconfig, manifests) module "bootkube" { - source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=bcb015e1052192b166b19a1e3b5da0f25051eaf4" + source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=ce5db83663b1de2096afc1787c2b622bc08987b3" cluster_name = "${var.cluster_name}" api_servers = ["${format("%s.%s", var.cluster_name, var.dns_zone)}"] diff --git a/azure/container-linux/kubernetes/cl/controller.yaml.tmpl b/azure/container-linux/kubernetes/cl/controller.yaml.tmpl index 7252aa80..d8248e7e 100644 --- a/azure/container-linux/kubernetes/cl/controller.yaml.tmpl +++ b/azure/container-linux/kubernetes/cl/controller.yaml.tmpl @@ -123,7 +123,7 @@ storage: contents: inline: | KUBELET_IMAGE_URL=docker://k8s.gcr.io/hyperkube - KUBELET_IMAGE_TAG=v1.13.5 + KUBELET_IMAGE_TAG=v1.14.0 - path: /etc/sysctl.d/max-user-watches.conf filesystem: root contents: diff --git a/azure/container-linux/kubernetes/workers/cl/worker.yaml.tmpl b/azure/container-linux/kubernetes/workers/cl/worker.yaml.tmpl index c5211f27..6459a966 100644 --- a/azure/container-linux/kubernetes/workers/cl/worker.yaml.tmpl +++ b/azure/container-linux/kubernetes/workers/cl/worker.yaml.tmpl @@ -93,7 +93,7 @@ storage: contents: inline: | KUBELET_IMAGE_URL=docker://k8s.gcr.io/hyperkube - KUBELET_IMAGE_TAG=v1.13.5 + KUBELET_IMAGE_TAG=v1.14.0 - path: /etc/sysctl.d/max-user-watches.conf filesystem: root contents: @@ -111,7 +111,7 @@ storage: --volume config,kind=host,source=/etc/kubernetes \ --mount volume=config,target=/etc/kubernetes \ --insecure-options=image \ - docker://k8s.gcr.io/hyperkube:v1.13.5 \ + docker://k8s.gcr.io/hyperkube:v1.14.0 \ --net=host \ --dns=host \ --exec=/kubectl -- --kubeconfig=/etc/kubernetes/kubeconfig delete node $(hostname | tr '[:upper:]' '[:lower:]') diff --git a/bare-metal/container-linux/kubernetes/README.md b/bare-metal/container-linux/kubernetes/README.md index 7ff0ca7d..8a368327 100644 --- a/bare-metal/container-linux/kubernetes/README.md +++ b/bare-metal/container-linux/kubernetes/README.md @@ -11,7 +11,7 @@ Typhoon distributes upstream Kubernetes, architectural conventions, and cluster ## Features -* Kubernetes v1.13.5 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) +* Kubernetes v1.14.0 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) * Single or multi-master, [Calico](https://www.projectcalico.org/) or [flannel](https://github.com/coreos/flannel) networking * On-cluster etcd with TLS, [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)-enabled, [network policy](https://kubernetes.io/docs/concepts/services-networking/network-policies/) * Advanced features like [snippets](https://typhoon.psdn.io/advanced/customization/#container-linux) customization diff --git a/bare-metal/container-linux/kubernetes/bootkube.tf b/bare-metal/container-linux/kubernetes/bootkube.tf index e94c60fa..3e834398 100644 --- a/bare-metal/container-linux/kubernetes/bootkube.tf +++ b/bare-metal/container-linux/kubernetes/bootkube.tf @@ -1,6 +1,6 @@ # Self-hosted Kubernetes assets (kubeconfig, manifests) module "bootkube" { - source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=bcb015e1052192b166b19a1e3b5da0f25051eaf4" + source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=ce5db83663b1de2096afc1787c2b622bc08987b3" cluster_name = "${var.cluster_name}" api_servers = ["${var.k8s_domain_name}"] diff --git a/bare-metal/container-linux/kubernetes/cl/controller.yaml.tmpl b/bare-metal/container-linux/kubernetes/cl/controller.yaml.tmpl index 7863f04a..143fc178 100644 --- a/bare-metal/container-linux/kubernetes/cl/controller.yaml.tmpl +++ b/bare-metal/container-linux/kubernetes/cl/controller.yaml.tmpl @@ -128,7 +128,7 @@ storage: contents: inline: | KUBELET_IMAGE_URL=docker://k8s.gcr.io/hyperkube - KUBELET_IMAGE_TAG=v1.13.5 + KUBELET_IMAGE_TAG=v1.14.0 - path: /etc/hostname filesystem: root mode: 0644 diff --git a/bare-metal/container-linux/kubernetes/cl/worker.yaml.tmpl b/bare-metal/container-linux/kubernetes/cl/worker.yaml.tmpl index 5e5e5bce..da3b2970 100644 --- a/bare-metal/container-linux/kubernetes/cl/worker.yaml.tmpl +++ b/bare-metal/container-linux/kubernetes/cl/worker.yaml.tmpl @@ -89,7 +89,7 @@ storage: contents: inline: | KUBELET_IMAGE_URL=docker://k8s.gcr.io/hyperkube - KUBELET_IMAGE_TAG=v1.13.5 + KUBELET_IMAGE_TAG=v1.14.0 - path: /etc/hostname filesystem: root mode: 0644 diff --git a/bare-metal/fedora-atomic/kubernetes/README.md b/bare-metal/fedora-atomic/kubernetes/README.md index 65aac5d1..dab414ff 100644 --- a/bare-metal/fedora-atomic/kubernetes/README.md +++ b/bare-metal/fedora-atomic/kubernetes/README.md @@ -11,7 +11,7 @@ Typhoon distributes upstream Kubernetes, architectural conventions, and cluster ## Features -* Kubernetes v1.13.5 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) +* Kubernetes v1.14.0 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) * Single or multi-master, [Calico](https://www.projectcalico.org/) or [flannel](https://github.com/coreos/flannel) networking * On-cluster etcd with TLS, [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)-enabled, [network policy](https://kubernetes.io/docs/concepts/services-networking/network-policies/) * Ready for Ingress, Prometheus, Grafana, and other optional [addons](https://typhoon.psdn.io/addons/overview/) diff --git a/bare-metal/fedora-atomic/kubernetes/bootkube.tf b/bare-metal/fedora-atomic/kubernetes/bootkube.tf index 117c2c2c..a6fbb57c 100644 --- a/bare-metal/fedora-atomic/kubernetes/bootkube.tf +++ b/bare-metal/fedora-atomic/kubernetes/bootkube.tf @@ -1,6 +1,6 @@ # Self-hosted Kubernetes assets (kubeconfig, manifests) module "bootkube" { - source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=bcb015e1052192b166b19a1e3b5da0f25051eaf4" + source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=ce5db83663b1de2096afc1787c2b622bc08987b3" cluster_name = "${var.cluster_name}" api_servers = ["${var.k8s_domain_name}"] diff --git a/bare-metal/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl b/bare-metal/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl index 1e23ec0d..bed3dce5 100644 --- a/bare-metal/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl +++ b/bare-metal/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl @@ -85,7 +85,7 @@ runcmd: - [systemctl, restart, NetworkManager] - [hostnamectl, set-hostname, ${domain_name}] - "atomic install --system --name=etcd quay.io/poseidon/etcd:v3.3.12" - - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.13.5" + - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.14.0" - "atomic install --system --name=bootkube quay.io/poseidon/bootkube:v0.14.0" - [systemctl, start, --no-block, etcd.service] - [systemctl, enable, kubelet.path] diff --git a/bare-metal/fedora-atomic/kubernetes/cloudinit/worker.yaml.tmpl b/bare-metal/fedora-atomic/kubernetes/cloudinit/worker.yaml.tmpl index bae7973f..a01c2cd3 100644 --- a/bare-metal/fedora-atomic/kubernetes/cloudinit/worker.yaml.tmpl +++ b/bare-metal/fedora-atomic/kubernetes/cloudinit/worker.yaml.tmpl @@ -60,7 +60,7 @@ runcmd: - [systemctl, daemon-reload] - [systemctl, restart, NetworkManager] - [hostnamectl, set-hostname, ${domain_name}] - - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.13.5" + - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.14.0" - [systemctl, enable, kubelet.path] - [systemctl, start, --no-block, kubelet.path] users: diff --git a/digital-ocean/container-linux/kubernetes/README.md b/digital-ocean/container-linux/kubernetes/README.md index 2f8b0a4f..0e81f782 100644 --- a/digital-ocean/container-linux/kubernetes/README.md +++ b/digital-ocean/container-linux/kubernetes/README.md @@ -11,7 +11,7 @@ Typhoon distributes upstream Kubernetes, architectural conventions, and cluster ## Features -* Kubernetes v1.13.5 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) +* Kubernetes v1.14.0 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) * Single or multi-master, [flannel](https://github.com/coreos/flannel) networking * On-cluster etcd with TLS, [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)-enabled * Advanced features like [snippets](https://typhoon.psdn.io/advanced/customization/#container-linux) customization diff --git a/digital-ocean/container-linux/kubernetes/bootkube.tf b/digital-ocean/container-linux/kubernetes/bootkube.tf index 1ae13f38..cf67d672 100644 --- a/digital-ocean/container-linux/kubernetes/bootkube.tf +++ b/digital-ocean/container-linux/kubernetes/bootkube.tf @@ -1,6 +1,6 @@ # Self-hosted Kubernetes assets (kubeconfig, manifests) module "bootkube" { - source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=bcb015e1052192b166b19a1e3b5da0f25051eaf4" + source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=ce5db83663b1de2096afc1787c2b622bc08987b3" cluster_name = "${var.cluster_name}" api_servers = ["${format("%s.%s", var.cluster_name, var.dns_zone)}"] diff --git a/digital-ocean/container-linux/kubernetes/cl/controller.yaml.tmpl b/digital-ocean/container-linux/kubernetes/cl/controller.yaml.tmpl index 95a34b9a..1fb193f1 100644 --- a/digital-ocean/container-linux/kubernetes/cl/controller.yaml.tmpl +++ b/digital-ocean/container-linux/kubernetes/cl/controller.yaml.tmpl @@ -129,7 +129,7 @@ storage: contents: inline: | KUBELET_IMAGE_URL=docker://k8s.gcr.io/hyperkube - KUBELET_IMAGE_TAG=v1.13.5 + KUBELET_IMAGE_TAG=v1.14.0 - path: /etc/sysctl.d/max-user-watches.conf filesystem: root contents: diff --git a/digital-ocean/container-linux/kubernetes/cl/worker.yaml.tmpl b/digital-ocean/container-linux/kubernetes/cl/worker.yaml.tmpl index 2c72c238..51b83675 100644 --- a/digital-ocean/container-linux/kubernetes/cl/worker.yaml.tmpl +++ b/digital-ocean/container-linux/kubernetes/cl/worker.yaml.tmpl @@ -99,7 +99,7 @@ storage: contents: inline: | KUBELET_IMAGE_URL=docker://k8s.gcr.io/hyperkube - KUBELET_IMAGE_TAG=v1.13.5 + KUBELET_IMAGE_TAG=v1.14.0 - path: /etc/sysctl.d/max-user-watches.conf filesystem: root contents: @@ -117,7 +117,7 @@ storage: --volume config,kind=host,source=/etc/kubernetes \ --mount volume=config,target=/etc/kubernetes \ --insecure-options=image \ - docker://k8s.gcr.io/hyperkube:v1.13.5 \ + docker://k8s.gcr.io/hyperkube:v1.14.0 \ --net=host \ --dns=host \ --exec=/kubectl -- --kubeconfig=/etc/kubernetes/kubeconfig delete node $(hostname) diff --git a/digital-ocean/fedora-atomic/kubernetes/README.md b/digital-ocean/fedora-atomic/kubernetes/README.md index 48a6c57d..eaa5934b 100644 --- a/digital-ocean/fedora-atomic/kubernetes/README.md +++ b/digital-ocean/fedora-atomic/kubernetes/README.md @@ -11,7 +11,7 @@ Typhoon distributes upstream Kubernetes, architectural conventions, and cluster ## Features -* Kubernetes v1.13.5 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) +* Kubernetes v1.14.0 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) * Single or multi-master, [flannel](https://github.com/coreos/flannel) networking * On-cluster etcd with TLS, [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)-enabled * Ready for Ingress, Prometheus, Grafana, and other optional [addons](https://typhoon.psdn.io/addons/overview/) diff --git a/digital-ocean/fedora-atomic/kubernetes/bootkube.tf b/digital-ocean/fedora-atomic/kubernetes/bootkube.tf index 8f18569a..41dd57bb 100644 --- a/digital-ocean/fedora-atomic/kubernetes/bootkube.tf +++ b/digital-ocean/fedora-atomic/kubernetes/bootkube.tf @@ -1,6 +1,6 @@ # Self-hosted Kubernetes assets (kubeconfig, manifests) module "bootkube" { - source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=bcb015e1052192b166b19a1e3b5da0f25051eaf4" + source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=ce5db83663b1de2096afc1787c2b622bc08987b3" cluster_name = "${var.cluster_name}" api_servers = ["${format("%s.%s", var.cluster_name, var.dns_zone)}"] diff --git a/digital-ocean/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl b/digital-ocean/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl index 23770028..71cf564a 100644 --- a/digital-ocean/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl +++ b/digital-ocean/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl @@ -91,7 +91,7 @@ bootcmd: runcmd: - [systemctl, daemon-reload] - "atomic install --system --name=etcd quay.io/poseidon/etcd:v3.3.12" - - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.13.5" + - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.14.0" - "atomic install --system --name=bootkube quay.io/poseidon/bootkube:v0.14.0" - [systemctl, start, --no-block, etcd.service] - [systemctl, enable, cloud-metadata.service] diff --git a/digital-ocean/fedora-atomic/kubernetes/cloudinit/worker.yaml.tmpl b/digital-ocean/fedora-atomic/kubernetes/cloudinit/worker.yaml.tmpl index 014af57f..8db4e0f4 100644 --- a/digital-ocean/fedora-atomic/kubernetes/cloudinit/worker.yaml.tmpl +++ b/digital-ocean/fedora-atomic/kubernetes/cloudinit/worker.yaml.tmpl @@ -67,7 +67,7 @@ bootcmd: runcmd: - [systemctl, daemon-reload] - [systemctl, enable, cloud-metadata.service] - - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.13.5" + - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.14.0" - [systemctl, enable, kubelet.path] - [systemctl, start, --no-block, kubelet.path] users: diff --git a/docs/advanced/worker-pools.md b/docs/advanced/worker-pools.md index 4569e075..955cd851 100644 --- a/docs/advanced/worker-pools.md +++ b/docs/advanced/worker-pools.md @@ -16,7 +16,7 @@ Create a cluster following the AWS [tutorial](../cl/aws.md#cluster). Define a wo ```tf module "tempest-worker-pool" { - source = "git::https://github.com/poseidon/typhoon//aws/container-linux/kubernetes/workers?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//aws/container-linux/kubernetes/workers?ref=v1.14.0" providers = { aws = "aws.default" @@ -82,7 +82,7 @@ Create a cluster following the Azure [tutorial](../cl/azure.md#cluster). Define ```tf module "ramius-worker-pool" { - source = "git::https://github.com/poseidon/typhoon//azure/container-linux/kubernetes/workers?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//azure/container-linux/kubernetes/workers?ref=v1.14.0" providers = { azurerm = "azurerm.default" @@ -152,7 +152,7 @@ Create a cluster following the Google Cloud [tutorial](../cl/google-cloud.md#clu ```tf module "yavin-worker-pool" { - source = "git::https://github.com/poseidon/typhoon//google-cloud/container-linux/kubernetes/workers?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//google-cloud/container-linux/kubernetes/workers?ref=v1.14.0" providers = { google = "google.default" @@ -187,11 +187,11 @@ Verify a managed instance group of workers joins the cluster within a few minute ``` $ kubectl get nodes NAME STATUS AGE VERSION -yavin-controller-0.c.example-com.internal Ready 6m v1.13.5 -yavin-worker-jrbf.c.example-com.internal Ready 5m v1.13.5 -yavin-worker-mzdm.c.example-com.internal Ready 5m v1.13.5 -yavin-16x-worker-jrbf.c.example-com.internal Ready 3m v1.13.5 -yavin-16x-worker-mzdm.c.example-com.internal Ready 3m v1.13.5 +yavin-controller-0.c.example-com.internal Ready 6m v1.14.0 +yavin-worker-jrbf.c.example-com.internal Ready 5m v1.14.0 +yavin-worker-mzdm.c.example-com.internal Ready 5m v1.14.0 +yavin-16x-worker-jrbf.c.example-com.internal Ready 3m v1.14.0 +yavin-16x-worker-mzdm.c.example-com.internal Ready 3m v1.14.0 ``` ### Variables diff --git a/docs/atomic/aws.md b/docs/atomic/aws.md index e0f575de..3200f55c 100644 --- a/docs/atomic/aws.md +++ b/docs/atomic/aws.md @@ -3,7 +3,7 @@ !!! danger Typhoon for Fedora Atomic will not be updated much beyond Kubernetes v1.13. -In this tutorial, we'll create a Kubernetes v1.13.5 cluster on AWS with Fedora Atomic. +In this tutorial, we'll create a Kubernetes v1.14.0 cluster on AWS with Fedora Atomic. We'll declare a Kubernetes cluster using the Typhoon Terraform module. Then apply the changes to create a VPC, gateway, subnets, security groups, controller instances, worker auto-scaling group, network load balancer, and TLS assets. Instances are provisioned on first boot with cloud-init. @@ -83,7 +83,7 @@ Define a Kubernetes cluster using the module `aws/fedora-atomic/kubernetes`. ```tf module "aws-tempest" { - source = "git::https://github.com/poseidon/typhoon//aws/fedora-atomic/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//aws/fedora-atomic/kubernetes?ref=v1.14.0" providers = { aws = "aws.default" @@ -156,9 +156,9 @@ In 5-10 minutes, the Kubernetes cluster will be ready. $ export KUBECONFIG=/home/user/.secrets/clusters/tempest/auth/kubeconfig $ kubectl get nodes NAME STATUS ROLES AGE VERSION -ip-10-0-3-155 Ready controller,master 10m v1.13.5 -ip-10-0-26-65 Ready node 10m v1.13.5 -ip-10-0-41-21 Ready node 10m v1.13.5 +ip-10-0-3-155 Ready controller,master 10m v1.14.0 +ip-10-0-26-65 Ready node 10m v1.14.0 +ip-10-0-41-21 Ready node 10m v1.14.0 ``` List the pods. diff --git a/docs/atomic/bare-metal.md b/docs/atomic/bare-metal.md index f04acd24..7dde6989 100644 --- a/docs/atomic/bare-metal.md +++ b/docs/atomic/bare-metal.md @@ -3,7 +3,7 @@ !!! danger Typhoon for Fedora Atomic will not be updated much beyond Kubernetes v1.13. -In this tutorial, we'll network boot and provision a Kubernetes v1.13.5 cluster on bare-metal with Fedora Atomic. +In this tutorial, we'll network boot and provision a Kubernetes v1.14.0 cluster on bare-metal with Fedora Atomic. First, we'll deploy a [Matchbox](https://github.com/coreos/matchbox) service and setup a network boot environment. Then, we'll declare a Kubernetes cluster using the Typhoon Terraform module and power on machines. On PXE boot, machines will install Fedora Atomic via kickstart, reboot into the disk install, and provision themselves as Kubernetes controllers or workers via cloud-init. @@ -228,7 +228,7 @@ Define a Kubernetes cluster using the module `bare-metal/fedora-atomic/kubernete ```tf module "bare-metal-mercury" { - source = "git::https://github.com/poseidon/typhoon//bare-metal/fedora-atomic/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//bare-metal/fedora-atomic/kubernetes?ref=v1.14.0" providers = { local = "local.default" @@ -354,9 +354,9 @@ bootkube[5]: Tearing down temporary bootstrap control plane... $ export KUBECONFIG=/home/user/.secrets/clusters/mercury/auth/kubeconfig $ kubectl get nodes NAME STATUS ROLES AGE VERSION -node1.example.com Ready controller,master 10m v1.13.5 -node2.example.com Ready node 10m v1.13.5 -node3.example.com Ready node 10m v1.13.5 +node1.example.com Ready controller,master 10m v1.14.0 +node2.example.com Ready node 10m v1.14.0 +node3.example.com Ready node 10m v1.14.0 ``` List the pods. diff --git a/docs/atomic/digital-ocean.md b/docs/atomic/digital-ocean.md index c33ea514..d8d97ac7 100644 --- a/docs/atomic/digital-ocean.md +++ b/docs/atomic/digital-ocean.md @@ -3,7 +3,7 @@ !!! danger Typhoon for Fedora Atomic will not be updated much beyond Kubernetes v1.13. -In this tutorial, we'll create a Kubernetes v1.13.5 cluster on DigitalOcean with Fedora Atomic. +In this tutorial, we'll create a Kubernetes v1.14.0 cluster on DigitalOcean with Fedora Atomic. We'll declare a Kubernetes cluster using the Typhoon Terraform module. Then apply the changes to create controller droplets, worker droplets, DNS records, tags, and TLS assets. Instances are provisioned on first boot with cloud-init. @@ -77,7 +77,7 @@ Define a Kubernetes cluster using the module `digital-ocean/fedora-atomic/kubern ```tf module "digital-ocean-nemo" { - source = "git::https://github.com/poseidon/typhoon//digital-ocean/fedora-atomic/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//digital-ocean/fedora-atomic/kubernetes?ref=v1.14.0" providers = { digitalocean = "digitalocean.default" @@ -152,9 +152,9 @@ In 3-6 minutes, the Kubernetes cluster will be ready. $ export KUBECONFIG=/home/user/.secrets/clusters/nemo/auth/kubeconfig $ kubectl get nodes NAME STATUS ROLES AGE VERSION -10.132.110.130 Ready controller,master 10m v1.13.5 -10.132.115.81 Ready node 10m v1.13.5 -10.132.124.107 Ready node 10m v1.13.5 +10.132.110.130 Ready controller,master 10m v1.14.0 +10.132.115.81 Ready node 10m v1.14.0 +10.132.124.107 Ready node 10m v1.14.0 ``` List the pods. diff --git a/docs/atomic/google-cloud.md b/docs/atomic/google-cloud.md index 111eb499..fc87174b 100644 --- a/docs/atomic/google-cloud.md +++ b/docs/atomic/google-cloud.md @@ -3,7 +3,7 @@ !!! danger Typhoon for Fedora Atomic will not be updated much beyond Kubernetes v1.13. Fedora does not publish official images for Google Cloud so you must prepare them yourself. Expect rough edges and changes. -In this tutorial, we'll create a Kubernetes v1.13.5 cluster on Google Compute Engine with Fedora Atomic. +In this tutorial, we'll create a Kubernetes v1.14.0 cluster on Google Compute Engine with Fedora Atomic. We'll declare a Kubernetes cluster using the Typhoon Terraform module. Then apply the changes to create a network, firewall rules, health checks, controller instances, worker managed instance group, load balancers, and TLS assets. Instances are provisioned on first boot with cloud-init. @@ -121,7 +121,7 @@ Define a Kubernetes cluster using the module `google-cloud/fedora-atomic/kuberne ```tf module "google-cloud-yavin" { - source = "git::https://github.com/poseidon/typhoon//google-cloud/fedora-atomic/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//google-cloud/fedora-atomic/kubernetes?ref=v1.14.0" providers = { google = "google.default" @@ -197,9 +197,9 @@ In 5-10 minutes, the Kubernetes cluster will be ready. $ export KUBECONFIG=/home/user/.secrets/clusters/yavin/auth/kubeconfig $ kubectl get nodes NAME ROLES STATUS AGE VERSION -yavin-controller-0.c.example-com.internal controller,master Ready 6m v1.13.5 -yavin-worker-jrbf.c.example-com.internal node Ready 5m v1.13.5 -yavin-worker-mzdm.c.example-com.internal node Ready 5m v1.13.5 +yavin-controller-0.c.example-com.internal controller,master Ready 6m v1.14.0 +yavin-worker-jrbf.c.example-com.internal node Ready 5m v1.14.0 +yavin-worker-mzdm.c.example-com.internal node Ready 5m v1.14.0 ``` List the pods. diff --git a/docs/cl/aws.md b/docs/cl/aws.md index 59b80254..a7607f87 100644 --- a/docs/cl/aws.md +++ b/docs/cl/aws.md @@ -1,6 +1,6 @@ # AWS -In this tutorial, we'll create a Kubernetes v1.13.5 cluster on AWS with Container Linux. +In this tutorial, we'll create a Kubernetes v1.14.0 cluster on AWS with Container Linux. We'll declare a Kubernetes cluster using the Typhoon Terraform module. Then apply the changes to create a VPC, gateway, subnets, security groups, controller instances, worker auto-scaling group, network load balancer, and TLS assets. @@ -92,7 +92,7 @@ Define a Kubernetes cluster using the module `aws/container-linux/kubernetes`. ```tf module "aws-tempest" { - source = "git::https://github.com/poseidon/typhoon//aws/container-linux/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//aws/container-linux/kubernetes?ref=v1.14.0" providers = { aws = "aws.default" @@ -165,9 +165,9 @@ In 4-8 minutes, the Kubernetes cluster will be ready. $ export KUBECONFIG=/home/user/.secrets/clusters/tempest/auth/kubeconfig $ kubectl get nodes NAME STATUS ROLES AGE VERSION -ip-10-0-3-155 Ready controller,master 10m v1.13.5 -ip-10-0-26-65 Ready node 10m v1.13.5 -ip-10-0-41-21 Ready node 10m v1.13.5 +ip-10-0-3-155 Ready controller,master 10m v1.14.0 +ip-10-0-26-65 Ready node 10m v1.14.0 +ip-10-0-41-21 Ready node 10m v1.14.0 ``` List the pods. diff --git a/docs/cl/azure.md b/docs/cl/azure.md index 5f128d99..590a5ef5 100644 --- a/docs/cl/azure.md +++ b/docs/cl/azure.md @@ -3,7 +3,7 @@ !!! danger Typhoon for Azure is alpha. For production, use AWS, Google Cloud, or bare-metal. As Azure matures, check [errata](https://github.com/poseidon/typhoon/wiki/Errata) for known shortcomings. -In this tutorial, we'll create a Kubernetes v1.13.5 cluster on Azure with Container Linux. +In this tutorial, we'll create a Kubernetes v1.14.0 cluster on Azure with Container Linux. We'll declare a Kubernetes cluster using the Typhoon Terraform module. Then apply the changes to create a resource group, virtual network, subnets, security groups, controller availability set, worker scale set, load balancer, and TLS assets. @@ -87,7 +87,7 @@ Define a Kubernetes cluster using the module `azure/container-linux/kubernetes`. ```tf module "azure-ramius" { - source = "git::https://github.com/poseidon/typhoon//azure/container-linux/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//azure/container-linux/kubernetes?ref=v1.14.0" providers = { azurerm = "azurerm.default" @@ -161,9 +161,9 @@ In 4-8 minutes, the Kubernetes cluster will be ready. $ export KUBECONFIG=/home/user/.secrets/clusters/ramius/auth/kubeconfig $ kubectl get nodes NAME STATUS ROLES AGE VERSION -ramius-controller-0 Ready controller,master 24m v1.13.5 -ramius-worker-000001 Ready node 25m v1.13.5 -ramius-worker-000002 Ready node 24m v1.13.5 +ramius-controller-0 Ready controller,master 24m v1.14.0 +ramius-worker-000001 Ready node 25m v1.14.0 +ramius-worker-000002 Ready node 24m v1.14.0 ``` List the pods. diff --git a/docs/cl/bare-metal.md b/docs/cl/bare-metal.md index ff49622a..418a8a23 100644 --- a/docs/cl/bare-metal.md +++ b/docs/cl/bare-metal.md @@ -1,6 +1,6 @@ # Bare-Metal -In this tutorial, we'll network boot and provision a Kubernetes v1.13.5 cluster on bare-metal with Container Linux. +In this tutorial, we'll network boot and provision a Kubernetes v1.14.0 cluster on bare-metal with Container Linux. First, we'll deploy a [Matchbox](https://github.com/coreos/matchbox) service and setup a network boot environment. Then, we'll declare a Kubernetes cluster using the Typhoon Terraform module and power on machines. On PXE boot, machines will install Container Linux to disk, reboot into the disk install, and provision themselves as Kubernetes controllers or workers via Ignition. @@ -180,7 +180,7 @@ Define a Kubernetes cluster using the module `bare-metal/container-linux/kuberne ```tf module "bare-metal-mercury" { - source = "git::https://github.com/poseidon/typhoon//bare-metal/container-linux/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//bare-metal/container-linux/kubernetes?ref=v1.14.0" providers = { local = "local.default" @@ -292,9 +292,9 @@ Apply complete! Resources: 55 added, 0 changed, 0 destroyed. To watch the install to disk (until machines reboot from disk), SSH to port 2222. ``` -# before v1.13.5 +# before v1.14.0 $ ssh debug@node1.example.com -# after v1.13.5 +# after v1.14.0 $ ssh -p 2222 core@node1.example.com ``` @@ -319,9 +319,9 @@ bootkube[5]: Tearing down temporary bootstrap control plane... $ export KUBECONFIG=/home/user/.secrets/clusters/mercury/auth/kubeconfig $ kubectl get nodes NAME STATUS ROLES AGE VERSION -node1.example.com Ready controller,master 10m v1.13.5 -node2.example.com Ready node 10m v1.13.5 -node3.example.com Ready node 10m v1.13.5 +node1.example.com Ready controller,master 10m v1.14.0 +node2.example.com Ready node 10m v1.14.0 +node3.example.com Ready node 10m v1.14.0 ``` List the pods. diff --git a/docs/cl/digital-ocean.md b/docs/cl/digital-ocean.md index 7235a42e..7a86097a 100644 --- a/docs/cl/digital-ocean.md +++ b/docs/cl/digital-ocean.md @@ -1,6 +1,6 @@ # Digital Ocean -In this tutorial, we'll create a Kubernetes v1.13.5 cluster on DigitalOcean with Container Linux. +In this tutorial, we'll create a Kubernetes v1.14.0 cluster on DigitalOcean with Container Linux. We'll declare a Kubernetes cluster using the Typhoon Terraform module. Then apply the changes to create controller droplets, worker droplets, DNS records, tags, and TLS assets. @@ -86,7 +86,7 @@ Define a Kubernetes cluster using the module `digital-ocean/container-linux/kube ```tf module "digital-ocean-nemo" { - source = "git::https://github.com/poseidon/typhoon//digital-ocean/container-linux/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//digital-ocean/container-linux/kubernetes?ref=v1.14.0" providers = { digitalocean = "digitalocean.default" @@ -160,9 +160,9 @@ In 3-6 minutes, the Kubernetes cluster will be ready. $ export KUBECONFIG=/home/user/.secrets/clusters/nemo/auth/kubeconfig $ kubectl get nodes NAME STATUS ROLES AGE VERSION -10.132.110.130 Ready controller,master 10m v1.13.5 -10.132.115.81 Ready node 10m v1.13.5 -10.132.124.107 Ready node 10m v1.13.5 +10.132.110.130 Ready controller,master 10m v1.14.0 +10.132.115.81 Ready node 10m v1.14.0 +10.132.124.107 Ready node 10m v1.14.0 ``` List the pods. diff --git a/docs/cl/google-cloud.md b/docs/cl/google-cloud.md index 393d5840..d8710c42 100644 --- a/docs/cl/google-cloud.md +++ b/docs/cl/google-cloud.md @@ -1,6 +1,6 @@ # Google Cloud -In this tutorial, we'll create a Kubernetes v1.13.5 cluster on Google Compute Engine with Container Linux. +In this tutorial, we'll create a Kubernetes v1.14.0 cluster on Google Compute Engine with Container Linux. We'll declare a Kubernetes cluster using the Typhoon Terraform module. Then apply the changes to create a network, firewall rules, health checks, controller instances, worker managed instance group, load balancers, and TLS assets. @@ -93,7 +93,7 @@ Define a Kubernetes cluster using the module `google-cloud/container-linux/kuber ```tf module "google-cloud-yavin" { - source = "git::https://github.com/poseidon/typhoon//google-cloud/container-linux/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//google-cloud/container-linux/kubernetes?ref=v1.14.0" providers = { google = "google.default" @@ -168,9 +168,9 @@ In 4-8 minutes, the Kubernetes cluster will be ready. $ export KUBECONFIG=/home/user/.secrets/clusters/yavin/auth/kubeconfig $ kubectl get nodes NAME ROLES STATUS AGE VERSION -yavin-controller-0.c.example-com.internal controller,master Ready 6m v1.13.5 -yavin-worker-jrbf.c.example-com.internal node Ready 5m v1.13.5 -yavin-worker-mzdm.c.example-com.internal node Ready 5m v1.13.5 +yavin-controller-0.c.example-com.internal controller,master Ready 6m v1.14.0 +yavin-worker-jrbf.c.example-com.internal node Ready 5m v1.14.0 +yavin-worker-mzdm.c.example-com.internal node Ready 5m v1.14.0 ``` List the pods. diff --git a/docs/index.md b/docs/index.md index 77c788c4..d62565c8 100644 --- a/docs/index.md +++ b/docs/index.md @@ -11,7 +11,7 @@ Typhoon distributes upstream Kubernetes, architectural conventions, and cluster ## Features -* Kubernetes v1.13.5 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) +* Kubernetes v1.14.0 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) * Single or multi-master, [Calico](https://www.projectcalico.org/) or [flannel](https://github.com/coreos/flannel) networking * On-cluster etcd with TLS, [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)-enabled, [network policy](https://kubernetes.io/docs/concepts/services-networking/network-policies/) * Advanced features like [worker pools](advanced/worker-pools/), [preemptible](cl/google-cloud/#preemption) workers, and [snippets](advanced/customization/#container-linux) customization @@ -49,7 +49,7 @@ Define a Kubernetes cluster by using the Terraform module for your chosen platfo ```tf module "google-cloud-yavin" { - source = "git::https://github.com/poseidon/typhoon//google-cloud/container-linux/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//google-cloud/container-linux/kubernetes?ref=v1.14.0" providers = { google = "google.default" @@ -90,9 +90,9 @@ In 4-8 minutes (varies by platform), the cluster will be ready. This Google Clou $ export KUBECONFIG=/home/user/.secrets/clusters/yavin/auth/kubeconfig $ kubectl get nodes NAME ROLES STATUS AGE VERSION -yavin-controller-0.c.example-com.internal controller,master Ready 6m v1.13.5 -yavin-worker-jrbf.c.example-com.internal node Ready 5m v1.13.5 -yavin-worker-mzdm.c.example-com.internal node Ready 5m v1.13.5 +yavin-controller-0.c.example-com.internal controller,master Ready 6m v1.14.0 +yavin-worker-jrbf.c.example-com.internal node Ready 5m v1.14.0 +yavin-worker-mzdm.c.example-com.internal node Ready 5m v1.14.0 ``` List the pods. diff --git a/docs/topics/maintenance.md b/docs/topics/maintenance.md index c452bb8b..347f4814 100644 --- a/docs/topics/maintenance.md +++ b/docs/topics/maintenance.md @@ -18,7 +18,7 @@ module "google-cloud-yavin" { } module "bare-metal-mercury" { - source = "git::https://github.com/poseidon/typhoon//bare-metal/container-linux/kubernetes?ref=v1.13.5" + source = "git::https://github.com/poseidon/typhoon//bare-metal/container-linux/kubernetes?ref=v1.14.0" ... } ``` diff --git a/google-cloud/container-linux/kubernetes/README.md b/google-cloud/container-linux/kubernetes/README.md index bbe9188d..74cc0a9c 100644 --- a/google-cloud/container-linux/kubernetes/README.md +++ b/google-cloud/container-linux/kubernetes/README.md @@ -11,7 +11,7 @@ Typhoon distributes upstream Kubernetes, architectural conventions, and cluster ## Features -* Kubernetes v1.13.5 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) +* Kubernetes v1.14.0 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) * Single or multi-master, [Calico](https://www.projectcalico.org/) or [flannel](https://github.com/coreos/flannel) networking * On-cluster etcd with TLS, [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)-enabled, [network policy](https://kubernetes.io/docs/concepts/services-networking/network-policies/) * Advanced features like [worker pools](https://typhoon.psdn.io/advanced/worker-pools/), [preemptible](https://typhoon.psdn.io/cl/google-cloud/#preemption) workers, and [snippets](https://typhoon.psdn.io/advanced/customization/#container-linux) customization diff --git a/google-cloud/container-linux/kubernetes/bootkube.tf b/google-cloud/container-linux/kubernetes/bootkube.tf index b179f4b1..eeca64d6 100644 --- a/google-cloud/container-linux/kubernetes/bootkube.tf +++ b/google-cloud/container-linux/kubernetes/bootkube.tf @@ -1,6 +1,6 @@ # Self-hosted Kubernetes assets (kubeconfig, manifests) module "bootkube" { - source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=bcb015e1052192b166b19a1e3b5da0f25051eaf4" + source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=ce5db83663b1de2096afc1787c2b622bc08987b3" cluster_name = "${var.cluster_name}" api_servers = ["${format("%s.%s", var.cluster_name, var.dns_zone)}"] diff --git a/google-cloud/container-linux/kubernetes/cl/controller.yaml.tmpl b/google-cloud/container-linux/kubernetes/cl/controller.yaml.tmpl index e25ed6b2..9cb60d49 100644 --- a/google-cloud/container-linux/kubernetes/cl/controller.yaml.tmpl +++ b/google-cloud/container-linux/kubernetes/cl/controller.yaml.tmpl @@ -124,7 +124,7 @@ storage: contents: inline: | KUBELET_IMAGE_URL=docker://k8s.gcr.io/hyperkube - KUBELET_IMAGE_TAG=v1.13.5 + KUBELET_IMAGE_TAG=v1.14.0 - path: /etc/sysctl.d/max-user-watches.conf filesystem: root contents: diff --git a/google-cloud/container-linux/kubernetes/workers/cl/worker.yaml.tmpl b/google-cloud/container-linux/kubernetes/workers/cl/worker.yaml.tmpl index 7e00d0ad..e1bf59bf 100644 --- a/google-cloud/container-linux/kubernetes/workers/cl/worker.yaml.tmpl +++ b/google-cloud/container-linux/kubernetes/workers/cl/worker.yaml.tmpl @@ -94,7 +94,7 @@ storage: contents: inline: | KUBELET_IMAGE_URL=docker://k8s.gcr.io/hyperkube - KUBELET_IMAGE_TAG=v1.13.5 + KUBELET_IMAGE_TAG=v1.14.0 - path: /etc/sysctl.d/max-user-watches.conf filesystem: root contents: @@ -112,7 +112,7 @@ storage: --volume config,kind=host,source=/etc/kubernetes \ --mount volume=config,target=/etc/kubernetes \ --insecure-options=image \ - docker://k8s.gcr.io/hyperkube:v1.13.5 \ + docker://k8s.gcr.io/hyperkube:v1.14.0 \ --net=host \ --dns=host \ --exec=/kubectl -- --kubeconfig=/etc/kubernetes/kubeconfig delete node $(hostname) diff --git a/google-cloud/fedora-atomic/kubernetes/README.md b/google-cloud/fedora-atomic/kubernetes/README.md index 3f621dd7..ffb34c71 100644 --- a/google-cloud/fedora-atomic/kubernetes/README.md +++ b/google-cloud/fedora-atomic/kubernetes/README.md @@ -11,7 +11,7 @@ Typhoon distributes upstream Kubernetes, architectural conventions, and cluster ## Features -* Kubernetes v1.13.5 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) +* Kubernetes v1.14.0 (upstream, via [kubernetes-incubator/bootkube](https://github.com/kubernetes-incubator/bootkube)) * Single or multi-master, [Calico](https://www.projectcalico.org/) or [flannel](https://github.com/coreos/flannel) networking * On-cluster etcd with TLS, [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)-enabled, [network policy](https://kubernetes.io/docs/concepts/services-networking/network-policies/) * Advanced features like [worker pools](https://typhoon.psdn.io/advanced/worker-pools/) and [preemptible](https://typhoon.psdn.io/cl/google-cloud/#preemption) workers diff --git a/google-cloud/fedora-atomic/kubernetes/bootkube.tf b/google-cloud/fedora-atomic/kubernetes/bootkube.tf index 21a91dba..851eeedc 100644 --- a/google-cloud/fedora-atomic/kubernetes/bootkube.tf +++ b/google-cloud/fedora-atomic/kubernetes/bootkube.tf @@ -1,6 +1,6 @@ # Self-hosted Kubernetes assets (kubeconfig, manifests) module "bootkube" { - source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=bcb015e1052192b166b19a1e3b5da0f25051eaf4" + source = "git::https://github.com/poseidon/terraform-render-bootkube.git?ref=ce5db83663b1de2096afc1787c2b622bc08987b3" cluster_name = "${var.cluster_name}" api_servers = ["${format("%s.%s", var.cluster_name, var.dns_zone)}"] diff --git a/google-cloud/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl b/google-cloud/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl index 8afdfc05..5949d55d 100644 --- a/google-cloud/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl +++ b/google-cloud/fedora-atomic/kubernetes/cloudinit/controller.yaml.tmpl @@ -79,7 +79,7 @@ runcmd: - [systemctl, daemon-reload] - [systemctl, restart, NetworkManager] - "atomic install --system --name=etcd quay.io/poseidon/etcd:v3.3.12" - - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.13.5" + - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.14.0" - "atomic install --system --name=bootkube quay.io/poseidon/bootkube:v0.14.0" - [systemctl, start, --no-block, etcd.service] - [systemctl, start, --no-block, kubelet.service] diff --git a/google-cloud/fedora-atomic/kubernetes/workers/cloudinit/worker.yaml.tmpl b/google-cloud/fedora-atomic/kubernetes/workers/cloudinit/worker.yaml.tmpl index a05cd877..373a7163 100644 --- a/google-cloud/fedora-atomic/kubernetes/workers/cloudinit/worker.yaml.tmpl +++ b/google-cloud/fedora-atomic/kubernetes/workers/cloudinit/worker.yaml.tmpl @@ -54,7 +54,7 @@ bootcmd: runcmd: - [systemctl, daemon-reload] - [systemctl, restart, NetworkManager] - - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.13.5" + - "atomic install --system --name=kubelet quay.io/poseidon/kubelet:v1.14.0" - [systemctl, start, --no-block, kubelet.service] users: - default