RKE 元数据功能允许您在发布新版本的 Kubernetes 后,无需升级 Rancher,立即为集群配置元数据。此功能对于使用 Kubernetes 的补丁版本非常有用,例如,如果您希望在仅支持 Kubernetes v1.14.6 的 Rancher Server 版本中,将业务集群升级到 Kubernetes v1.14.7。
Rancher 的 Kubernetes 元数据包含了 Rancher 配置 时可以使用的 Kubernetes 版本信息。Rancher 定期同步数据,并为系统镜像 服务选项和插件模板创建自定义资源定义(CRD)。因此,当新的 Kubernetes 版本与 Rancher Server 版本兼容时,Kubernetes 元数据使 Rancher 可以使用新的 Kubernetes 版本来配置集群。元数据概述了 Rancher Kubernetes Engine(RKE)用于部署各种 Kubernetes 版本的信息。
下表描述了受定期数据同步影响的 CRD。
管理员可以将 RKE 元数据设置配置为执行以下操作:
- 刷新 Kubernetes 元数据,如果一个新的 Kubernetes 补丁版本出来了,用户希望 Rancher 在不升级 Rancher 的情况下为集群提供最新版本的 Kubernetes。
- 更改 Rancher 用于同步元数据的 URL,如果需要让 Rancher 从本地的端点同步而不是与 GitHub 同步,这对于离线环境非常有用。
- 防止 Rancher 自动同步元数据,这是禁止 Rancher 中使用新的和不受支持的 Kubernetes 版本的一种方法。
默认情况下,刷新 Kubernetes 元数据的选项可供系统管理员使用,也可供具有管理集群驱动的任何用户使用。
要强制 Rancher 刷新 Kubernetes 元数据,可以在工具 > 驱动管理 > 刷新 Kubernetes 元数据下执行手动刷新操作。
RKE 元数据配置控制 Rancher 同步元数据的频率以及从何处下载数据。您可以从 Rancher UI 中的设置或通过 API v3/settings/rke-metadata-config
配置元数据。
元数据的配置方式取决于 Rancher 版本。
import Tabs from ‘@theme/Tabs’; import TabItem from ‘@theme/TabItem’;
转到全局视图并单击系统设置选项卡。
您可以选择填写以下参数:
refresh-interval-minutes
:这是 Rancher 等待同步元数据的时间。若要禁用定期刷新,请将refresh-interval-minutes
设置为 0。url
: 这是 Rancher 从中获取数据的 HTTP 路径。该路径必须是 JSON 文件的直接路径。例如,Rancher v2.4 的默认 URL 是https://releases.rancher.com/kontainer-driver-metadata/release-v2.4/data.json
。
如果没有离线环境,则无需指定 Rancher 获取元数据的 URL,因为默认设置是从 Rancher 的元数据存储库中提取。
但是,如果您有需求,则需要将 Kubernetes 元数据仓库镜像到 Rancher 可用的位置。然后,您需要更改 URL 以指向 JSON 文件的新位置。
转到rke-metadata-config部分。单击省略号(…)并单击升级
您可以选择填写以下参数:
url
:这是 Rancher 从中获取数据的 HTTP 路径。branch
:如果 URL 是 Git URL,则指 Git 分支名称。
如果没有离线环境,则不需要指定 Rancher 获取元数据的 URL 或 Git 分支,因为默认设置是从 Rancher 的元数据 Git 仓库中获取。
但是,如果您有需求,则需要将 Kubernetes 元数据仓库镜像到 Rancher 可用的位置。然后需要在rke-metadata-config
设置中更改 URL 和 Git 分支,以指向代码库的新位置。
Rancher Server 会定期刷新并下载rke-metadata-config
中配置定元数据。如果新的元数据中包含当前 Rancher Server 版本支持的新的 Kubernetes 版本元数据。则用户可以在不升级 Rancher 的情况下,开始使用这些新的 Kubernetes 版本。有关 Kubernetes 和 Rancher 版本的兼容性表,请参阅服务条款。
如果您有一个离线环境,则可能无法从 Rancher 的 Git 代码库中自动定期刷新 Kubernetes 元数据。在这种情况下,应该禁用定期刷新以防止在日志中显示相关错误。或者,您可以配置rke-metadata-config
,以便 Rancher 可以与 RKE 元数据的本地副本同步。
若要将 Rancher 与 RKE 元数据的本地镜像同步,管理员将通过更新rke-metadata-config
以指向镜像的仓库。请参见。
To sync Rancher with a local mirror of the RKE metadata, an administrator would configure the rke-metadata-config
settings to point to the mirror. For details, refer to Configuring the Metadata Synchronization.
- 要下载私有镜像仓库所需的镜像,请单击 Rancher UI 左下角的 Rancher Server 版本。
- 下载 Linux 或 Windows 操作系统的特定镜像列表。
- 下载。
- 使用与过程中相同的步骤准备私有镜像仓库,但不要使用发布公告页面中的
rancher-images.txt
,而是使用从前面步骤获得的镜像列表。
结果: Rancher 的离线安装现在可以同步 Kubernetes 元数据了。如果在新版本的 Kubernetes 发布后,更新了本地的 RKE 元数据 Git 库,并且在私有镜像仓库中同步了新的镜像,那么您可以在无需升级 Rancher Server 版本的情况下使用新版本的 Kubernetes 配置集群。