diff --git a/cluster/gce/config-default.sh b/cluster/gce/config-default.sh index 3d95db434ec..569a20be127 100755 --- a/cluster/gce/config-default.sh +++ b/cluster/gce/config-default.sh @@ -254,12 +254,16 @@ if [ ${ENABLE_IP_ALIASES} = true ]; then PROVIDER_VARS="${PROVIDER_VARS:-} ENABLE_IP_ALIASES" fi - # Enable GCE Alpha features. if [[ -n "${GCE_ALPHA_FEATURES:-}" ]]; then PROVIDER_VARS="${PROVIDER_VARS:-} GCE_ALPHA_FEATURES" fi +# Disable Docker live-restore. +if [[ -n "${DISABLE_DOCKER_LIVE_RESTORE:-}" ]]; then + PROVIDER_VARS="${PROVIDER_VARS:-} DISABLE_DOCKER_LIVE_RESTORE" +fi + # Override default GLBC image if [[ -n "${GCE_GLBC_IMAGE:-}" ]]; then PROVIDER_VARS="${PROVIDER_VARS:-} GCE_GLBC_IMAGE" diff --git a/cluster/gce/config-test.sh b/cluster/gce/config-test.sh index aed8d3ea673..428a6dd0bac 100755 --- a/cluster/gce/config-test.sh +++ b/cluster/gce/config-test.sh @@ -302,6 +302,11 @@ if [[ -n "${GCE_ALPHA_FEATURES:-}" ]]; then PROVIDER_VARS="${PROVIDER_VARS:-} GCE_ALPHA_FEATURES" fi +# Disable Docker live-restore. +if [[ -n "${DISABLE_DOCKER_LIVE_RESTORE:-}" ]]; then + PROVIDER_VARS="${PROVIDER_VARS:-} DISABLE_DOCKER_LIVE_RESTORE" +fi + # Override default GLBC image if [[ -n "${GCE_GLBC_IMAGE:-}" ]]; then PROVIDER_VARS="${PROVIDER_VARS:-} GCE_GLBC_IMAGE" diff --git a/cluster/gce/gci/configure-helper.sh b/cluster/gce/gci/configure-helper.sh index 63d5b8c2f31..c7259b8f526 100644 --- a/cluster/gce/gci/configure-helper.sh +++ b/cluster/gce/gci/configure-helper.sh @@ -855,6 +855,12 @@ function assemble-docker-flags { docker_opts+=" --log-opt=max-size=${DOCKER_LOG_MAX_SIZE:-10m}" docker_opts+=" --log-opt=max-file=${DOCKER_LOG_MAX_FILE:-5}" + # Disable live-restore if the environment variable is set. + + if [[ "${DISABLE_DOCKER_LIVE_RESTORE:-false}" == "true" ]]; then + docker_opts+=" --live-restore=false" + fi + echo "DOCKER_OPTS=\"${docker_opts} ${EXTRA_DOCKER_OPTS:-}\"" > /etc/default/docker if [[ "${use_net_plugin}" == "true" ]]; then diff --git a/pkg/kubelet/dockershim/docker_service.go b/pkg/kubelet/dockershim/docker_service.go index b7ef158a5d4..b8525de17de 100644 --- a/pkg/kubelet/dockershim/docker_service.go +++ b/pkg/kubelet/dockershim/docker_service.go @@ -202,6 +202,7 @@ func NewDockerService(client libdocker.Interface, podSandboxImage string, stream // NOTE: cgroup driver is only detectable in docker 1.11+ cgroupDriver := defaultCgroupDriver dockerInfo, err := ds.client.Info() + glog.Infof("Docker Info: %+v", dockerInfo) if err != nil { glog.Errorf("Failed to execute Info() call to the Docker client: %v", err) glog.Warningf("Falling back to use the default driver: %q", cgroupDriver)