You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
title: "Kubernetes Legacy Package Repositories Will Be Frozen On September 13, 2023"
4
-
date: 2023-08-31T16:30:00-07:00
4
+
date: 2023-08-31T15:30:00-07:00
5
5
slug: legacy-package-repository-deprecation
6
+
evergreen: true
6
7
---
7
8
8
9
**Authors**: Bob Killen (Google), Chris Short (AWS), Jeremy Rickard (Microsoft), Marko Mudrinić (Kubermatic), Tim Bannister (The Scale Factory)
9
10
10
-
On August 15, 2023, the Kubernetes project announced the general availability of the community-owned package repositories for Debian and RPM packages available at `pkgs.k8s.io`. The new package repositories are replacement for the legacy Google-hosted package repositories: `apt.kubernetes.io` and `yum.kubernetes.io`. The [announcement blog post for `pkgs.k8s.io`](/blog/2023/08/15/pkgs-k8s-io-introduction/) highlighted that we will stop publishing packages to the legacy repositories in the future.
11
+
On August 15, 2023, the Kubernetes project announced the general availability of
12
+
the community-owned package repositories for Debian and RPM packages available
13
+
at `pkgs.k8s.io`. The new package repositories are replacement for the legacy
14
+
Google-hosted package repositories: `apt.kubernetes.io` and `yum.kubernetes.io`.
15
+
The
16
+
[announcement blog post for `pkgs.k8s.io`](/blog/2023/08/15/pkgs-k8s-io-introduction/)
17
+
highlighted that we will stop publishing packages to the legacy repositories in
18
+
the future.
11
19
12
-
Today, we're formally deprecating the legacy package repositories (`apt.kubernetes.io` and `yum.kubernetes.io`), and we're announcing our plans to freeze the contents of the repositories as of **September 13, 2023**.
20
+
Today, we're formally deprecating the legacy package repositories (`apt.kubernetes.io`
21
+
and `yum.kubernetes.io`), and we're announcing our plans to freeze the contents of
22
+
the repositories as of **September 13, 2023**.
13
23
14
-
Please continue reading in order to learn what does this mean for you as an user or distributor, and what steps you may need to take.
24
+
Please continue reading in order to learn what does this mean for you as an user or
25
+
distributor, and what steps you may need to take.
15
26
16
27
## How does this affect me as a Kubernetes end user?
17
28
18
-
This change affects users **directly installing upstream versions of Kubernetes**, either manually by following the official [installation](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/) and [upgrade](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/) instructions, or by **using a Kubernetes installer** that's using packages provided by the Kubernetes project.
29
+
This change affects users **directly installing upstream versions of Kubernetes**,
30
+
either manually by following the official
31
+
[installation](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/) and
32
+
[upgrade](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/) instructions, or
33
+
by **using a Kubernetes installer** that's using packages provided by the Kubernetes
34
+
project.
19
35
20
-
**This change also affects you if you run Linux on your own PC and have installed `kubectl` using the legacy package repositories**. We'll explain later on how to [check](#check-if-affected) if you're affected.
36
+
**This change also affects you if you run Linux on your own PC and have installed `kubectl` using the legacy package repositories**.
37
+
We'll explain later on how to [check](#check-if-affected) if you're affected.
21
38
22
-
If you use **fully managed** Kubernetes, for example through a service from a cloud provider, you would only be affected by this change if you also installed `kubectl` on your Linux PC using packages from the legacy repositories. Cloud providers are generally using their own Kubernetes distributions and therefore they don't use packages provided by the Kubernetes project; more importantly,
23
-
if someone else is managing Kubernetes for you, then they would usually take responsibility for that check.
39
+
If you use **fully managed** Kubernetes, for example through a service from a cloud
40
+
provider, you would only be affected by this change if you also installed `kubectl`
41
+
on your Linux PC using packages from the legacy repositories. Cloud providers are
42
+
generally using their own Kubernetes distributions and therefore they don't use
43
+
packages provided by the Kubernetes project; more importantly, if someone else is
44
+
managing Kubernetes for you, then they would usually take responsibility for that check.
24
45
25
-
If you have a managed [control plane](/docs/concepts/overview/components/#control-plane-components) but you are responsible for **managing the nodes yourself**, and any of those nodes run Linux, you should [check](#check-if-affected) whether you are affected.
46
+
If you have a managed [control plane](/docs/concepts/overview/components/#control-plane-components)
47
+
but you are responsible for **managing the nodes yourself**, and any of those nodes run Linux,
48
+
you should [check](#check-if-affected) whether you are affected.
26
49
27
-
If you're managing your clusters on your own by following the official installation and upgrade instructions, please follow the instructions in this blog post to migrate to the (new) community-owned package repositories.
50
+
If you're managing your clusters on your own by following the official installation
51
+
and upgrade instructions, please follow the instructions in this blog post to migrate
52
+
to the (new) community-owned package repositories.
28
53
29
54
30
-
If you're using a Kubernetes installer that's using packages provided by the Kubernetes project, please check the installer tool's communication channels for information about what steps you need to take, and eventually if needed, follow up with maintainers to let them know about this change.
55
+
If you're using a Kubernetes installer that's using packages provided by the
56
+
Kubernetes project, please check the installer tool's communication channels for
57
+
information about what steps you need to take, and eventually if needed, follow up
58
+
with maintainers to let them know about this change.
31
59
32
60
## How does this affect me as a Kubernetes distributor?
33
61
34
-
If you're using the legacy repositories as part of your project (e.g. a Kubernetes installer tool), you should migrate to the community-owned repositories as soon as possible and inform your users about this change and what steps they need to take.
62
+
If you're using the legacy repositories as part of your project (e.g. a Kubernetes
63
+
installer tool), you should migrate to the community-owned repositories as soon as
64
+
possible and inform your users about this change and what steps they need to take.
35
65
36
66
## Timeline of changes
37
67
68
+
<!-- note to maintainers - the trailing whitespace is significant -->
69
+
38
70
-**15th August 2023:**
39
71
Kubernetes announces a new, community-managed source for Linux software packages of Kubernetes components
40
72
-**31st August 2023:**
@@ -45,53 +77,76 @@ If you're using the legacy repositories as part of your project (e.g. a Kubernet
45
77
(`apt.kubernetes.io` and `yum.kubernetes.io`).
46
78
The freeze will happen immediately following the patch releases that are scheduled for September, 2023.
47
79
48
-
The Kubernetes patch releases scheduled for September 2023 (v1.28.2, v1.27.6, v1.26.9, v1.25.14) will have packages published **both** to the community-owned and the legacy repositories.
80
+
The Kubernetes patch releases scheduled for September 2023 (v1.28.2, v1.27.6,
81
+
v1.26.9, v1.25.14) will have packages published **both** to the community-owned and
82
+
the legacy repositories.
49
83
50
-
We'll freeze the legacy repositories after cutting the patch releases for September which means that we'll completely stop publishing packages to the legacy repositories at that point.
84
+
We'll freeze the legacy repositories after cutting the patch releases for September
85
+
which means that we'll completely stop publishing packages to the legacy repositories
86
+
at that point.
51
87
52
-
For the v1.28, v1.27, v1.26, and v1.25 patch releases from October 2023 and onwards, we'll only publish packages to the new package repositories (`pkgs.k8s.io`).
88
+
For the v1.28, v1.27, v1.26, and v1.25 patch releases from October 2023 and onwards,
89
+
we'll only publish packages to the new package repositories (`pkgs.k8s.io`).
53
90
54
91
### What about future minor releases?
55
92
56
-
Kubernetes 1.29 and onwards will have packages published **only** to the community-owned repositories (`pkgs.k8s.io`).
93
+
Kubernetes 1.29 and onwards will have packages published **only** to the
94
+
community-owned repositories (`pkgs.k8s.io`).
57
95
58
96
## Can I continue to use the legacy package repositories?
59
97
60
-
The existing packages in the legacy repositories will be available for the foreseeable future. However, the Kubernetes project can't provide _any_ guarantees on how long is that going to be. The deprecated legacy repositories, and their contents, might be removed at any time in the future and without a further notice period.
98
+
The existing packages in the legacy repositories will be available for the foreseeable
99
+
future. However, the Kubernetes project can't provide _any_ guarantees on how long
100
+
is that going to be. The deprecated legacy repositories, and their contents, might
101
+
be removed at any time in the future and without a further notice period.
61
102
62
-
The Kubernetes project **strongly recommends** migrating to the new community-owned repositories **as soon as possible**.
103
+
The Kubernetes project **strongly recommends** migrating to the new community-owned
104
+
repositories **as soon as possible**.
63
105
64
-
Given that no new releases will be published to the legacy repositories **after the September 13, 2023**, **you will not be able to upgrade to any patch or minor release made from that date onwards.**
106
+
Given that no new releases will be published to the legacy repositories **after the September 13, 2023**
107
+
cut-off point, **you will not be able to upgrade to any patch or minor release made from that date onwards.**
65
108
66
-
Whilst the project makes every effort to release secure software, there may one day be a high-severity vulnerability in Kubernetes, and consequently an important release to upgrade to.
67
-
The advice we're announcing will help you be as prepared
68
-
for any future security update, whether trivial or urgent.
109
+
Whilst the project makes every effort to release secure software, there may one
110
+
day be a high-severity vulnerability in Kubernetes, and consequently an important
111
+
release to upgrade to. The advice we're announcing will help you be as prepared for
112
+
any future security update, whether trivial or urgent.
69
113
70
114
## How can I check if I'm using the legacy repositories? {#check-if-affected}
71
115
72
-
The steps to check if you're using the legacy repositories depend on whether you're using Debian-based distributions (Debian, Ubuntu, and more) or RPM-based distributions (CentOS, RHEL, Rocky Linux, and more) in your cluster.
116
+
The steps to check if you're using the legacy repositories depend on whether you're
117
+
using Debian-based distributions (Debian, Ubuntu, and more) or RPM-based distributions
118
+
(CentOS, RHEL, Rocky Linux, and more) in your cluster.
73
119
74
120
Run these instructions on one of your nodes in the cluster.
75
121
76
122
### Debian-based Linux distributions
77
123
78
-
The repository definitions (sources) are located in `/etc/apt/sources.list` and `/etc/apt/sources.list.d/` on Debian-based distributions. Inspect these two locations and try to locate a package repository definition that looks like:
124
+
The repository definitions (sources) are located in `/etc/apt/sources.list` and `/etc/apt/sources.list.d/`
125
+
on Debian-based distributions. Inspect these two locations and try to locate a
126
+
package repository definition that looks like:
79
127
80
128
```
81
129
deb [signed-by=/etc/apt/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main
82
130
```
83
131
84
132
**If you find a repository definition that looks like this, you're using the legacy repository and you need to migrate.**
85
133
86
-
If the repository definition uses `pkgs.k8s.io`, you're already using the community-hosted repositories and you don't need to take any action.
134
+
If the repository definition uses `pkgs.k8s.io`, you're already using the
135
+
community-hosted repositories and you don't need to take any action.
87
136
88
-
On most systems, this repository definition should be located in `/etc/apt/sources.list.d/kubernetes.list` (as recommended by the Kubernetes documentation), but on some systems it might be in a different location.
137
+
On most systems, this repository definition should be located in
138
+
`/etc/apt/sources.list.d/kubernetes.list` (as recommended by the Kubernetes
139
+
documentation), but on some systems it might be in a different location.
89
140
90
-
If you can't find a repository definition related to Kubernetes, it's likely that you don't use package managers to install Kubernetes and you don't need to take any action.
141
+
If you can't find a repository definition related to Kubernetes, it's likely that you
142
+
don't use package managers to install Kubernetes and you don't need to take any action.
91
143
92
144
### RPM-based Linux distributions
93
145
94
-
The repository definitions are located in `/etc/yum.repos.d` if you're using the `yum` package manager, or `/etc/dnf/dnf.conf` and `/etc/dnf/repos.d/` if you're using `dnf` package manager. Inspect those locations and try to locate a package repository definition that looks like this:
146
+
The repository definitions are located in `/etc/yum.repos.d` if you're using the
147
+
`yum` package manager, or `/etc/dnf/dnf.conf` and `/etc/dnf/repos.d/` if you're using
148
+
`dnf` package manager. Inspect those locations and try to locate a package repository
**If you find a repository definition that looks like this, you're using the legacy repository and you need to migrate.**
107
162
108
-
If the repository definition uses `pkgs.k8s.io`, you're already using the community-hosted repositories and you don't need to take any action.
163
+
If the repository definition uses `pkgs.k8s.io`, you're already using the
164
+
community-hosted repositories and you don't need to take any action.
109
165
110
-
On most systems, that repository definition should be located in `/etc/yum.repos.d/kubernetes.repo` (as recommended by the Kubernetes documentation), but on some systems it might be in a different location.
166
+
On most systems, that repository definition should be located in `/etc/yum.repos.d/kubernetes.repo`
167
+
(as recommended by the Kubernetes documentation), but on some systems it might be
168
+
in a different location.
111
169
112
-
If you can't find a repository definition related to Kubernetes, it's likely that you don't use package managers to install Kubernetes and you don't need to take any action.
170
+
If you can't find a repository definition related to Kubernetes, it's likely that you
171
+
don't use package managers to install Kubernetes and you don't need to take any action.
113
172
114
173
## How can I migrate to the new community-operated repositories?
115
174
116
-
For more information on how to migrate to the new community managed packages, please refer to the [announcement blog post for `pkgs.k8s.io`](/blog/2023/08/15/pkgs-k8s-io-introduction/).
175
+
For more information on how to migrate to the new community
176
+
managed packages, please refer to the
177
+
[announcement blog post for `pkgs.k8s.io`](/blog/2023/08/15/pkgs-k8s-io-introduction/).
117
178
118
179
## Why is the Kubernetes project making this change?
119
180
120
-
Kubernetes has been publishing packages solely to the Google-hosted repository since Kubernetes v1.5, or the past **seven** years! Following in the footsteps of migrating to our community-managed registry, registry.k8s.io, we are now migrating the Kubernetes package repositories to our own community-managed infrastructure. We’re thankful to Google for their continuous hosting and support all these years, but this transition marks another big milestone for the project’s goal of migrating to complete community-owned infrastructure.
181
+
Kubernetes has been publishing packages solely to the Google-hosted repository
182
+
since Kubernetes v1.5, or the past **seven** years! Following in the footsteps of
183
+
migrating to our community-managed registry, `registry.k8s.io`, we are now migrating the
184
+
Kubernetes package repositories to our own community-managed infrastructure. We’re
185
+
thankful to Google for their continuous hosting and support all these years, but
186
+
this transition marks another big milestone for the project’s goal of migrating
187
+
to complete community-owned infrastructure.
121
188
122
189
## Is there a Kubernetes tool to help me migrate?
123
190
124
-
We don't have any announcement to make about tooling there. As a Kubernetes user, you have to manually modify your configuration to use the new repositories. Automating the migration from the legacy to the community-owned repositories is technically challenging and we want to avoid any potential risks associated with this.
191
+
We don't have any announcement to make about tooling there. As a Kubernetes user, you
192
+
have to manually modify your configuration to use the new repositories. Automating
193
+
the migration from the legacy to the community-owned repositories is technically
194
+
challenging and we want to avoid any potential risks associated with this.
125
195
126
196
## Acknowledgments
127
197
128
-
First of all, we want to acknowledge the contributions from Alphabet. Staff at Google have provided their time; Google as a business has provided both the infrastructure to serve packages, and the security context for giving those packages trustworthy digital signatures.
198
+
First of all, we want to acknowledge the contributions from Alphabet. Staff at Google
199
+
have provided their time; Google as a business has provided both the infrastructure
200
+
to serve packages, and the security context for giving those packages trustworthy
201
+
digital signatures.
129
202
These have been important to the adoption and growth of Kubernetes.
130
203
131
-
Releasing software might not be glamorous but it's important. Many people within the Kubernetes contributor community have contributed to the new way that we, as a project, have for building and publishing packages.
204
+
Releasing software might not be glamorous but it's important. Many people within
205
+
the Kubernetes contributor community have contributed to the new way that we, as a
206
+
project, have for building and publishing packages.
132
207
133
-
And finally, we want to once again acknowledge the help from SUSE. OpenBuildService, from SUSE, is the technology
134
-
that the powers the new community-managed package repositories.
208
+
And finally, we want to once again acknowledge the help from SUSE. OpenBuildService,
209
+
from SUSE, is the technology that the powers the new community-managed package repositories.
0 commit comments