更改 Kubernetes 软件包仓库
此页面说明了如何在升级集群时为所需的 Kubernetes 次要版本启用软件包仓库。这仅适用于 `pkgs.k8s.io` 上托管的社区拥有的软件包仓库的用户。与旧版软件包仓库不同,社区拥有的软件包仓库的结构方式是每个 Kubernetes 次要版本都有一个专用的软件包仓库。
注意
本指南仅涵盖 Kubernetes 升级过程的一部分。有关升级 Kubernetes 集群的更多信息,请参阅升级指南。注意
仅在将集群升级到另一个**次要**版本时才需要此步骤。如果您要升级到同一次要版本中的另一个补丁版本(例如,从 v1.32.5 升级到 v1.32.7),则无需遵循本指南。但是,如果您仍在使用旧版软件包仓库,则需要在升级之前迁移到新的社区拥有的软件包仓库(有关如何执行此操作的更多详细信息,请参阅下一节)。准备工作
本文档假定您已经在使用社区拥有的软件包仓库 (`pkgs.k8s.io`)。如果不是这种情况,强烈建议您按照官方公告中的说明迁移到社区拥有的软件包仓库。
验证是否使用了 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.31/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.31/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.31/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.31/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.31/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.31,您应该会看到以下内容
deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.31/deb/ /
将 URL 中的版本更改为**下一个可用的次要版本**,例如
deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.32/deb/ /
保存文件并退出文本编辑器。继续按照相关的升级说明进行操作。
使用您选择的文本编辑器打开定义 Kubernetes `yum` 仓库的文件
nano /etc/yum.repos.d/kubernetes.repo
您应该会看到一个包含当前 Kubernetes 次要版本的两个 URL 的文件。例如,如果您使用的是 v1.31,您应该会看到以下内容
[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
将这些 URL 中的版本更改为**下一个可用的次要版本**,例如
[kubernetes] name=Kubernetes baseurl=https://pkgs.k8s.io/core:/stable:/v1.32/rpm/ enabled=1 gpgcheck=1 gpgkey=https://pkgs.k8s.io/core:/stable:/v1.32/rpm/repodata/repomd.xml.key exclude=kubelet kubeadm kubectl cri-tools kubernetes-cni
保存文件并退出文本编辑器。继续按照相关的升级说明进行操作。
后续步骤
- 了解如何升级 Linux 节点。
- 了解如何升级 Windows 节点。