9.3. 导出库环境

您可以将组织库环境中所有 Yum 存储库的内容从 Satellite 服务器导出到存档文件,并使用此存档文件在另一个 Satellite 服务器或其他 Satellite 服务器机构中创建相同的存储库。导出的存档文件包含以下数据:

  • 包含内容视图版本元数据的 JSON 文件
  • 包含来自组织库环境中所有存储库的存档文件。

Satellite 服务器仅导出内容视图版本中包含的 RPM 和 kickstart 文件。Satellite 不导出以下内容:

  • Docker 内容

先决条件

要导出组织的库生命周期阶段的内容,请确保要导出的 Satellite 服务器满足以下条件:

  • 确保导出目录有可用的存储空间来容纳导出。
  • 确保 /var/lib/pulp/exports 目录具有与为导出过程中创建的临时文件导出的存储库大小相同的空闲空间。
  • 确保为您导出的库生命周期阶段中的所有存储库将下载策略设置为 Immediate。更多信息请参阅 第 6.7 节 “下载策略概述”
  • 确保您同步了导出至所需日期的产品。

导出机构的库内容

  1. 使用要导出的机构名称或 ID。

    # hammer content-export complete library --organization="My_Organization"
  2. 验证包含内容视图导出的版本的存档是否位于导出目录中:

    # ls -lh /var/lib/pulp/exports/My_Organization/Export-Library/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 pulp pulp 443 Mar  2 03:35 metadata.json

    您需要所有三个文件: tar.gztoc.jsonmetadata.json 文件才能导入。

  3. 在机构中创建新的内容视图 Export-Library。此内容视图包含属于此机构的所有存储库。此内容视图的新版本会自动发布并导出。

使用块导出

在很多情况下,导出的存档内容可能会以几个 GB 为单位。如果要将其分成较小的大小或块。您可以在 export 命令中使用 --chunk-size-gb 标志来处理此功能。在以下示例中,您可以看到如何指定 --chunk-size-gb=2 将存档分成 2 GB 块。

# hammer content-export complete library \
--chunk-size-gb=2 \
--organization="My_Organization"

Generated /var/lib/pulp/exports/My_Organization/Export-Library/2.0/2021-03-02T04-01-25-00-00/metadata.json

# ls -lh /var/lib/pulp/exports/My_Organization/Export-Library/2.0/2021-03-02T04-01-25-00-00/