From 1e41439e36483fce9a56b47b8cd649441d84cefa Mon Sep 17 00:00:00 2001 From: Ciprian Hacman Date: Tue, 6 Jul 2021 20:24:16 +0300 Subject: [PATCH] Use etcd v3.5.0 for Kubernetes 1.22+ --- pkg/model/components/etcd.go | 8 +++++--- pkg/model/components/etcdmanager/model.go | 2 +- pkg/model/components/etcdmanager/options.go | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/pkg/model/components/etcd.go b/pkg/model/components/etcd.go index fe4cfc00e9..21634d59bd 100644 --- a/pkg/model/components/etcd.go +++ b/pkg/model/components/etcd.go @@ -24,7 +24,7 @@ import ( "k8s.io/kops/upup/pkg/fi/loader" ) -const DefaultBackupImage = "k8s.gcr.io/etcdadm/etcd-backup:3.0.20210430" +const DefaultBackupImage = "k8s.gcr.io/etcdadm/etcd-backup:3.0.20210707" // EtcdOptionsBuilder adds options for etcd to the model type EtcdOptionsBuilder struct { @@ -35,8 +35,8 @@ var _ loader.OptionsBuilder = &EtcdOptionsBuilder{} const ( DefaultEtcd3Version_1_17 = "3.4.3" - DefaultEtcd3Version_1_19 = "3.4.13" + DefaultEtcd3Version_1_22 = "3.5.0" ) // BuildOptions is responsible for filling in the defaults for the etcd cluster model @@ -52,7 +52,9 @@ func (b *EtcdOptionsBuilder) BuildOptions(o interface{}) error { // Ensure the version is set if c.Version == "" { // We run the k8s-recommended versions of etcd - if b.IsKubernetesGTE("1.19") { + if b.IsKubernetesGTE("1.22") { + c.Version = DefaultEtcd3Version_1_22 + } else if b.IsKubernetesGTE("1.19") { c.Version = DefaultEtcd3Version_1_19 } else { c.Version = DefaultEtcd3Version_1_17 diff --git a/pkg/model/components/etcdmanager/model.go b/pkg/model/components/etcdmanager/model.go index 53ca9551bc..b4c83a4fc8 100644 --- a/pkg/model/components/etcdmanager/model.go +++ b/pkg/model/components/etcdmanager/model.go @@ -183,7 +183,7 @@ metadata: namespace: kube-system spec: containers: - - image: k8s.gcr.io/etcdadm/etcd-manager:3.0.20210430 + - image: k8s.gcr.io/etcdadm/etcd-manager:3.0.20210707 name: etcd-manager resources: requests: diff --git a/pkg/model/components/etcdmanager/options.go b/pkg/model/components/etcdmanager/options.go index f968b88156..45fdcca140 100644 --- a/pkg/model/components/etcdmanager/options.go +++ b/pkg/model/components/etcdmanager/options.go @@ -67,7 +67,7 @@ func (b *EtcdManagerOptionsBuilder) BuildOptions(o interface{}) error { return nil } -var supportedEtcdVersions = []string{"3.1.12", "3.2.18", "3.2.24", "3.3.10", "3.3.13", "3.3.17", "3.4.3", "3.4.13"} +var supportedEtcdVersions = []string{"3.1.12", "3.2.18", "3.2.24", "3.3.10", "3.3.13", "3.3.17", "3.4.3", "3.4.13", "3.5.0"} func etcdVersionIsSupported(version string) bool { version = strings.TrimPrefix(version, "v")