From 2055eec0f93fab84da1453facb942d4c3f81c5dd Mon Sep 17 00:00:00 2001 From: Ciprian Hacman Date: Fri, 3 Dec 2021 21:12:28 +0200 Subject: [PATCH 1/5] Remove support for Debian 9 --- util/pkg/distributions/distributions.go | 1 - util/pkg/distributions/identify.go | 2 -- util/pkg/distributions/identify_test.go | 4 ++-- 3 files changed, 2 insertions(+), 5 deletions(-) diff --git a/util/pkg/distributions/distributions.go b/util/pkg/distributions/distributions.go index 016f829ecf..39a5200b21 100644 --- a/util/pkg/distributions/distributions.go +++ b/util/pkg/distributions/distributions.go @@ -37,7 +37,6 @@ type Distribution struct { } var ( - DistributionDebian9 = Distribution{packageFormat: "deb", project: "debian", id: "stretch", version: 9} DistributionDebian10 = Distribution{packageFormat: "deb", project: "debian", id: "buster", version: 10} DistributionDebian11 = Distribution{packageFormat: "deb", project: "debian", id: "bullseye", version: 11} DistributionUbuntu1604 = Distribution{packageFormat: "deb", project: "ubuntu", id: "xenial", version: 16.04} diff --git a/util/pkg/distributions/identify.go b/util/pkg/distributions/identify.go index a10709e975..fe059545a7 100644 --- a/util/pkg/distributions/identify.go +++ b/util/pkg/distributions/identify.go @@ -52,8 +52,6 @@ func FindDistribution(rootfs string) (Distribution, error) { return DistributionAmazonLinux2, nil case "centos-7": return DistributionCentos7, nil - case "debian-9": - return DistributionDebian9, nil case "debian-10": return DistributionDebian10, nil case "debian-11": diff --git a/util/pkg/distributions/identify_test.go b/util/pkg/distributions/identify_test.go index 3b1ac4f083..0cf28da5bf 100644 --- a/util/pkg/distributions/identify_test.go +++ b/util/pkg/distributions/identify_test.go @@ -61,8 +61,8 @@ func TestFindDistribution(t *testing.T) { }, { rootfs: "debian9", - err: nil, - expected: DistributionDebian9, + err: fmt.Errorf("unsupported distro: debian-9"), + expected: Distribution{}, }, { rootfs: "debian10", From 45094241f620d03ab4a3b45af202a1919432ab57 Mon Sep 17 00:00:00 2001 From: Ciprian Hacman Date: Fri, 3 Dec 2021 21:18:00 +0200 Subject: [PATCH 2/5] Remove support for Ubuntu 16.04 --- nodeup/pkg/model/docker_test.go | 2 +- util/pkg/distributions/distributions.go | 1 - util/pkg/distributions/identify.go | 2 -- util/pkg/distributions/identify_test.go | 4 ++-- 4 files changed, 3 insertions(+), 6 deletions(-) diff --git a/nodeup/pkg/model/docker_test.go b/nodeup/pkg/model/docker_test.go index c76b88f8df..d81c077657 100644 --- a/nodeup/pkg/model/docker_test.go +++ b/nodeup/pkg/model/docker_test.go @@ -143,7 +143,7 @@ func runDockerBuilderTest(t *testing.T, key string) { return } - nodeUpModelContext.Distribution = distributions.DistributionUbuntu1604 + nodeUpModelContext.Distribution = distributions.DistributionUbuntu2004 if nodeUpModelContext.Cluster.Spec.Docker.SkipInstall == false { if nodeUpModelContext.Cluster == nil || nodeUpModelContext.Cluster.Spec.Docker == nil || nodeUpModelContext.Cluster.Spec.Docker.Version == nil { diff --git a/util/pkg/distributions/distributions.go b/util/pkg/distributions/distributions.go index 39a5200b21..c02ed39276 100644 --- a/util/pkg/distributions/distributions.go +++ b/util/pkg/distributions/distributions.go @@ -39,7 +39,6 @@ type Distribution struct { var ( DistributionDebian10 = Distribution{packageFormat: "deb", project: "debian", id: "buster", version: 10} DistributionDebian11 = Distribution{packageFormat: "deb", project: "debian", id: "bullseye", version: 11} - DistributionUbuntu1604 = Distribution{packageFormat: "deb", project: "ubuntu", id: "xenial", version: 16.04} DistributionUbuntu1804 = Distribution{packageFormat: "deb", project: "ubuntu", id: "bionic", version: 18.04} DistributionUbuntu2004 = Distribution{packageFormat: "deb", project: "ubuntu", id: "focal", version: 20.04} DistributionUbuntu2010 = Distribution{packageFormat: "deb", project: "ubuntu", id: "groovy", version: 20.10} diff --git a/util/pkg/distributions/identify.go b/util/pkg/distributions/identify.go index fe059545a7..b75e8ec561 100644 --- a/util/pkg/distributions/identify.go +++ b/util/pkg/distributions/identify.go @@ -56,8 +56,6 @@ func FindDistribution(rootfs string) (Distribution, error) { return DistributionDebian10, nil case "debian-11": return DistributionDebian11, nil - case "ubuntu-16.04": - return DistributionUbuntu1604, nil case "ubuntu-18.04": return DistributionUbuntu1804, nil case "ubuntu-20.04": diff --git a/util/pkg/distributions/identify_test.go b/util/pkg/distributions/identify_test.go index 0cf28da5bf..a2c4a1d08d 100644 --- a/util/pkg/distributions/identify_test.go +++ b/util/pkg/distributions/identify_test.go @@ -91,8 +91,8 @@ func TestFindDistribution(t *testing.T) { }, { rootfs: "ubuntu1604", - err: nil, - expected: DistributionUbuntu1604, + err: fmt.Errorf("unsupported distro: ubuntu-16.04"), + expected: Distribution{}, }, { rootfs: "ubuntu1804", From 2030055c54000da82b10b77ca0703ca7b6482672 Mon Sep 17 00:00:00 2001 From: Ciprian Hacman Date: Fri, 3 Dec 2021 21:18:52 +0200 Subject: [PATCH 3/5] Remove support for Ubuntu 18.04 --- util/pkg/distributions/distributions.go | 1 - util/pkg/distributions/identify.go | 2 -- util/pkg/distributions/identify_test.go | 4 ++-- 3 files changed, 2 insertions(+), 5 deletions(-) diff --git a/util/pkg/distributions/distributions.go b/util/pkg/distributions/distributions.go index c02ed39276..e6ed409b46 100644 --- a/util/pkg/distributions/distributions.go +++ b/util/pkg/distributions/distributions.go @@ -39,7 +39,6 @@ type Distribution struct { var ( DistributionDebian10 = Distribution{packageFormat: "deb", project: "debian", id: "buster", version: 10} DistributionDebian11 = Distribution{packageFormat: "deb", project: "debian", id: "bullseye", version: 11} - DistributionUbuntu1804 = Distribution{packageFormat: "deb", project: "ubuntu", id: "bionic", version: 18.04} DistributionUbuntu2004 = Distribution{packageFormat: "deb", project: "ubuntu", id: "focal", version: 20.04} DistributionUbuntu2010 = Distribution{packageFormat: "deb", project: "ubuntu", id: "groovy", version: 20.10} DistributionUbuntu2104 = Distribution{packageFormat: "deb", project: "ubuntu", id: "hirsute", version: 21.04} diff --git a/util/pkg/distributions/identify.go b/util/pkg/distributions/identify.go index b75e8ec561..588bab134b 100644 --- a/util/pkg/distributions/identify.go +++ b/util/pkg/distributions/identify.go @@ -56,8 +56,6 @@ func FindDistribution(rootfs string) (Distribution, error) { return DistributionDebian10, nil case "debian-11": return DistributionDebian11, nil - case "ubuntu-18.04": - return DistributionUbuntu1804, nil case "ubuntu-20.04": return DistributionUbuntu2004, nil case "ubuntu-20.10": diff --git a/util/pkg/distributions/identify_test.go b/util/pkg/distributions/identify_test.go index a2c4a1d08d..d6a7f6fd57 100644 --- a/util/pkg/distributions/identify_test.go +++ b/util/pkg/distributions/identify_test.go @@ -96,8 +96,8 @@ func TestFindDistribution(t *testing.T) { }, { rootfs: "ubuntu1804", - err: nil, - expected: DistributionUbuntu1804, + err: fmt.Errorf("unsupported distro: ubuntu-18.04"), + expected: Distribution{}, }, { rootfs: "ubuntu2004", From e19a1bbad98e71c23c614d807eaf27dfc9fc29fb Mon Sep 17 00:00:00 2001 From: Ciprian Hacman Date: Fri, 3 Dec 2021 21:27:26 +0200 Subject: [PATCH 4/5] Remove support for RHEL/CentOS 7 --- nodeup/pkg/model/packages.go | 7 ------- nodeup/pkg/model/sysctls.go | 9 --------- util/pkg/distributions/distributions.go | 2 -- util/pkg/distributions/identify.go | 5 ----- util/pkg/distributions/identify_test.go | 8 ++++---- 5 files changed, 4 insertions(+), 27 deletions(-) diff --git a/nodeup/pkg/model/packages.go b/nodeup/pkg/model/packages.go index a711f2ec2f..a6f086e39b 100644 --- a/nodeup/pkg/model/packages.go +++ b/nodeup/pkg/model/packages.go @@ -66,13 +66,6 @@ func (b *PackagesBuilder) Build(c *fi.ModelBuilderContext) error { c.AddTask(&nodetasks.Package{Name: "util-linux"}) // Handle some packages differently for each distro switch b.Distribution { - case distributions.DistributionRhel7: - // Easier to install container-selinux from CentOS than extras - c.AddTask(&nodetasks.Package{ - Name: "container-selinux", - Source: s("http://vault.centos.org/7.6.1810/extras/x86_64/Packages/container-selinux-2.107-1.el7_6.noarch.rpm"), - Hash: s("7de4211fa0dfd240d8827b93763e1eb5f0d56411"), - }) case distributions.DistributionAmazonLinux2: // Amazon Linux 2 doesn't have SELinux enabled by default default: diff --git a/nodeup/pkg/model/sysctls.go b/nodeup/pkg/model/sysctls.go index 787cbb3712..8396d7dd59 100644 --- a/nodeup/pkg/model/sysctls.go +++ b/nodeup/pkg/model/sysctls.go @@ -131,15 +131,6 @@ func (b *SysctlBuilder) Build(c *fi.ModelBuilderContext) error { if proxyMode == "" { proxyMode = "iptables" } - - if proxyMode == "iptables" && (b.Distribution == distributions.DistributionCentos7 || b.Distribution == distributions.DistributionRhel7) { - sysctls = append(sysctls, - "# Flannel settings on CentOS 7", - "# Issue https://github.com/coreos/flannel/issues/902", - "net.bridge.bridge-nf-call-ip6tables=1", - "net.bridge.bridge-nf-call-iptables=1", - "") - } } if b.Cluster.Spec.CloudProvider == string(kops.CloudProviderAWS) { diff --git a/util/pkg/distributions/distributions.go b/util/pkg/distributions/distributions.go index e6ed409b46..2bf92200a0 100644 --- a/util/pkg/distributions/distributions.go +++ b/util/pkg/distributions/distributions.go @@ -45,8 +45,6 @@ var ( DistributionUbuntu2110 = Distribution{packageFormat: "deb", project: "ubuntu", id: "impish", version: 21.10} DistributionUbuntu2204 = Distribution{packageFormat: "deb", project: "ubuntu", id: "jammy", version: 22.04} DistributionAmazonLinux2 = Distribution{packageFormat: "rpm", project: "amazonlinux2", id: "amazonlinux2", version: 0} - DistributionRhel7 = Distribution{packageFormat: "rpm", project: "rhel", id: "rhel7", version: 7} - DistributionCentos7 = Distribution{packageFormat: "rpm", project: "centos", id: "centos7", version: 7} DistributionRhel8 = Distribution{packageFormat: "rpm", project: "rhel", id: "rhel8", version: 8} DistributionFlatcar = Distribution{packageFormat: "", project: "flatcar", id: "flatcar", version: 0} DistributionContainerOS = Distribution{packageFormat: "", project: "containeros", id: "containeros", version: 0} diff --git a/util/pkg/distributions/identify.go b/util/pkg/distributions/identify.go index 588bab134b..ed4f0676a5 100644 --- a/util/pkg/distributions/identify.go +++ b/util/pkg/distributions/identify.go @@ -50,8 +50,6 @@ func FindDistribution(rootfs string) (Distribution, error) { switch distro { case "amzn-2": return DistributionAmazonLinux2, nil - case "centos-7": - return DistributionCentos7, nil case "debian-10": return DistributionDebian10, nil case "debian-11": @@ -75,9 +73,6 @@ func FindDistribution(rootfs string) (Distribution, error) { if strings.HasPrefix(distro, "flatcar-") { return DistributionFlatcar, nil } - if strings.HasPrefix(distro, "rhel-7.") { - return DistributionRhel7, nil - } if strings.HasPrefix(distro, "rhel-8.") { return DistributionRhel8, nil } diff --git a/util/pkg/distributions/identify_test.go b/util/pkg/distributions/identify_test.go index d6a7f6fd57..dea92a7249 100644 --- a/util/pkg/distributions/identify_test.go +++ b/util/pkg/distributions/identify_test.go @@ -36,8 +36,8 @@ func TestFindDistribution(t *testing.T) { }, { rootfs: "centos7", - err: nil, - expected: DistributionCentos7, + err: fmt.Errorf("unsupported distro: centos-7"), + expected: Distribution{}, }, { rootfs: "centos8", @@ -81,8 +81,8 @@ func TestFindDistribution(t *testing.T) { }, { rootfs: "rhel7", - err: nil, - expected: DistributionRhel7, + err: fmt.Errorf("unsupported distro: rhel-7.8"), + expected: Distribution{}, }, { rootfs: "rhel8", From bfb68bf128247e527bac1dcb8376f28bb0695c1b Mon Sep 17 00:00:00 2001 From: Ciprian Hacman Date: Fri, 3 Dec 2021 21:33:30 +0200 Subject: [PATCH 5/5] Update release notes --- docs/releases/1.23-NOTES.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/docs/releases/1.23-NOTES.md b/docs/releases/1.23-NOTES.md index 146fed1485..3a9742e750 100644 --- a/docs/releases/1.23-NOTES.md +++ b/docs/releases/1.23-NOTES.md @@ -14,8 +14,18 @@ This is a document to gather the release notes prior to the release. * Support for the Lyft CNI has been removed. +* Support for CentOS 7 has been removed. + * Support for CentOS 8 has been removed. +* Support for Debian 9 has been removed. + +* Support for RHEL 7 is has been removed. + +* Support for Ubuntu 16.04 (Xenial) has been removed. + +* Support for Ubuntu 18.04 (Bionic) has been removed. + * Cilium now has `disable-cnp-status-updates: true` by default. Set this to false if you rely on the CiliumNetworkPolicy status fields. # Required actions @@ -26,14 +36,6 @@ This is a document to gather the release notes prior to the release. * Support for Kubernetes version 1.19 is deprecated and will be removed in kOps 1.25. -* Support for CentOS 7 is deprecated and will be removed in future versions of kOps. - -* Support for Debian 9 (Stretch) is deprecated and will be removed in future versions of kOps. - -* Support for RHEL 7 is deprecated and will be removed in future versions of kOps. - -* Support for Ubuntu 18.04 (Bionic) is deprecated and will be removed in future versions of kOps. - * All legacy addons are deprecated in favor of managed addons, including the [metrics server addon](https://github.com/kubernetes/kops/tree/master/addons/metrics-server) and the [autoscaler addon](https://github.com/kubernetes/kops/tree/master/addons/cluster-autoscaler). * The `node-role.kubernetes.io/master` and `kubernetes.io/role` labels are deprecated and might be removed from control plane nodes in future versions of kOps.