第 14 章 管理自定义文件类型内容
在 Satellite 中,您可能需要管理和分发 SSH 密钥和源代码文件或者更大的文件,如虚拟机镜像和 ISO 文件。为此,Red Hat Satellite 中的自定义产品包括了用于自定义文件类型的存储库。这提供了一种通用方法,用于在产品中纳入任意文件。
您可以将文件上传到存储库,并从上游卫星服务器同步文件。将文件添加到自定义文件类型存储库时,您可以使用普通的 Satellite 管理功能,如将特定版本添加到内容视图,以提供版本控制并在各种胶囊服务器上提供文件存储库。您必须使用 curl -O 通过 HTTP 或 HTTPS 下载文件。
您只能在 Satellite Server 中创建文件类型存储库,但如何创建存储库源的灵活性。您可以在卫星服务器上的目录中创建独立的存储库源,或者在远程 HTTP 服务器上创建独立存储库源,然后将该目录的内容同步到卫星中。当您有多个要添加到 Satellite 存储库的文件时,此方法很有用。
14.1. 为自定义文件类型存储库创建本地源 复制链接链接已复制到粘贴板!
您可以使用 Pulp Manifest 在安装 Satellite 的基础系统上,从文件目录中创建自定义文件类型存储库源。然后,您可以将文件同步到存储库,像任何其他内容类型一样管理自定义文件类型内容。
使用这个流程在安装 Satellite 的基础系统的 目录中配置存储库。要在远程服务器上的目录中创建文件类型仓库,请参阅 第 14.2 节 “为自定义文件类型存储库创建远程源”。
流程
确保 Utils 存储库已启用。
subscription-manager repos \ --enable=rhel-8-for-x86_64-appstream-rpms \ --enable=rhel-8-for-x86_64-baseos-rpms \ --enable=satellite-utils-6.13-for-rhel-8-x86_64-rpms
# subscription-manager repos \ --enable=rhel-8-for-x86_64-appstream-rpms \ --enable=rhel-8-for-x86_64-baseos-rpms \ --enable=satellite-utils-6.13-for-rhel-8-x86_64-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 启用 satellite-utils 模块:
dnf module enable satellite-utils
# dnf module enable satellite-utilsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 安装 Pulp 清单软件包:
satellite-maintain packages install python39-pulp_manifest
# satellite-maintain packages install python39-pulp_manifestCopy to Clipboard Copied! Toggle word wrap Toggle overflow 请注意,这个命令会停止 Satellite 服务并重新运行
satellite-installer。另外,为了避免停止该服务导致的停机,您可以使用:satellite-maintain packages unlock dnf install python39-pulp_manifest satellite-maintain packages lock
# satellite-maintain packages unlock # dnf install python39-pulp_manifest # satellite-maintain packages lockCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建您要用作文件类型存储库的目录,例如:
mkdir -p /var/lib/pulp/local_repos/my_file_repo
# mkdir -p /var/lib/pulp/local_repos/my_file_repoCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将父文件夹添加到允许的导入路径中:
satellite-installer --foreman-proxy-content-pulpcore-additional-import-paths /var/lib/pulp/local_repos
# satellite-installer --foreman-proxy-content-pulpcore-additional-import-paths /var/lib/pulp/local_reposCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将文件添加到目录中或创建测试文件:
touch /var/lib/pulp/local_repos/my_file_repo/test.txt
# touch /var/lib/pulp/local_repos/my_file_repo/test.txtCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行 Pulp Manifest 命令来创建清单:
pulp-manifest /var/lib/pulp/local_repos/my_file_repo
# pulp-manifest /var/lib/pulp/local_repos/my_file_repoCopy to Clipboard Copied! Toggle word wrap Toggle overflow 验证清单是否已创建:
ls /var/lib/pulp/local_repos/my_file_repo
# ls /var/lib/pulp/local_repos/my_file_repo PULP_MANIFEST test.txtCopy to Clipboard Copied! Toggle word wrap Toggle overflow
现在,您可以将本地源导入为自定义文件类型存储库。使用 file:// URL 方案和目录名称来指定 Upstream URL,如 file:///var/lib/pulp/local_repos/my_file_repo。如需更多信息,请参阅 第 14.3 节 “创建自定义文件类型仓库”。
如果更新目录的内容,请重新运行 Pulp Manifest,并在 Satellite 中同步存储库。更多信息请参阅 第 5.6 节 “同步软件仓库”。