7.6. 导出内容视图版本
您可以从卫星服务器导出内容视图的版本到存档文件,并使用此存档文件在其他卫星服务器或另一台卫星服务器组织上创建相同的内容视图版本。卫星将复合内容视图导出为普通内容视图。复合性质不会被保留。在导入导出的存档时,会在下游卫星服务器上创建或更新常规内容视图。导出的存档文件包含以下数据:
- 包含内容视图版本元数据的 JSON 文件
- 包含在 Content View 版本中包含的所有存储库的存档文件
Satellite 服务器仅导出添加至内容视图版本中的 RPM 和 kickstart 文件。Satellite 不会导出以下内容:
- Docker 内容
- 内容视图定义和元数据,如软件包过滤器。
先决条件
要导出内容视图,请确保要导出的 Satellite 服务器满足以下条件:
- 确保导出目录有可用的存储空间来容纳导出。
-
确保
/var/lib/pulp/exports
目录有与导出过程中创建的临时文件大小相等的存储空间。 - 确保将下载策略设置为 Immediate,用于您导出的 Content View 中所有存储库。更多信息请参阅 第 4.8 节 “下载策略概述”。
- 确保您同步您导出到所需日期的产品。
-
确保导出内容的用户具有
Content Exporter
角色。
要导出内容视图版本
列出可用于导出的 Content View 版本:
# hammer content-view version list \ --content-view="My_Content_View" \ --organization="My_Organization" ---|----------|---------|-------------|----------------------- ID | NAME | VERSION | DESCRIPTION | LIFECYCLE ENVIRONMENTS ---|----------|---------|-------------|----------------------- 5 | view 3.0 | 3.0 | | Library 4 | view 2.0 | 2.0 | | 3 | view 1.0 | 1.0 | | ---|----------|---------|-------------|----------------------
导出内容视图版本
获取所需版本的版本号。以下示例目标为导出版本
1.0。
# hammer content-export complete version \ --content-view="Content_View_Name" \ --version=1.0 \ --organization="My_Organization"
验证包含导出版本的内容视图的存档是否在导出目录中:
# ls -lh /var/lib/pulp/exports/My_Organization/Content_View_Name/1.0/2021-02-25T18-59-26-00-00/
您需要所有三个文件,例如 tar.gz
存档文件,toc.json
和 metadata.json
才能成功导入内容。
使用块导出
在很多情况下,导出的存档内容可以是几 GB 大小。您可能想要分割大小较小的大小或块。您可以在 hammer content-export
命令中使用 --chunk-size-gb
选项来处理此功能。以下示例使用 --chunk-size-gb=2
将存档分成 2 GB
块。
# hammer content-export complete version \ --chunk-size-gb=2 \ --content-view="Content_View_Name" \ --organization="My_Organization" \ --version=1.0 # ls -lh /var/lib/pulp/exports/My_Organization/view/1.0/2021-02-25T21-15-22-00-00/