Merge pull request #92063 from jingxu97/June/docker

Add WINDOWS_CONTAINER_RUNTIME env variable and set default to docker for windows node
This commit is contained in:
Kubernetes Prow Robot 2020-06-14 18:53:56 -07:00 committed by GitHub
commit 29f96dfa2d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 21 additions and 7 deletions

View File

@ -95,6 +95,8 @@ export KUBELET_TEST_ARGS=${KUBE_KUBELET_EXTRA_ARGS:-}
# Default container runtime
export CONTAINER_RUNTIME=${KUBE_CONTAINER_RUNTIME:-containerd}
# Default container runtime for windows
export WINDOWS_CONTAINER_RUNTIME=${KUBE_WINDOWS_CONTAINER_RUNTIME:-docker}
# Set default values with override
if [[ "${CONTAINER_RUNTIME}" == "docker" ]]; then

View File

@ -96,8 +96,10 @@ export NODE_IMAGE=${KUBE_GCE_NODE_IMAGE:-${GCI_VERSION}}
export NODE_IMAGE_PROJECT=${KUBE_GCE_NODE_PROJECT:-cos-cloud}
export NODE_SERVICE_ACCOUNT=${KUBE_GCE_NODE_SERVICE_ACCOUNT:-default}
# Default container runtime
# Default container runtime for linux
export CONTAINER_RUNTIME=${KUBE_CONTAINER_RUNTIME:-containerd}
# Default container runtime for windows
export WINDOWS_CONTAINER_RUNTIME=${KUBE_WINDOWS_CONTAINER_RUNTIME:-docker}
# Set default values with override
if [[ "${CONTAINER_RUNTIME}" == "docker" ]]; then

View File

@ -897,11 +897,11 @@ function construct-windows-kubelet-flags {
# Force disable KubeletPodResources feature on Windows until #78628 is fixed.
flags+=" --feature-gates=KubeletPodResources=false"
if [[ "${CONTAINER_RUNTIME:-}" != "docker" ]]; then
if [[ "${WINDOWS_CONTAINER_RUNTIME:-}" != "docker" ]]; then
flags+=" --container-runtime=remote"
if [[ "${CONTAINER_RUNTIME}" == "containerd" ]]; then
CONTAINER_RUNTIME_ENDPOINT=${KUBE_CONTAINER_RUNTIME_ENDPOINT:-npipe:////./pipe/containerd-containerd}
flags+=" --container-runtime-endpoint=${CONTAINER_RUNTIME_ENDPOINT}"
if [[ "${WINDOWS_CONTAINER_RUNTIME}" == "containerd" ]]; then
WINDOWS_CONTAINER_RUNTIME_ENDPOINT=${KUBE_WINDOWS_CONTAINER_RUNTIME_ENDPOINT:-npipe:////./pipe/containerd-containerd}
flags+=" --container-runtime-endpoint=${WINDOWS_CONTAINER_RUNTIME_ENDPOINT}"
fi
fi
@ -1550,6 +1550,8 @@ CNI_DIR: $(yaml-quote ${WINDOWS_CNI_DIR})
CNI_CONFIG_DIR: $(yaml-quote ${WINDOWS_CNI_CONFIG_DIR})
WINDOWS_CNI_STORAGE_PATH: $(yaml-quote ${WINDOWS_CNI_STORAGE_PATH})
WINDOWS_CNI_VERSION: $(yaml-quote ${WINDOWS_CNI_VERSION})
WINDOWS_CONTAINER_RUNTIME: $(yaml-quote ${WINDOWS_CONTAINER_RUNTIME})
WINDOWS_CONTAINER_RUNTIME_ENDPOINT: $(yaml-quote ${WINDOWS_CONTAINER_RUNTIME_ENDPOINT})
MANIFESTS_DIR: $(yaml-quote ${WINDOWS_MANIFESTS_DIR})
PKI_DIR: $(yaml-quote ${WINDOWS_PKI_DIR})
CA_FILE_PATH: $(yaml-quote ${WINDOWS_CA_FILE})

View File

@ -241,6 +241,14 @@ function Set_CurrentShellEnvironmentVar {
# Sets environment variables used by Kubernetes binaries and by other functions
# in this module. Depends on numerous ${kube_env} keys.
function Set-EnvironmentVars {
if ($kube_env.ContainsKey('WINDOWS_CONTAINER_RUNTIME')) {
$container_runtime = ${kube_env}['WINDOWS_CONTAINER_RUNTIME']
$container_runtime_endpoint = ${kube_env}['WINDOWS_CONTAINER_RUNTIME_ENDPOINT']
} else {
Log-Output "ERROR: WINDOWS_CONTAINER_RUNTIME not set in kube-env, falling back in CONTAINER_RUNTIME"
$container_runtime = ${kube_env}['CONTAINER_RUNTIME']
$container_runtime_endpoint = ${kube_env}['CONTAINER_RUNTIME_ENDPOINT']
}
# Turning the kube-env values into environment variables is not required but
# it makes debugging this script easier, and it also makes the syntax a lot
# easier (${env:K8S_DIR} can be expanded within a string but
@ -268,8 +276,8 @@ function Set-EnvironmentVars {
"KUBELET_CERT_PATH" = ${kube_env}['PKI_DIR'] + '\kubelet.crt'
"KUBELET_KEY_PATH" = ${kube_env}['PKI_DIR'] + '\kubelet.key'
"CONTAINER_RUNTIME" = ${kube_env}['CONTAINER_RUNTIME']
"CONTAINER_RUNTIME_ENDPOINT" = ${kube_env}['CONTAINER_RUNTIME_ENDPOINT']
"CONTAINER_RUNTIME" = $container_runtime
"CONTAINER_RUNTIME_ENDPOINT" = $container_runtime_endpoint
'LICENSE_DIR' = 'C:\Program Files\Google\Compute Engine\THIRD_PARTY_NOTICES'
}