9.7. 导出存储库
您可以从 Satellite 服务器在机构的库环境中导出存储库的内容。您可以使用此存档文件在另一个 Satellite 服务器或其他 Satellite 服务器机构中创建相同的存储库。
您可以从 Satellite 服务器导出以下内容:
- RPM 软件仓库
- Kickstart 软件仓库
- Ansible 存储库
- 文件仓库
您无法从 Satellite 服务器导出 Docker 内容。
导出包含以下数据:
- 包含存储库元数据的两个 JSON 文件。
- 一个或多个存档文件,其中包含来自机构的库环境的存储库的内容。
您需要所有文件 tar.gz
,toc.json
和 metadata.json
才能导入。
先决条件
要导出存储库的内容,请确保要从中导出的 Satellite 服务器,满足以下条件:
- 确保导出目录有足够的可用空间来容纳导出。
-
确保
/var/lib/pulp/exports
目录有足够的可用空间,相当于为导出过程中创建的临时文件导出库大小。 - 确保您导出的库生命周期阶段中将下载策略设置为 Immediate。如需更多信息,请参阅 第 6.7 节 “下载策略概述”。
- 确保您同步了导出至所需日期的产品。
导出存储库
使用要导出的存储库名称或 ID。
# hammer content-export complete repository \ --organization="My_Organization" \ --product="My_Product" \ --name="My_Repository"
可选:验证导出的归档是否位于导出目录中:
# ls -lh /var/lib/pulp/exports/My_Organization/Export-My_Repository/1.0/2021-03-02T03-35-24-00-00 total 68M -rw-r--r--. 1 pulp pulp 68M Mar 2 03:35 export-1e25417c-6d09-49d4-b9a5-23df4db3d52a-20210302_0335.tar.gz -rw-r--r--. 1 pulp pulp 333 Mar 2 03:35 export-1e25417c-6d09-49d4-b9a5-23df4db3d52a-20210302_0335-toc.json -rw-r--r--. 1 root root 443 Mar 2 03:35 metadata.json
使用 Chunking 导出存储库
在很多情况下,导出的内容存档大小可能有多个 GB。如果要将其分成较小的大小的块,您可以在 export 命令中使用 --chunk-size-gb
参数,并使用整数值以 GB 为单位限制大小。
将内容导出到有限大小的归档块,如 2 GB:
# hammer content-export complete repository \ --chunk-size-gb=2 \ --organization="My_Organization" \ --product="My_Product" \ --name="My_Repository" Generated /var/lib/pulp/exports/My_Organization/Export-My_Repository/1.0/2021-03-02T03-35-24-00-00/metadata.json
可选:查看导出的数据:
# ls -lh /var/lib/pulp/exports/My_Organization/Export-My_Repository/1.0/2021-03-02T03-35-24-00-00/