diff --git a/cluster/gce/config-default.sh b/cluster/gce/config-default.sh index 566c4c75d48..8307780fc0e 100755 --- a/cluster/gce/config-default.sh +++ b/cluster/gce/config-default.sh @@ -79,22 +79,30 @@ fi # you are updating the os image versions, update this variable. # Also please update corresponding image for node e2e at: # https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/jenkins/image-config.yaml -GCI_VERSION=${KUBE_GCI_VERSION:-cos-beta-73-11647-64-0} +GCI_VERSION=${KUBE_GCI_VERSION:-cos-73-11647-163-0} MASTER_IMAGE=${KUBE_GCE_MASTER_IMAGE:-} MASTER_IMAGE_PROJECT=${KUBE_GCE_MASTER_PROJECT:-cos-cloud} NODE_IMAGE=${KUBE_GCE_NODE_IMAGE:-${GCI_VERSION}} NODE_IMAGE_PROJECT=${KUBE_GCE_NODE_PROJECT:-cos-cloud} NODE_SERVICE_ACCOUNT=${KUBE_GCE_NODE_SERVICE_ACCOUNT:-default} + +# KUBELET_TEST_ARGS are extra arguments passed to kubelet. +KUBELET_TEST_ARGS=${KUBE_KUBELET_EXTRA_ARGS:-} CONTAINER_RUNTIME=${KUBE_CONTAINER_RUNTIME:-docker} CONTAINER_RUNTIME_ENDPOINT=${KUBE_CONTAINER_RUNTIME_ENDPOINT:-} CONTAINER_RUNTIME_NAME=${KUBE_CONTAINER_RUNTIME_NAME:-} LOAD_IMAGE_COMMAND=${KUBE_LOAD_IMAGE_COMMAND:-} +if [[ "${CONTAINER_RUNTIME}" == "containerd" ]]; then + CONTAINER_RUNTIME_NAME=${KUBE_CONTAINER_RUNTIME_NAME:-containerd} + CONTAINER_RUNTIME_ENDPOINT=${KUBE_CONTAINER_RUNTIME_ENDPOINT:-unix:///run/containerd/containerd.sock} + LOAD_IMAGE_COMMAND=${KUBE_LOAD_IMAGE_COMMAND:-ctr -n=k8s.io images import} + KUBELET_TEST_ARGS="${KUBELET_TEST_ARGS} --runtime-cgroups=/system.slice/containerd.service" +fi + # MASTER_EXTRA_METADATA is the extra instance metadata on master instance separated by commas. MASTER_EXTRA_METADATA=${KUBE_MASTER_EXTRA_METADATA:-${KUBE_EXTRA_METADATA:-}} # MASTER_EXTRA_METADATA is the extra instance metadata on node instance separated by commas. NODE_EXTRA_METADATA=${KUBE_NODE_EXTRA_METADATA:-${KUBE_EXTRA_METADATA:-}} -# KUBELET_TEST_ARGS are extra arguments passed to kubelet. -KUBELET_TEST_ARGS=${KUBE_KUBELET_EXTRA_ARGS:-} NETWORK=${KUBE_GCE_NETWORK:-default} # Enable network deletion by default (for kube-down), unless we're using 'default' network. diff --git a/cluster/gce/config-test.sh b/cluster/gce/config-test.sh index aaeaab6ad0e..0e31f5be5c4 100755 --- a/cluster/gce/config-test.sh +++ b/cluster/gce/config-test.sh @@ -86,17 +86,25 @@ ALLOWED_NOTREADY_NODES="${ALLOWED_NOTREADY_NODES:-$(($(get-num-nodes) / 100))}" # you are updating the os image versions, update this variable. # Also please update corresponding image for node e2e at: # https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/jenkins/image-config.yaml -GCI_VERSION=${KUBE_GCI_VERSION:-cos-beta-73-11647-64-0} +GCI_VERSION=${KUBE_GCI_VERSION:-cos-73-11647-163-0} MASTER_IMAGE=${KUBE_GCE_MASTER_IMAGE:-} MASTER_IMAGE_PROJECT=${KUBE_GCE_MASTER_PROJECT:-cos-cloud} NODE_IMAGE=${KUBE_GCE_NODE_IMAGE:-${GCI_VERSION}} NODE_IMAGE_PROJECT=${KUBE_GCE_NODE_PROJECT:-cos-cloud} NODE_SERVICE_ACCOUNT=${KUBE_GCE_NODE_SERVICE_ACCOUNT:-default} + CONTAINER_RUNTIME=${KUBE_CONTAINER_RUNTIME:-docker} CONTAINER_RUNTIME_ENDPOINT=${KUBE_CONTAINER_RUNTIME_ENDPOINT:-} CONTAINER_RUNTIME_NAME=${KUBE_CONTAINER_RUNTIME_NAME:-} LOAD_IMAGE_COMMAND=${KUBE_LOAD_IMAGE_COMMAND:-} GCI_DOCKER_VERSION=${KUBE_GCI_DOCKER_VERSION:-} +if [[ "${CONTAINER_RUNTIME}" == "containerd" ]]; then + CONTAINER_RUNTIME_NAME=${KUBE_CONTAINER_RUNTIME_NAME:-containerd} + CONTAINER_RUNTIME_ENDPOINT=${KUBE_CONTAINER_RUNTIME_ENDPOINT:-unix:///run/containerd/containerd.sock} + LOAD_IMAGE_COMMAND=${KUBE_LOAD_IMAGE_COMMAND:-ctr -n=k8s.io images import} + KUBELET_TEST_ARGS="${KUBELET_TEST_ARGS:-} --runtime-cgroups=/system.slice/containerd.service" +fi + # MASTER_EXTRA_METADATA is the extra instance metadata on master instance separated by commas. MASTER_EXTRA_METADATA=${KUBE_MASTER_EXTRA_METADATA:-${KUBE_EXTRA_METADATA:-}} # MASTER_EXTRA_METADATA is the extra instance metadata on node instance separated by commas. diff --git a/cluster/gce/gci/configure-helper.sh b/cluster/gce/gci/configure-helper.sh index 94cc3b70e0d..db17722a25d 100644 --- a/cluster/gce/gci/configure-helper.sh +++ b/cluster/gce/gci/configure-helper.sh @@ -2877,6 +2877,73 @@ function ensure-bootstrap-kubectl-auth { fi } +function setup-containerd { + echo "Generate containerd config" + local config_path="${CONTAINERD_CONFIG_PATH:-"/etc/containerd/config.toml"}" + mkdir -p "$(dirname "${config_path}")" + local cni_template_path="${KUBE_HOME}/cni.template" + cat > "${cni_template_path}" < "${config_path}" <