From b5c1eff3757a94492b006fe792c5cc4ab5213bc2 Mon Sep 17 00:00:00 2001 From: Shyam Jeedigunta Date: Tue, 28 Nov 2017 11:55:44 +0100 Subject: [PATCH] Allow choosing min CPU architecture for master VM on gce --- cluster/gce/config-default.sh | 1 + cluster/gce/config-test.sh | 1 + cluster/gce/container-linux/master-helper.sh | 6 ++++++ cluster/gce/gci/master-helper.sh | 6 ++++++ 4 files changed, 14 insertions(+) diff --git a/cluster/gce/config-default.sh b/cluster/gce/config-default.sh index 24b4c389a99..78aa9740b64 100755 --- a/cluster/gce/config-default.sh +++ b/cluster/gce/config-default.sh @@ -30,6 +30,7 @@ REGIONAL_KUBE_ADDONS=${REGIONAL_KUBE_ADDONS:-true} NODE_SIZE=${NODE_SIZE:-n1-standard-2} NUM_NODES=${NUM_NODES:-3} MASTER_SIZE=${MASTER_SIZE:-n1-standard-$(get-master-size)} +MASTER_MIN_CPU_ARCHITECTURE=${MASTER_MIN_CPU_ARCHITECTURE:-} # To allow choosing better architectures. MASTER_DISK_TYPE=pd-ssd MASTER_DISK_SIZE=${MASTER_DISK_SIZE:-$(get-master-disk-size)} MASTER_ROOT_DISK_SIZE=${MASTER_ROOT_DISK_SIZE:-$(get-master-root-disk-size)} diff --git a/cluster/gce/config-test.sh b/cluster/gce/config-test.sh index f9f223e1e9c..12a45ddad8d 100755 --- a/cluster/gce/config-test.sh +++ b/cluster/gce/config-test.sh @@ -30,6 +30,7 @@ REGIONAL_KUBE_ADDONS=${REGIONAL_KUBE_ADDONS:-true} NODE_SIZE=${NODE_SIZE:-n1-standard-2} NUM_NODES=${NUM_NODES:-3} MASTER_SIZE=${MASTER_SIZE:-n1-standard-$(get-master-size)} +MASTER_MIN_CPU_ARCHITECTURE=${MASTER_MIN_CPU_ARCHITECTURE:-} # To allow choosing better architectures. MASTER_DISK_TYPE=pd-ssd MASTER_DISK_SIZE=${MASTER_DISK_SIZE:-$(get-master-disk-size)} MASTER_ROOT_DISK_SIZE=${MASTER_ROOT_DISK_SIZE:-$(get-master-root-disk-size)} diff --git a/cluster/gce/container-linux/master-helper.sh b/cluster/gce/container-linux/master-helper.sh index e727349f2c7..c9b74613b92 100755 --- a/cluster/gce/container-linux/master-helper.sh +++ b/cluster/gce/container-linux/master-helper.sh @@ -79,6 +79,11 @@ function create-master-instance-internal() { preemptible_master="--preemptible --maintenance-policy TERMINATE" fi + local min_cpu_platform="" + if [[ -n "${MASTER_MIN_CPU_ARCHITECTURE:-}" ]]; then + min_cpu_platform="--min-cpu-platform=${MASTER_MIN_CPU_ARCHITECTURE}" + fi + local network=$(make-gcloud-network-argument \ "${NETWORK_PROJECT}" "${REGION}" "${NETWORK}" "${SUBNETWORK:-}" \ "${address:-}" "${ENABLE_IP_ALIASES:-}" "${IP_ALIAS_SIZE:-}") @@ -107,6 +112,7 @@ function create-master-instance-internal() { --disk "${disk}" \ --boot-disk-size "${MASTER_ROOT_DISK_SIZE}" \ ${preemptible_master} \ + ${min_cpu_platform} \ ${network} 2>&1); then echo "${result}" >&2 return 0 diff --git a/cluster/gce/gci/master-helper.sh b/cluster/gce/gci/master-helper.sh index def861d20bb..e08484317c9 100755 --- a/cluster/gce/gci/master-helper.sh +++ b/cluster/gce/gci/master-helper.sh @@ -94,6 +94,11 @@ function create-master-instance-internal() { preemptible_master="--preemptible --maintenance-policy TERMINATE" fi + local min_cpu_platform="" + if [[ -n "${MASTER_MIN_CPU_ARCHITECTURE:-}" ]]; then + min_cpu_platform="--min-cpu-platform=${MASTER_MIN_CPU_ARCHITECTURE}" + fi + local network=$(make-gcloud-network-argument \ "${NETWORK_PROJECT}" "${REGION}" "${NETWORK}" "${SUBNETWORK:-}" \ "${address:-}" "${ENABLE_IP_ALIASES:-}" "${IP_ALIAS_SIZE:-}") @@ -127,6 +132,7 @@ function create-master-instance-internal() { --disk "${disk}" \ --boot-disk-size "${MASTER_ROOT_DISK_SIZE}" \ ${preemptible_master} \ + ${min_cpu_platform} \ ${network} 2>&1); then echo "${result}" >&2 return 0