Added logging to file for cluster autoscaler

This commit is contained in:
Piotr Szczesniak 2016-06-02 13:51:40 +02:00
parent 3b908a538d
commit 66fce8fe44
5 changed files with 34 additions and 12 deletions

View File

@ -615,6 +615,7 @@ function start-kube-scheduler {
# Remove salt comments and replace variables with values. # Remove salt comments and replace variables with values.
local -r src_file="${KUBE_HOME}/kube-manifests/kubernetes/gci-trusty/kube-scheduler.manifest" local -r src_file="${KUBE_HOME}/kube-manifests/kubernetes/gci-trusty/kube-scheduler.manifest"
remove-salt-config-comments "${src_file}" remove-salt-config-comments "${src_file}"
sed -i -e "s@{{params}}@${params}@g" "${src_file}" sed -i -e "s@{{params}}@${params}@g" "${src_file}"
sed -i -e "s@{{pillar\['kube_docker_registry'\]}}@${DOCKER_REGISTRY}@g" "${src_file}" sed -i -e "s@{{pillar\['kube_docker_registry'\]}}@${DOCKER_REGISTRY}@g" "${src_file}"
sed -i -e "s@{{pillar\['kube-scheduler_docker_tag'\]}}@${kube_scheduler_docker_tag}@g" "${src_file}" sed -i -e "s@{{pillar\['kube-scheduler_docker_tag'\]}}@${kube_scheduler_docker_tag}@g" "${src_file}"
@ -624,19 +625,23 @@ function start-kube-scheduler {
# Starts cluster autoscaler. # Starts cluster autoscaler.
function start-cluster-autoscaler { function start-cluster-autoscaler {
if [ "${ENABLE_NODE_AUTOSCALER:-}" = "true" ]; then if [ "${ENABLE_NODE_AUTOSCALER:-}" = "true" ]; then
echo "Start kubernetes cluster autoscaler"
prepare-log-file /var/log/cluster-autoscaler.log
# Remove salt comments and replace variables with values # Remove salt comments and replace variables with values
src_file="${KUBE_HOME}/kube-manifests/kubernetes/gci-trusty/cluster-autoscaler.manifest" local -r src_file="${KUBE_HOME}/kube-manifests/kubernetes/gci-trusty/cluster-autoscaler.manifest"
remove-salt-config-comments "${src_file}" remove-salt-config-comments "${src_file}"
local params=`sed 's/^/"/;s/ /","/g;s/$/",/' <<< "${AUTOSCALER_MIG_CONFIG}"` local params="${AUTOSCALER_MIG_CONFIG}"
if [[ -n "${PROJECT_ID:-}" && -n "${TOKEN_URL:-}" && -n "${TOKEN_BODY:-}" && -n "${NODE_NETWORK:-}" ]]; then if [[ -n "${PROJECT_ID:-}" && -n "${TOKEN_URL:-}" && -n "${TOKEN_BODY:-}" && -n "${NODE_NETWORK:-}" ]]; then
params+=" --cloud-config=/etc/gce.conf" params+=" --cloud-config=/etc/gce.conf"
fi fi
sed -i -e "s@\"{{param}}\",@${params}@g" "${src_file}" sed -i -e "s@{{params}}@${params}@g" "${src_file}"
sed -i -e "s@{{cloud_config_mount}}@${CLOUD_CONFIG_MOUNT}@g" "${src_file}" sed -i -e "s@{{cloud_config_mount}}@${CLOUD_CONFIG_MOUNT}@g" "${src_file}"
sed -i -e "s@{{cloud_config_volume}}@${CLOUD_CONFIG_VOLUME}@g" "${src_file}" sed -i -e "s@{{cloud_config_volume}}@${CLOUD_CONFIG_VOLUME}@g" "${src_file}"
sed -i -e "s@{%.*%}@@g" "${src_file}" sed -i -e "s@{%.*%}@@g" "${src_file}"
cp "${src_file}" /etc/kubernetes/manifests cp "${src_file}" /etc/kubernetes/manifests
fi fi
} }

View File

@ -617,15 +617,18 @@ start_kube_scheduler() {
# Starts k8s cluster autoscaler. # Starts k8s cluster autoscaler.
start_cluster_autoscaler() { start_cluster_autoscaler() {
if [ "${ENABLE_NODE_AUTOSCALER:-}" = "true" ]; then if [ "${ENABLE_NODE_AUTOSCALER:-}" = "true" ]; then
prepare-log-file /var/log/cluster-autoscaler.log
# Remove salt comments and replace variables with values # Remove salt comments and replace variables with values
src_file="${kube_home}/kube-manifests/kubernetes/gci-trusty/cluster-autoscaler.manifest" src_file="${kube_home}/kube-manifests/kubernetes/gci-trusty/cluster-autoscaler.manifest"
remove_salt_config_comments "${src_file}" remove_salt_config_comments "${src_file}"
params="$(echo "${AUTOSCALER_MIG_CONFIG}" | sed 's/^/"/;s/ /","/g;s/$/",/')"
params="${AUTOSCALER_MIG_CONFIG}"
if [ -n "${PROJECT_ID:-}" ] && [ -n "${TOKEN_URL:-}" ] && [ -n "${TOKEN_BODY:-}" ] && [ -n "${NODE_NETWORK:-}" ]; then if [ -n "${PROJECT_ID:-}" ] && [ -n "${TOKEN_URL:-}" ] && [ -n "${TOKEN_BODY:-}" ] && [ -n "${NODE_NETWORK:-}" ]; then
params="${params} --cloud-config=/etc/gce.conf" params="${params} --cloud-config=/etc/gce.conf"
fi fi
sed -i -e "s@\"{{param}}\",@${params}@g" "${src_file}" sed -i -e "s@{{params}}@${params}@g" "${src_file}"
sed -i -e "s@{{cloud_config_mount}}@${CLOUD_CONFIG_MOUNT}@g" "${src_file}" sed -i -e "s@{{cloud_config_mount}}@${CLOUD_CONFIG_MOUNT}@g" "${src_file}"
sed -i -e "s@{{cloud_config_volume}}@${CLOUD_CONFIG_VOLUME}@g" "${src_file}" sed -i -e "s@{{cloud_config_volume}}@${CLOUD_CONFIG_VOLUME}@g" "${src_file}"
cp "${src_file}" /etc/kubernetes/manifests cp "${src_file}" /etc/kubernetes/manifests

View File

@ -77,7 +77,7 @@ function save-logs() {
readonly master_ssh_supported_providers="gce aws kubemark" readonly master_ssh_supported_providers="gce aws kubemark"
readonly node_ssh_supported_providers="gce gke aws" readonly node_ssh_supported_providers="gce gke aws"
readonly master_logfiles="kube-apiserver kube-scheduler kube-controller-manager etcd glbc" readonly master_logfiles="kube-apiserver kube-scheduler kube-controller-manager etcd glbc cluster-autoscaler"
readonly node_logfiles="kube-proxy" readonly node_logfiles="kube-proxy"
readonly aws_logfiles="cloud-init-output" readonly aws_logfiles="cloud-init-output"
readonly gce_logfiles="startupscript" readonly gce_logfiles="startupscript"

View File

@ -27,12 +27,9 @@
"name": "cluster-autoscaler", "name": "cluster-autoscaler",
"image": "gcr.io/google_containers/cluster-autoscaler:v0.1.1", "image": "gcr.io/google_containers/cluster-autoscaler:v0.1.1",
"command": [ "command": [
"./cluster-autoscaler", "/bin/sh",
"--kubernetes=http://127.0.0.1:8080?inClusterConfig=f", "-c",
{% for param in params.split(" ") %} "./cluster-autoscaler --kubernetes=http://127.0.0.1:8080?inClusterConfig=f -v=4 {{params}} 1>>/var/log/cluster-autoscaler.log 2>&1"
"{{param}}",
{% endfor %}
"-v=4"
], ],
"resources": { "resources": {
"limits": { "limits": {
@ -50,6 +47,11 @@
"name": "ssl-certs", "name": "ssl-certs",
"readOnly": true, "readOnly": true,
"mountPath": "/etc/ssl/certs" "mountPath": "/etc/ssl/certs"
},
{
"name": "logfile",
"mountPath": "/var/log/cluster-autoscaler.log",
"readOnly": false
} }
], ],
"terminationMessagePath": "/dev/termination-log", "terminationMessagePath": "/dev/termination-log",
@ -63,6 +65,12 @@
"hostPath": { "hostPath": {
"path": "/etc/ssl/certs" "path": "/etc/ssl/certs"
} }
},
{
"name": "logfile",
"hostPath": {
"path": "/var/log/cluster-autoscaler.log"
}
} }
], ],
"restartPolicy": "Always" "restartPolicy": "Always"

View File

@ -17,3 +17,9 @@
- require: - require:
- service: docker - service: docker
- service: kubelet - service: kubelet
/var/log/cluster-autoscaler.log:
file.managed:
- user: root
- group: root
- mode: 644