From 4e64c4586eb4f6ae40ebffdf426c555a2c71a7d5 Mon Sep 17 00:00:00 2001 From: Justin Santa Barbara Date: Thu, 25 Feb 2016 00:10:33 -0500 Subject: [PATCH] AWS: Set OS defaults for kube 1.2 Default distro is jessie, due to the support situation with Ubuntu distros. Default ubuntu distro is wily. Update the docs to reflect the recommended distros with kube-up, and to encourage contributions for other distros. --- cluster/aws/config-default.sh | 2 +- cluster/aws/config-test.sh | 2 +- cluster/aws/options.md | 20 +++++++++++++++----- cluster/aws/util.sh | 4 ++-- 4 files changed, 19 insertions(+), 9 deletions(-) diff --git a/cluster/aws/config-default.sh b/cluster/aws/config-default.sh index e8ed83338ec..7b95aa6fa3a 100644 --- a/cluster/aws/config-default.sh +++ b/cluster/aws/config-default.sh @@ -128,7 +128,7 @@ ADMISSION_CONTROL=NamespaceLifecycle,LimitRanger,SecurityContextDeny,ServiceAcco ENABLE_NODE_PUBLIC_IP=${KUBE_ENABLE_NODE_PUBLIC_IP:-true} # OS options for minions -KUBE_OS_DISTRIBUTION="${KUBE_OS_DISTRIBUTION:-vivid}" +KUBE_OS_DISTRIBUTION="${KUBE_OS_DISTRIBUTION:-jessie}" KUBE_NODE_IMAGE="${KUBE_NODE_IMAGE:-}" COREOS_CHANNEL="${COREOS_CHANNEL:-alpha}" CONTAINER_RUNTIME="${KUBE_CONTAINER_RUNTIME:-docker}" diff --git a/cluster/aws/config-test.sh b/cluster/aws/config-test.sh index a105b7d8a21..adbb1ec4b9d 100755 --- a/cluster/aws/config-test.sh +++ b/cluster/aws/config-test.sh @@ -124,7 +124,7 @@ ADMISSION_CONTROL=NamespaceLifecycle,LimitRanger,SecurityContextDeny,ServiceAcco ENABLE_NODE_PUBLIC_IP=${KUBE_ENABLE_NODE_PUBLIC_IP:-true} # OS options for minions -KUBE_OS_DISTRIBUTION="${KUBE_OS_DISTRIBUTION:-vivid}" +KUBE_OS_DISTRIBUTION="${KUBE_OS_DISTRIBUTION:-jessie}" KUBE_NODE_IMAGE="${KUBE_NODE_IMAGE:-}" COREOS_CHANNEL="${COREOS_CHANNEL:-alpha}" CONTAINER_RUNTIME="${KUBE_CONTAINER_RUNTIME:-docker}" diff --git a/cluster/aws/options.md b/cluster/aws/options.md index 358c9e30caf..3a1837cfbe6 100644 --- a/cluster/aws/options.md +++ b/cluster/aws/options.md @@ -79,14 +79,24 @@ If your machines don't have any ephemeral disks, this will default to the aufs d **KUBE_OS_DISTRIBUTION** -The distribution to use. Valid options: `trusty`, `vivid`, `coreos`, `wheezy`, `jessie` +The distribution to use. Defaults to `jessie` -Defaults to vivid (Ubuntu Vivid Vervet), which has a modern kernel and does not require updating or a reboot. +Supported options: -`coreos` is also a good option. +* `jessie`: Debian Jessie, running a custom kubernetes-optimized image. Should + be supported until 2018 by the debian-security team, and until 2020 by the + debian-LTS team. +* `wily`: Ubuntu Wily. Wily is not an LTS release, and OS support is due to + end in July 2016. +* `vivid`: Ubuntu Vivid. Vivid OS support ended in early February 2016. -Other options may require reboots, updates or configuration, and should be used only if you have a compelling -requirement to do so. +Given the support situation, we recommend using Debian Jessie. In Kubernetes +1.3 Ubuntu should have their next LTS release out, so we should be able to +recommend Ubuntu again at that time. + +Using kube-up with other operating systems is neither supported nor +recommended. But we would welcome increased OS support for kube-up, so please +contribute! **NON_MASQUERADE_CIDR** diff --git a/cluster/aws/util.sh b/cluster/aws/util.sh index 882858ebb6e..c413b23c3db 100755 --- a/cluster/aws/util.sh +++ b/cluster/aws/util.sh @@ -48,9 +48,9 @@ MASTER_DISK_ID= # Well known tags TAG_KEY_MASTER_IP="kubernetes.io/master-ip" -# Defaults: ubuntu -> vivid +# Defaults: ubuntu -> wily if [[ "${KUBE_OS_DISTRIBUTION}" == "ubuntu" ]]; then - KUBE_OS_DISTRIBUTION=vivid + KUBE_OS_DISTRIBUTION=wily fi # For GCE script compatibility