更改 Kubernetes 软件包仓库
此页面说明了如何在升级集群时为所需的 Kubernetes 次要版本启用包存储库。这仅适用于在pkgs.k8s.io
托管的社区拥有包存储库的用户。与旧的包存储库不同,社区拥有的包存储库以一种为每个 Kubernetes 次要版本提供专用包存储库的方式构建。
注意
本指南仅涵盖 Kubernetes 升级流程的一部分。有关升级 Kubernetes 集群的更多信息,请参阅升级指南。注意
此步骤仅在将集群升级到另一个**次要**版本时才需要。如果您要升级到同一次要版本中的另一个补丁版本(例如,从 v1.31.5 升级到 v1.31.7),则无需遵循本指南。但是,如果您仍然使用旧的包存储库,则需要在升级之前迁移到新的社区拥有的包存储库(有关如何执行此操作的更多详细信息,请参阅下一节)。开始之前
本文档假设您已在使用社区拥有的包存储库 (pkgs.k8s.io
)。如果不是这样,强烈建议您按照官方公告中所述迁移到社区拥有的包存储库。
apt.kubernetes.io
和yum.kubernetes.io
) 已被弃用并从 2023 年 9 月 13 日起冻结。**强烈建议您使用托管在pkgs.k8s.io
的新包存储库,并且这是为了安装 2023 年 9 月 13 日之后发布的 Kubernetes 版本所必需的。**弃用的旧存储库及其内容可能会在将来随时删除,并且不会有进一步的通知期限。新的包存储库提供了从 v1.24.0 开始的 Kubernetes 版本的下载。验证是否使用 Kubernetes 包存储库
如果您不确定是否在使用社区拥有的包存储库或旧的包存储库,请执行以下步骤进行验证
打印定义 Kubernetes apt
存储库的文件的内容
# On your system, this configuration file could have a different name
pager /etc/apt/sources.list.d/kubernetes.list
如果您看到类似于以下内容的行
deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.30/deb/ /
**您正在使用 Kubernetes 包存储库,本指南适用于您。** 否则,强烈建议您按照官方公告中所述迁移到 Kubernetes 包存储库。
打印定义 Kubernetes yum
存储库的文件的内容
# On your system, this configuration file could have a different name
cat /etc/yum.repos.d/kubernetes.repo
如果您看到与以下输出中的 baseurl
类似的 baseurl
[kubernetes]
name=Kubernetes
baseurl=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/repodata/repomd.xml.key
exclude=kubelet kubeadm kubectl
**您正在使用 Kubernetes 包存储库,本指南适用于您。** 否则,强烈建议您按照官方公告中所述迁移到 Kubernetes 包存储库。
打印定义 Kubernetes zypper
存储库的文件的内容
# On your system, this configuration file could have a different name
cat /etc/zypp/repos.d/kubernetes.repo
如果您看到与以下输出中的 baseurl
类似的 baseurl
[kubernetes]
name=Kubernetes
baseurl=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/repodata/repomd.xml.key
exclude=kubelet kubeadm kubectl
**您正在使用 Kubernetes 包存储库,本指南适用于您。** 否则,强烈建议您按照官方公告中所述迁移到 Kubernetes 包存储库。
注意
用于 Kubernetes 包存储库的 URL 不限于 pkgs.k8s.io
,它也可以是以下之一
pkgs.k8s.io
pkgs.kubernetes.io
packages.kubernetes.io
切换到另一个 Kubernetes 包存储库
此步骤应在从一个 Kubernetes 次要版本升级到另一个版本时完成,以便能够访问所需 Kubernetes 次要版本的软件包。
使用您选择的文本编辑器打开定义 Kubernetes
apt
存储库的文件nano /etc/apt/sources.list.d/kubernetes.list
您应该看到一行包含您当前 Kubernetes 次要版本的 URL。例如,如果您使用的是 v1.30,则您应该看到以下内容
deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.30/deb/ /
将 URL 中的版本更改为**下一个可用的次要版本**,例如
deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.31/deb/ /
保存文件并退出文本编辑器。继续执行相关的升级说明。
使用您选择的文本编辑器打开定义 Kubernetes
yum
存储库的文件nano /etc/yum.repos.d/kubernetes.repo
您应该看到一个包含两个包含您当前 Kubernetes 次要版本的 URL 的文件。例如,如果您使用的是 v1.30,则您应该看到以下内容
[kubernetes] name=Kubernetes baseurl=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/ enabled=1 gpgcheck=1 gpgkey=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/repodata/repomd.xml.key exclude=kubelet kubeadm kubectl cri-tools kubernetes-cni
将这些 URL 中的版本更改为**下一个可用的次要版本**,例如
[kubernetes] name=Kubernetes baseurl=https://pkgs.k8s.io/core:/stable:/v1.31/rpm/ enabled=1 gpgcheck=1 gpgkey=https://pkgs.k8s.io/core:/stable:/v1.31/rpm/repodata/repomd.xml.key exclude=kubelet kubeadm kubectl cri-tools kubernetes-cni
保存文件并退出文本编辑器。继续执行相关的升级说明。
下一步
- 了解如何升级 Linux 节点。
- 了解如何升级 Windows 节点。