Merge pull request #26413 from mwielgus/gci-ca

Automatic merge from submit-queue

Support for cluster autoscaler in GCE Trusty and GCI images

Fixes: #26346
Ref: #26197

cc: @fgrzadkowski  @vulpecula @piosz @jszczepkowski
This commit is contained in:
k8s-merge-robot 2016-05-27 06:58:15 -07:00
commit e7269a13ff
5 changed files with 35 additions and 0 deletions

View File

@ -916,6 +916,7 @@ function kube::release::package_kube_manifests_tarball() {
mkdir -p "${dst_dir}"
local salt_dir="${KUBE_ROOT}/cluster/saltbase/salt"
cp "${salt_dir}/cluster-autoscaler/cluster-autoscaler.manifest" "${dst_dir}/"
cp "${salt_dir}/fluentd-es/fluentd-es.yaml" "${release_stage}/"
cp "${salt_dir}/fluentd-gcp/fluentd-gcp.yaml" "${release_stage}/"
cp "${salt_dir}/kube-registry-proxy/kube-registry-proxy.yaml" "${release_stage}/"

View File

@ -622,6 +622,22 @@ function start-kube-scheduler {
cp "${src_file}" /etc/kubernetes/manifests
}
# Starts cluster autoscaler.
function start-cluster-autoscaler {
if [ "${ENABLE_NODE_AUTOSCALER:-}" = "true" ]; then
touch /etc/kubernetes/start-cluster-autoscaler-enabled
# Remove salt comments and replace variables with values
src_file="${KUBE_HOME}/kube-manifests/kubernetes/gci-trusty/cluster-autoscaler.manifest"
remove-salt-config-comments "${src_file}"
local params=`sed 's/^/"/;s/ /","/g;s/$/",/' <<< "${AUTOSCALER_MIG_CONFIG}"`
sed -i -e "s@\"{{param}}\",@${params}@g" "${src_file}"
sed -i -e "s@{%.*%}@@g" "${src_file}"
cp "${src_file}" /etc/kubernetes/manifests
fi
}
# A helper function for copying addon manifests and set dir/files
# permissions.
#
@ -812,6 +828,7 @@ if [[ "${KUBERNETES_MASTER:-}" == "true" ]]; then
start-kube-controller-manager
start-kube-scheduler
start-kube-addons
start-cluster-autoscaler
else
start-kube-proxy
# Kube-registry-proxy.

View File

@ -614,6 +614,20 @@ start_kube_scheduler() {
cp "${src_file}" /etc/kubernetes/manifests
}
# Starts k8s cluster autoscaler.
start_cluster_autoscaler() {
if [ "${ENABLE_NODE_AUTOSCALER:-}" = "true" ]; then
# Remove salt comments and replace variables with values
src_file="${kube_home}/kube-manifests/kubernetes/gci-trusty/cluster-autoscaler.manifest"
remove_salt_config_comments "${src_file}"
local params=`sed 's/^/"/;s/ /","/g;s/$/",/' <<< "${AUTOSCALER_MIG_CONFIG}"`
sed -i -e "s@\"{{param}}\",@${params}@g" "${src_file}"
sed -i -e "s@{%.*%}@@g" "${src_file}"
cp "${src_file}" /etc/kubernetes/manifests
fi
}
# Starts a fluentd static pod for logging.
start_fluentd() {
if [ "${ENABLE_NODE_LOGGING:-}" = "true" ]; then

View File

@ -191,6 +191,7 @@ script
start_kube_controller_manager
start_kube_scheduler
start_kube_addons
start_cluster_autoscaler
} 2>&1 | logger --priority daemon.info -t ${UPSTART_JOB}
end script

View File

@ -1,3 +1,4 @@
{% if pillar.get('enable_node_autoscaler', '').lower() == 'true' %}
{% set params = pillar['autoscaler_mig_config'] -%}
{
"kind": "Pod",
@ -56,3 +57,4 @@
"restartPolicy": "Always"
}
}
{% endif %}