2.6. 设置按需同步软件仓库
RHUI 允许您通过将某些存储库设置为 on_demand 同步模式来最大程度减少之前下载的内容量。这样,RHUI 仅在客户端机器请求时下载和存储内容,从而降低存储使用量并降低成本。但是,这种方法的缺点是 RHUI 的性能取决于红帽 CDN 网络的连接速度。
仓库内容类型
存储库内容有三种类型:
- 二进制 RPM 软件仓库
- 源 RPM 软件仓库
- 调试 RPM 软件仓库
同步策略
您可以将每个存储库类型设置为两个同步策略之一:
- immediate
- on_demand
默认情况下,所有策略都设置为 immediate。
设置同步策略
默认情况下,RHUA 节点上的 /etc/rhui/rhui-tools.conf
文件在 [rhui]
部分中包含以下行:
Sync policy can be immediate or on_demand
# Sync policy can be immediate or on_demand
default_sync_policy: immediate
default_sync_policy
选项适用于所有三种类型的内容存储库。
虽然您可以通过编辑此文件来更改策略,但请注意,出于某种原因,您的更改将会丢失。因此,在自定义配置文件中配置同步策略。自定义配置文件位于 /root/.rhui/rhui-tools-custom.conf
,但默认情况下不存在。要使用此文件,请创建该文件并将 [rhui]
部分放在其中。然后,您可以在本节中添加特定的覆盖以自定义特定内容类型的行为。可用的选项有:
-
rpm_sync_policy
-
source_sync_policy
-
debug_sync_policy
例子
on_demand 策略的最常见用法是立即将 Binary RPM 设置为 sync,同时将 Source 和 Debug 存储库设置为 on_demand,因为客户端的一般填充通常不需要这些内容类型。您可以通过几种方法配置它:
[rhui] default_sync_policy: on_demand rpm_sync_policy: immediate
[rhui]
default_sync_policy: on_demand
rpm_sync_policy: immediate
或者
[rhui] default_sync_policy: immediate source_sync_policy: on_demand debug_sync_policy: on_demand
[rhui]
default_sync_policy: immediate
source_sync_policy: on_demand
debug_sync_policy: on_demand
或者
[rhui] default_sync_policy: immediate rpm_sync_policy: immediate source_sync_policy: on_demand debug_sync_policy: on_demand
[rhui]
default_sync_policy: immediate
rpm_sync_policy: immediate
source_sync_policy: on_demand
debug_sync_policy: on_demand
所有这三个配置都有效;它只是首选。
应用策略
更新配置文件后,下一个存储库同步将应用新策略。
如果您从 on_demand 切换到 immediate,则下一次同步将开始下载指定类型的所有内容。
如果您从 immediate 切换到 on_demand,则下一次同步将仅下载存储库元数据。然后,RHUI将根据客户端机器的要求下载内容。
提示和技巧
- 在安装 RHUI 后,将所有存储库设置为 on_demand 可能会导致更快地部署速度,从而更快地交付最终用户,因为最初需要同步元数据。
-
如果您有新安装且不需要支持旧版本的 RHEL 客户端,使用 "martyr client" 策略会很有用。通过使用镜像最终用户配置并运行
dnf update
的客户端,您可以预下载内容到 RHUI 的存储。