From 49e36437a4e158871ea202ea034d10123a2dcdf8 Mon Sep 17 00:00:00 2001 From: Ivan Shvedunov Date: Wed, 15 May 2019 22:56:35 +0300 Subject: [PATCH] Update for Kubernetes 1.14 --- .circleci/config.yml | 10 ++++----- README.md | 2 +- build/circle-dump.sh | 4 ++-- deploy/demo.sh | 29 ++++++++++++++------------ docs/docs/101/workshop-setup.md | 2 +- docs/docs/dev/setup.md | 10 ++++----- docs/docs/reference/vm-pod.md | 8 +++---- docs/docs/user-guide/virtlet-on-kdc.md | 10 ++++----- examples/README.md | 2 +- 9 files changed, 40 insertions(+), 37 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index d5ef4b35e..384aff179 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -169,8 +169,8 @@ e2e: &e2e elif [[ ${CIRCLE_JOB} = e2e_multi_cni ]]; then export MULTI_CNI=1 echo >&2 "*** Using multiple CNIs (flannel + calico)" - elif [[ ${CIRCLE_JOB} = e2e_1_12 ]]; then - export KUBE_VERSION=1.12 + elif [[ ${CIRCLE_JOB} = e2e_1_13 ]]; then + export KUBE_VERSION=1.13 fi # APISERVER_PORT is set explicitly to avoid dynamic allocation # of the port by kdc @@ -399,7 +399,7 @@ jobs: e2e_multi_cni: <<: *e2e - e2e_1_12: + e2e_1_13: <<: *e2e e2e_debian: @@ -538,7 +538,7 @@ workflows: # only: /^master$|^.*-net$|^.*-ext-e2e$/ # tags: # only: /^v[0-9].*/ - - e2e_1_12: + - e2e_1_13: requires: - build filters: @@ -569,7 +569,7 @@ workflows: - e2e_weave # XXX: temporarily disabled, to be fixed # - e2e_multi_cni - - e2e_1_12 + - e2e_1_13 - e2e_debian - integration filters: diff --git a/README.md b/README.md index cf9332d15..59a5fb656 100644 --- a/README.md +++ b/README.md @@ -73,7 +73,7 @@ The demo script will check for KVM support on the host and will make Virtlet use The demo is based on [kubeadm-dind-cluster](https://github.com/kubernetes-sigs/kubeadm-dind-cluster) project. **Docker btrfs storage driver is currently unsupported.** Please refer to `kubeadm-dind-cluster` documentation for more info. -You can remove the test cluster with `./dind-cluster-v1.13.sh clean` when you no longer need it. +You can remove the test cluster with `./dind-cluster-v1.14.sh clean` when you no longer need it. ## External projects using Virtlet There are some external projects using Virtlet already. diff --git a/build/circle-dump.sh b/build/circle-dump.sh index 7b13ece6b..aa948acfc 100755 --- a/build/circle-dump.sh +++ b/build/circle-dump.sh @@ -4,7 +4,7 @@ set -o nounset set -o pipefail set -o errtrace -DIND_SCRIPT="${DIND_SCRIPT:-$HOME/dind-cluster-v1.13.sh}" +DIND_SCRIPT="${DIND_SCRIPT:-$HOME/dind-cluster-v1.14.sh}" circle_token_file="$HOME/.circle-token" job_num="${1:-}" @@ -41,7 +41,7 @@ cd virtlet-circle-dump url="$(curl -sSL -u "${CIRCLE_TOKEN}:" "${base_url}/${job_num}/artifacts" | jq -r '.[]|select(.path=="tmp/cluster_state/kdc-dump.gz")|.url')" echo >&2 "Getting cluster dump from ${url}" -curl -sSL "${url}" | gunzip | ~/dind-cluster-v1.13.sh split-dump +curl -sSL "${url}" | gunzip | ~/dind-cluster-v1.14.sh split-dump url="$(curl -sSL -u "${CIRCLE_TOKEN}:" "${base_url}/${job_num}/artifacts" | jq -r '.[]|select(.path=="tmp/cluster_state/virtlet-dump.json.gz")|.url')" diff --git a/deploy/demo.sh b/deploy/demo.sh index 6df32f955..e32bb606c 100755 --- a/deploy/demo.sh +++ b/deploy/demo.sh @@ -5,12 +5,15 @@ set -o nounset set -o pipefail set -o errtrace -KUBE_VERSION="${KUBE_VERSION:-1.13}" +KUBE_VERSION="${KUBE_VERSION:-1.14}" CRIPROXY_DEB_URL="${CRIPROXY_DEB_URL:-https://github.com/Mirantis/criproxy/releases/download/v0.14.0/criproxy-nodeps_0.14.0_amd64.deb}" NONINTERACTIVE="${NONINTERACTIVE:-}" NO_VM_CONSOLE="${NO_VM_CONSOLE:-}" INJECT_LOCAL_IMAGE="${INJECT_LOCAL_IMAGE:-}" -dind_script="dind-cluster-v${KUBE_VERSION}.sh" +KDC_VERSION="${KDC_VERSION:-v0.2.0}" +KDC_BASE_LOCATION="${KDC_BASE_LOCATION:-https://github.com/kubernetes-sigs/kubeadm-dind-cluster/releases/download}" +kdc_script="dind-cluster-v${KUBE_VERSION}.sh" +kdc_url="${KDC_BASE_LOCATION}/${KDC_VERSION}/${kdc_script}" kubectl="${HOME}/.kubeadm-dind-cluster/kubectl" BASE_LOCATION="${BASE_LOCATION:-https://raw.githubusercontent.com/Mirantis/virtlet/master/}" RELEASE_LOCATION="${RELEASE_LOCATION:-https://github.com/Mirantis/virtlet/releases/download/}" @@ -98,24 +101,24 @@ function demo::ask-user { function demo::get-dind-cluster { download="true" - if [[ -f ${dind_script} ]]; then - demo::step "Will update ${dind_script} script to the latest version" + if [[ -f ${kdc_script} ]]; then + demo::step "Will update ${kdc_script} script to the latest version" if [[ ! ${NONINTERACTIVE} ]]; then - demo::ask-user "Do you want to redownload ${dind_script} ?" download + demo::ask-user "Do you want to redownload ${kdc_script} ?" download if [[ ${download} = "true" ]]; then - rm "${dind_script}" + rm "${kdc_script}" fi else - demo::step "Will now clear existing ${dind_script}" - rm "${dind_script}" + demo::step "Will now clear existing ${kdc_script}" + rm "${kdc_script}" fi fi if [[ ${download} = "true" ]]; then - demo::step "Will download ${dind_script} into current directory" + demo::step "Will download ${kdc_script} into current directory" demo::ask-before-continuing - wget "https://raw.githubusercontent.com/kubernetes-sigs/kubeadm-dind-cluster/master/fixed/${dind_script}" - chmod +x "${dind_script}" + wget -O "${kdc_script}" "${kdc_url}" + chmod +x "${kdc_script}" fi } @@ -135,8 +138,8 @@ function demo::start-dind-cluster { fi echo "To clean up the cluster, use './dind-cluster-v${KUBE_VERSION}.sh clean'" >&2 demo::ask-before-continuing - "./${dind_script}" clean - "./${dind_script}" up + "./${kdc_script}" clean + "./${kdc_script}" up } function demo::jq-patch { diff --git a/docs/docs/101/workshop-setup.md b/docs/docs/101/workshop-setup.md index 0201b6478..81c1dc525 100644 --- a/docs/docs/101/workshop-setup.md +++ b/docs/docs/101/workshop-setup.md @@ -10,7 +10,7 @@ chmod 600 virtlet/examples/vmkey wget https://github.com/Mirantis/virtlet/releases/download/v1.4.4/virtletctl chmod +x virtletctl -wget https://storage.googleapis.com/kubernetes-release/release/v1.13.3/bin/linux/amd64/kubectl +wget https://storage.googleapis.com/kubernetes-release/release/v1.14.1/bin/linux/amd64/kubectl chmod +x kubectl mkdir -p ~/bin diff --git a/docs/docs/dev/setup.md b/docs/docs/dev/setup.md index dec014918..fceb0d8c6 100644 --- a/docs/docs/dev/setup.md +++ b/docs/docs/dev/setup.md @@ -13,12 +13,12 @@ You'll need the following to run the local environment: be enough, but please follow the Docker documentation for your Linux distribution), * [kubeadm-dind-cluster](https://github.com/kubernetes-sigs/kubeadm-dind-cluster/) - script for Kubernetes version 1.13 (`dind-cluster-v1.13.sh`). + script for Kubernetes version 1.14 (`dind-cluster-v1.14.sh`). You can get the cluster startup script like this: ``` -$ wget -O ~/dind-cluster-v1.13.sh https://github.com/kubernetes-sigs/kubeadm-dind-cluster/releases/download/v0.1.0/dind-cluster-v1.13.sh -$ chmod +x ~/dind-cluster-v1.13.sh +$ wget -O ~/dind-cluster-v1.14.sh https://github.com/kubernetes-sigs/kubeadm-dind-cluster/releases/download/v0.1.0/dind-cluster-v1.14.sh +$ chmod +x ~/dind-cluster-v1.14.sh ``` ## Running the local environment @@ -34,7 +34,7 @@ $ # build Virtlet binaries & the image $ build/cmd.sh build $ # start DIND cluster -$ ~/dind-cluster-v1.13.sh up +$ ~/dind-cluster-v1.14.sh up $ # copy binaries to kube-node-1 $ build/cmd.sh copy-dind @@ -50,7 +50,7 @@ $ build/cmd.sh e2e -test.v -ginkgo.focus="Should have default route" $ # Restart the DIND cluster. Binaries from copy-dind are preserved $ # (you may copy newer ones with another copy-dind command) -$ ~/dind-cluster-v1.13.sh up +$ ~/dind-cluster-v1.14.sh up $ # start Virtlet daemonset again $ build/cmd.sh start-dind diff --git a/docs/docs/reference/vm-pod.md b/docs/docs/reference/vm-pod.md index 455064d1f..882f86860 100644 --- a/docs/docs/reference/vm-pod.md +++ b/docs/docs/reference/vm-pod.md @@ -260,8 +260,8 @@ kube-system weave-net-88jv4 2/2 Running 1 69m kube-system weave-net-kz698 2/2 Running 0 69m kube-system weave-net-rbnmf 2/2 Running 1 69m root@k8s-0:~# kubectl get nodes -NAME STATUS ROLES AGE VERSION -k8s-0 Ready master 69m v1.13.3 -k8s-1 Ready 69m v1.13.3 -k8s-2 Ready 69m v1.13.3 +NAME STATUS ROLES AGE VERSION +kube-master Ready master 29m v1.14.1 +kube-node-1 Ready 28m v1.14.1 +kube-node-2 Ready 28m v1.14.1 ``` diff --git a/docs/docs/user-guide/virtlet-on-kdc.md b/docs/docs/user-guide/virtlet-on-kdc.md index 89ae6cea6..1984a81b8 100644 --- a/docs/docs/user-guide/virtlet-on-kdc.md +++ b/docs/docs/user-guide/virtlet-on-kdc.md @@ -4,13 +4,13 @@ The steps described here are performed automatically by [demo.sh](https://github.com/Mirantis/virtlet/blob/master/deploy/demo.sh) script. 1. Start [kubeadm-dind-cluster](https://github.com/kubernetes-sigs/kubeadm-dind-cluster) - with Kubernetes version 1.13 (you're not required to download it to your home directory). + with Kubernetes version 1.14 (you're not required to download it to your home directory). The cluster script stores appropriate kubectl version in `~/.kubeadm-dind-cluster`. - wget -O ~/dind-cluster-v1.13.sh \ - https://github.com/kubernetes-sigs/kubeadm-dind-cluster/releases/download/v0.1.0/dind-cluster-v1.13.sh - chmod +x ~/dind-cluster-v1.13.sh - ~/dind-cluster-v1.13.sh up + wget -O ~/dind-cluster-v1.14.sh \ + https://github.com/kubernetes-sigs/kubeadm-dind-cluster/releases/download/v0.2.0/dind-cluster-v1.14.sh + chmod +x ~/dind-cluster-v1.14.sh + ~/dind-cluster-v1.14.sh up export PATH="$HOME/.kubeadm-dind-cluster:$PATH" 1. Label a node to accept Virtlet pod: diff --git a/examples/README.md b/examples/README.md index e2917b538..4c1c4ac30 100644 --- a/examples/README.md +++ b/examples/README.md @@ -87,7 +87,7 @@ for testing, you can use this command to start the cluster with FEATURE_GATES="BlockVolume=true" \ KUBELET_FEATURE_GATES="BlockVolume=true" \ ENABLE_CEPH=1 \ - ./dind-cluster-v1.13.sh up + ./dind-cluster-v1.14.sh up ``` [ubuntu-vm-local-block-pv.yaml](ubuntu-vm-local-block-pv.yaml)