Rollback etcd server version to 3.1.11 due to #60589

This commit is contained in:
Shyam Jeedigunta 2018-03-07 18:42:06 +01:00
parent 5364f7beb8
commit 21f5e69f08
19 changed files with 39 additions and 40 deletions

View File

@ -71,7 +71,7 @@ RUN go get golang.org/x/tools/cmd/cover \
golang.org/x/tools/cmd/goimports golang.org/x/tools/cmd/goimports
# Download and symlink etcd. We need this for our integration tests. # Download and symlink etcd. We need this for our integration tests.
RUN export ETCD_VERSION=v3.2.16; \ RUN export ETCD_VERSION=v3.1.11; \
mkdir -p /usr/local/src/etcd \ mkdir -p /usr/local/src/etcd \
&& cd /usr/local/src/etcd \ && cd /usr/local/src/etcd \
&& curl -fsSL https://github.com/coreos/etcd/releases/download/${ETCD_VERSION}/etcd-${ETCD_VERSION}-linux-amd64.tar.gz | tar -xz \ && curl -fsSL https://github.com/coreos/etcd/releases/download/${ETCD_VERSION}/etcd-${ETCD_VERSION}-linux-amd64.tar.gz | tar -xz \

View File

@ -19,12 +19,12 @@ http_archive(
urls = ["https://github.com/bazelbuild/bazel-skylib/archive/2169ae1c374aab4a09aa90e65efe1a3aad4e279b.tar.gz"], urls = ["https://github.com/bazelbuild/bazel-skylib/archive/2169ae1c374aab4a09aa90e65efe1a3aad4e279b.tar.gz"],
) )
ETCD_VERSION = "3.2.16" ETCD_VERSION = "3.1.11"
new_http_archive( new_http_archive(
name = "com_coreos_etcd", name = "com_coreos_etcd",
build_file = "third_party/etcd.BUILD", build_file = "third_party/etcd.BUILD",
sha256 = "b664649bdc5e67bc79cda7f0d77156fdd31c8742a9e5335c3f16cb7119da4ec5", sha256 = "b80c6c0719beee703821ece80f9e48b071ad5f59bb284bd3ea2104700738d9ec",
strip_prefix = "etcd-v%s-linux-amd64" % ETCD_VERSION, strip_prefix = "etcd-v%s-linux-amd64" % ETCD_VERSION,
urls = ["https://github.com/coreos/etcd/releases/download/v%s/etcd-v%s-linux-amd64.tar.gz" % (ETCD_VERSION, ETCD_VERSION)], urls = ["https://github.com/coreos/etcd/releases/download/v%s/etcd-v%s-linux-amd64.tar.gz" % (ETCD_VERSION, ETCD_VERSION)],
) )

View File

@ -24,4 +24,4 @@ spec:
dnsPolicy: Default dnsPolicy: Default
containers: containers:
- name: etcd-empty-dir-cleanup - name: etcd-empty-dir-cleanup
image: k8s.gcr.io/etcd-empty-dir-cleanup:3.1.10.0 image: k8s.gcr.io/etcd-empty-dir-cleanup:3.1.11.0

View File

@ -160,7 +160,7 @@ METADATA_AGENT_VERSION="${KUBE_METADATA_AGENT_VERSION:-0.2-0.0.16-1}"
# Useful for scheduling heapster in large clusters with nodes of small size. # Useful for scheduling heapster in large clusters with nodes of small size.
HEAPSTER_MACHINE_TYPE="${HEAPSTER_MACHINE_TYPE:-}" HEAPSTER_MACHINE_TYPE="${HEAPSTER_MACHINE_TYPE:-}"
# Set etcd image (e.g. k8s.gcr.io/etcd) and version (e.g. 3.2.16) if you need # Set etcd image (e.g. k8s.gcr.io/etcd) and version (e.g. 3.1.11) if you need
# non-default version. # non-default version.
ETCD_IMAGE="${TEST_ETCD_IMAGE:-}" ETCD_IMAGE="${TEST_ETCD_IMAGE:-}"
ETCD_DOCKER_REPOSITORY="${TEST_ETCD_DOCKER_REPOSITORY:-}" ETCD_DOCKER_REPOSITORY="${TEST_ETCD_DOCKER_REPOSITORY:-}"

View File

@ -13,7 +13,7 @@
"containers":[ "containers":[
{ {
"name": "etcd-container", "name": "etcd-container",
"image": "{{ pillar.get('etcd_docker_repository', 'k8s.gcr.io/etcd') }}:{{ pillar.get('etcd_docker_tag', '3.2.16') }}", "image": "{{ pillar.get('etcd_docker_repository', 'k8s.gcr.io/etcd') }}:{{ pillar.get('etcd_docker_tag', '3.1.11') }}",
"resources": { "resources": {
"requests": { "requests": {
"cpu": {{ cpulimit }} "cpu": {{ cpulimit }}
@ -29,7 +29,7 @@
"value": "{{ pillar.get('storage_backend', 'etcd3') }}" "value": "{{ pillar.get('storage_backend', 'etcd3') }}"
}, },
{ "name": "TARGET_VERSION", { "name": "TARGET_VERSION",
"value": "{{ pillar.get('etcd_version', '3.2.16') }}" "value": "{{ pillar.get('etcd_version', '3.1.11') }}"
}, },
{ "name": "DATA_DIRECTORY", { "name": "DATA_DIRECTORY",
"value": "/var/etcd/data{{ suffix }}" "value": "/var/etcd/data{{ suffix }}"

View File

@ -161,8 +161,8 @@ export KUBE_GCE_ENABLE_IP_ALIASES=true
export SECONDARY_RANGE_NAME="pods-default" export SECONDARY_RANGE_NAME="pods-default"
export STORAGE_BACKEND="etcd3" export STORAGE_BACKEND="etcd3"
export STORAGE_MEDIA_TYPE="application/vnd.kubernetes.protobuf" export STORAGE_MEDIA_TYPE="application/vnd.kubernetes.protobuf"
export ETCD_IMAGE=3.2.16 export ETCD_IMAGE=3.1.11
export ETCD_VERSION=3.2.16 export ETCD_VERSION=3.1.11
# Upgrade master with updated kube envs # Upgrade master with updated kube envs
${KUBE_ROOT}/cluster/gce/upgrade.sh -M -l ${KUBE_ROOT}/cluster/gce/upgrade.sh -M -l

View File

@ -14,9 +14,9 @@
.PHONY: build push .PHONY: build push
ETCD_VERSION = 3.1.10 ETCD_VERSION = 3.1.11
IMAGE = staging-k8s.gcr.io/etcd-empty-dir-cleanup IMAGE = staging-k8s.gcr.io/etcd-empty-dir-cleanup
TAG = 3.1.10.0 TAG = 3.1.11.0
clean: clean:
rm -rf etcdctl etcd-v$(ETCD_VERSION)-linux-amd64 etcd-v$(ETCD_VERSION)-linux-amd64.tar.gz rm -rf etcdctl etcd-v$(ETCD_VERSION)-linux-amd64 etcd-v$(ETCD_VERSION)-linux-amd64.tar.gz

View File

@ -15,7 +15,7 @@
# Build the etcd image # Build the etcd image
# #
# Usage: # Usage:
# [TAGS=2.2.1 2.3.7 3.0.17 3.1.11 3.2.16] [REGISTRY=k8s.gcr.io] [ARCH=amd64] [BASEIMAGE=busybox] make (build|push) # [TAGS=2.2.1 2.3.7 3.0.17 3.1.11] [REGISTRY=k8s.gcr.io] [ARCH=amd64] [BASEIMAGE=busybox] make (build|push)
# The image contains different etcd versions to simplify # The image contains different etcd versions to simplify
# upgrades. Thus be careful when removing any tag from here. # upgrades. Thus be careful when removing any tag from here.
@ -26,8 +26,8 @@
# Except from etcd-$(tag) and etcdctl-$(tag) binaries, we also # Except from etcd-$(tag) and etcdctl-$(tag) binaries, we also
# need etcd and etcdctl binaries for backward compatibility reasons. # need etcd and etcdctl binaries for backward compatibility reasons.
# That binary will be set to the last tag from $(TAGS). # That binary will be set to the last tag from $(TAGS).
TAGS?=2.2.1 2.3.7 3.0.17 3.1.11 3.2.16 TAGS?=2.2.1 2.3.7 3.0.17 3.1.11
REGISTRY_TAG?=3.2.16 REGISTRY_TAG?=3.1.11
# ROLLBACK_REGISTRY_TAG specified the tag that REGISTRY_TAG may be rolled back to. # ROLLBACK_REGISTRY_TAG specified the tag that REGISTRY_TAG may be rolled back to.
ROLLBACK_REGISTRY_TAG?=3.1.11 ROLLBACK_REGISTRY_TAG?=3.1.11
ARCH?=amd64 ARCH?=amd64

View File

@ -18,7 +18,7 @@
# This script performs etcd upgrade based on the following environmental # This script performs etcd upgrade based on the following environmental
# variables: # variables:
# TARGET_STORAGE - API of etcd to be used (supported: 'etcd2', 'etcd3') # TARGET_STORAGE - API of etcd to be used (supported: 'etcd2', 'etcd3')
# TARGET_VERSION - etcd release to be used (supported: '2.2.1', '2.3.7', '3.0.17', '3.1.11', '3.2.16') # TARGET_VERSION - etcd release to be used (supported: '2.2.1', '2.3.7', '3.0.17', '3.1.11')
# DATA_DIRECTORY - directory with etcd data # DATA_DIRECTORY - directory with etcd data
# #
# The current etcd version and storage format is detected based on the # The current etcd version and storage format is detected based on the
@ -29,7 +29,6 @@
# - 2.2.1/etcd2 -> 2.3.7/etcd2 # - 2.2.1/etcd2 -> 2.3.7/etcd2
# - 2.3.7/etcd2 -> 3.0.17/etcd2 # - 2.3.7/etcd2 -> 3.0.17/etcd2
# - 3.0.17/etcd3 -> 3.1.11/etcd3 # - 3.0.17/etcd3 -> 3.1.11/etcd3
# - 3.1.11/etcd3 -> 3.2.16/etcd3
# #
# NOTE: The releases supported in this script has to match release binaries # NOTE: The releases supported in this script has to match release binaries
# present in the etcd image (to make this script work correctly). # present in the etcd image (to make this script work correctly).
@ -65,7 +64,7 @@ rollback_etcd3_minor_version() {
echo "Starting etcd version ${START_VERSION} to capture rollback snapshot." echo "Starting etcd version ${START_VERSION} to capture rollback snapshot."
if ! start_etcd; then if ! start_etcd; then
echo "Unable to automatically downgrade etcd: starting etcd version ${START_VERSION} to capture rollback snapshot failed." echo "Unable to automatically downgrade etcd: starting etcd version ${START_VERSION} to capture rollback snapshot failed."
echo "See https://coreos.com/etcd/docs/3.2.16/op-guide/recovery.html for manual downgrade options." echo "See https://coreos.com/etcd/docs/3.1.11/op-guide/recovery.html for manual downgrade options."
exit 1 exit 1
else else
ETCDCTL_API=3 ${ETCDCTL_CMD} snapshot --endpoints "http://127.0.0.1:${ETCD_PORT}" save "${SNAPSHOT_FILE}" ETCDCTL_API=3 ${ETCDCTL_CMD} snapshot --endpoints "http://127.0.0.1:${ETCD_PORT}" save "${SNAPSHOT_FILE}"
@ -139,7 +138,7 @@ fi
# NOTE: SUPPORTED_VERSION has to match release binaries present in the # NOTE: SUPPORTED_VERSION has to match release binaries present in the
# etcd image (to make this script work correctly). # etcd image (to make this script work correctly).
# We cannot use array since sh doesn't support it. # We cannot use array since sh doesn't support it.
SUPPORTED_VERSIONS_STRING="2.2.1 2.3.7 3.0.17 3.1.11 3.2.16" SUPPORTED_VERSIONS_STRING="2.2.1 2.3.7 3.0.17 3.1.11"
SUPPORTED_VERSIONS=$(echo "${SUPPORTED_VERSIONS_STRING}" | tr " " "\n") SUPPORTED_VERSIONS=$(echo "${SUPPORTED_VERSIONS_STRING}" | tr " " "\n")
VERSION_FILE="version.txt" VERSION_FILE="version.txt"

View File

@ -62,7 +62,7 @@ TERMINATED_POD_GC_THRESHOLD=${TERMINATED_POD_GC_THRESHOLD:-100}
KUBE_APISERVER_REQUEST_TIMEOUT=300 KUBE_APISERVER_REQUEST_TIMEOUT=300
ETCD_COMPACTION_INTERVAL_SEC="${KUBEMARK_ETCD_COMPACTION_INTERVAL_SEC:-}" ETCD_COMPACTION_INTERVAL_SEC="${KUBEMARK_ETCD_COMPACTION_INTERVAL_SEC:-}"
# Set etcd image (e.g. k8s.gcr.io/etcd) and version (e.g. 3.1.10) if you need # Set etcd image (e.g. k8s.gcr.io/etcd) and version (e.g. 3.1.11) if you need
# non-default version. # non-default version.
ETCD_IMAGE="${TEST_ETCD_IMAGE:-}" ETCD_IMAGE="${TEST_ETCD_IMAGE:-}"
ETCD_VERSION="${TEST_ETCD_VERSION:-}" ETCD_VERSION="${TEST_ETCD_VERSION:-}"

View File

@ -211,7 +211,7 @@ const (
MinExternalEtcdVersion = "3.1.11" MinExternalEtcdVersion = "3.1.11"
// DefaultEtcdVersion indicates the default etcd version that kubeadm uses // DefaultEtcdVersion indicates the default etcd version that kubeadm uses
DefaultEtcdVersion = "3.2.16" DefaultEtcdVersion = "3.1.11"
// Etcd defines variable used internally when referring to etcd component // Etcd defines variable used internally when referring to etcd component
Etcd = "etcd" Etcd = "etcd"
@ -297,8 +297,8 @@ var (
// SupportedEtcdVersion lists officially supported etcd versions with corresponding kubernetes releases // SupportedEtcdVersion lists officially supported etcd versions with corresponding kubernetes releases
SupportedEtcdVersion = map[uint8]string{ SupportedEtcdVersion = map[uint8]string{
9: "3.1.11", 9: "3.1.11",
10: "3.2.16", 10: "3.1.11",
11: "3.2.16", 11: "3.1.11",
} }
) )

View File

@ -137,12 +137,12 @@ func TestEtcdSupportedVersion(t *testing.T) {
}, },
{ {
kubernetesVersion: "1.10.0", kubernetesVersion: "1.10.0",
expectedVersion: version.MustParseSemantic("3.2.16"), expectedVersion: version.MustParseSemantic("3.1.11"),
expectedError: nil, expectedError: nil,
}, },
{ {
kubernetesVersion: "1.10.1", kubernetesVersion: "1.10.1",
expectedVersion: version.MustParseSemantic("3.2.16"), expectedVersion: version.MustParseSemantic("3.1.11"),
expectedError: nil, expectedError: nil,
}, },
} }

View File

@ -146,7 +146,7 @@ func TestGetAvailableUpgrades(t *testing.T) {
KubeVersion: "v1.10.0", KubeVersion: "v1.10.0",
KubeadmVersion: "v1.10.0", KubeadmVersion: "v1.10.0",
DNSVersion: "1.14.8", DNSVersion: "1.14.8",
EtcdVersion: "3.2.16", EtcdVersion: "3.1.11",
}, },
}, },
}, },
@ -196,7 +196,7 @@ func TestGetAvailableUpgrades(t *testing.T) {
KubeVersion: "v1.10.1", KubeVersion: "v1.10.1",
KubeadmVersion: "v1.10.1", KubeadmVersion: "v1.10.1",
DNSVersion: "1.14.8", DNSVersion: "1.14.8",
EtcdVersion: "3.2.16", EtcdVersion: "3.1.11",
}, },
}, },
}, },
@ -243,7 +243,7 @@ func TestGetAvailableUpgrades(t *testing.T) {
KubeVersion: "v1.10.0-alpha.2", KubeVersion: "v1.10.0-alpha.2",
KubeadmVersion: "v1.10.0-alpha.2", KubeadmVersion: "v1.10.0-alpha.2",
DNSVersion: "1.14.8", DNSVersion: "1.14.8",
EtcdVersion: "3.2.16", EtcdVersion: "3.1.11",
}, },
}, },
}, },
@ -276,7 +276,7 @@ func TestGetAvailableUpgrades(t *testing.T) {
KubeVersion: "v1.10.0-alpha.2", KubeVersion: "v1.10.0-alpha.2",
KubeadmVersion: "v1.10.0-alpha.2", KubeadmVersion: "v1.10.0-alpha.2",
DNSVersion: "1.14.8", DNSVersion: "1.14.8",
EtcdVersion: "3.2.16", EtcdVersion: "3.1.11",
}, },
}, },
}, },
@ -310,7 +310,7 @@ func TestGetAvailableUpgrades(t *testing.T) {
KubeVersion: "v1.10.0-beta.1", KubeVersion: "v1.10.0-beta.1",
KubeadmVersion: "v1.10.0-beta.1", KubeadmVersion: "v1.10.0-beta.1",
DNSVersion: "1.14.8", DNSVersion: "1.14.8",
EtcdVersion: "3.2.16", EtcdVersion: "3.1.11",
}, },
}, },
}, },
@ -344,7 +344,7 @@ func TestGetAvailableUpgrades(t *testing.T) {
KubeVersion: "v1.10.0-rc.1", KubeVersion: "v1.10.0-rc.1",
KubeadmVersion: "v1.10.0-rc.1", KubeadmVersion: "v1.10.0-rc.1",
DNSVersion: "1.14.8", DNSVersion: "1.14.8",
EtcdVersion: "3.2.16", EtcdVersion: "3.1.11",
}, },
}, },
}, },
@ -378,7 +378,7 @@ func TestGetAvailableUpgrades(t *testing.T) {
KubeVersion: "v1.10.6-rc.1", KubeVersion: "v1.10.6-rc.1",
KubeadmVersion: "v1.10.6-rc.1", KubeadmVersion: "v1.10.6-rc.1",
DNSVersion: "1.14.8", DNSVersion: "1.14.8",
EtcdVersion: "3.2.16", EtcdVersion: "3.1.11",
}, },
}, },
}, },
@ -412,7 +412,7 @@ func TestGetAvailableUpgrades(t *testing.T) {
KubeVersion: "v1.10.0-rc.1", KubeVersion: "v1.10.0-rc.1",
KubeadmVersion: "v1.10.0-rc.1", KubeadmVersion: "v1.10.0-rc.1",
DNSVersion: "1.14.8", DNSVersion: "1.14.8",
EtcdVersion: "3.2.16", EtcdVersion: "3.1.11",
}, },
}, },
{ {
@ -430,7 +430,7 @@ func TestGetAvailableUpgrades(t *testing.T) {
KubeVersion: "v1.11.0-alpha.2", KubeVersion: "v1.11.0-alpha.2",
KubeadmVersion: "v1.11.0-alpha.2", KubeadmVersion: "v1.11.0-alpha.2",
DNSVersion: "1.14.8", DNSVersion: "1.14.8",
EtcdVersion: "3.2.16", EtcdVersion: "3.1.11",
}, },
}, },
}, },

View File

@ -16,7 +16,7 @@
# A set of helpers for starting/running etcd for tests # A set of helpers for starting/running etcd for tests
ETCD_VERSION=${ETCD_VERSION:-3.2.16} ETCD_VERSION=${ETCD_VERSION:-3.1.11}
ETCD_HOST=${ETCD_HOST:-127.0.0.1} ETCD_HOST=${ETCD_HOST:-127.0.0.1}
ETCD_PORT=${ETCD_PORT:-2379} ETCD_PORT=${ETCD_PORT:-2379}

View File

@ -23,4 +23,4 @@ spec:
- "--etcd-servers=http://localhost:2379" - "--etcd-servers=http://localhost:2379"
- "--audit-log-path=-" - "--audit-log-path=-"
- name: etcd - name: etcd
image: quay.io/coreos/etcd:v3.2.16 image: quay.io/coreos/etcd:v3.1.11

View File

@ -21,4 +21,4 @@ spec:
imagePullPolicy: Never imagePullPolicy: Never
command: [ "/kube-sample-apiserver", "--etcd-servers=http://localhost:2379" ] command: [ "/kube-sample-apiserver", "--etcd-servers=http://localhost:2379" ]
- name: etcd - name: etcd
image: quay.io/coreos/etcd:v3.2.16 image: quay.io/coreos/etcd:v3.1.11

View File

@ -133,7 +133,7 @@ func TestSampleAPIServer(f *framework.Framework, image string) {
// kubectl create -f deploy.yaml // kubectl create -f deploy.yaml
deploymentName := "sample-apiserver-deployment" deploymentName := "sample-apiserver-deployment"
etcdImage := "quay.io/coreos/etcd:v3.2.16" etcdImage := "quay.io/coreos/etcd:v3.1.11"
podLabels := map[string]string{"app": "sample-apiserver", "apiserver": "true"} podLabels := map[string]string{"app": "sample-apiserver", "apiserver": "true"}
replicas := int32(1) replicas := int32(1)
zero := int64(0) zero := int64(0)

View File

@ -67,7 +67,7 @@ func etcdUpgradeGCE(target_storage, target_version string) error {
os.Environ(), os.Environ(),
"TEST_ETCD_VERSION="+target_version, "TEST_ETCD_VERSION="+target_version,
"STORAGE_BACKEND="+target_storage, "STORAGE_BACKEND="+target_storage,
"TEST_ETCD_IMAGE=3.2.16") "TEST_ETCD_IMAGE=3.1.11")
_, _, err := RunCmdEnv(env, gceUpgradeScript(), "-l", "-M") _, _, err := RunCmdEnv(env, gceUpgradeScript(), "-l", "-M")
return err return err
@ -107,7 +107,7 @@ func masterUpgradeGCE(rawV string, enableKubeProxyDaemonSet bool) error {
env = append(env, env = append(env,
"TEST_ETCD_VERSION="+TestContext.EtcdUpgradeVersion, "TEST_ETCD_VERSION="+TestContext.EtcdUpgradeVersion,
"STORAGE_BACKEND="+TestContext.EtcdUpgradeStorage, "STORAGE_BACKEND="+TestContext.EtcdUpgradeStorage,
"TEST_ETCD_IMAGE=3.2.16") "TEST_ETCD_IMAGE=3.1.11")
} else { } else {
// In e2e tests, we skip the confirmation prompt about // In e2e tests, we skip the confirmation prompt about
// implicit etcd upgrades to simulate the user entering "y". // implicit etcd upgrades to simulate the user entering "y".

View File

@ -59,7 +59,7 @@ SERVICE_CLUSTER_IP_RANGE="${SERVICE_CLUSTER_IP_RANGE:-}"
EVENT_PD="${EVENT_PD:-}" EVENT_PD="${EVENT_PD:-}"
# Etcd related variables. # Etcd related variables.
ETCD_IMAGE="${ETCD_IMAGE:-3.2.16}" ETCD_IMAGE="${ETCD_IMAGE:-3.1.11}"
ETCD_VERSION="${ETCD_VERSION:-}" ETCD_VERSION="${ETCD_VERSION:-}"
# Controller-manager related variables. # Controller-manager related variables.