第 5 章 部署 RHEL for Edge 镜像

您可以使用 RHEL 安装程序图形用户界面或 Kickstart 文件部署 RHEL for Edge 镜像。部署 RHEL for Edge 镜像的整体过程取决于您的部署环境是否为基于网络的非网络。

注意

要在裸机上部署镜像,请使用 Kickstart 文件。

基于网络的部署

在基于网络的环境中部署 RHEL for Edge 镜像涉及以下高级别步骤:

  1. 提取镜像文件内容。有关如何下载 RHEL for Edge 镜像的详情,请查看 第 3.6 节 “下载 RHEL for Edge 镜像”
  2. 设置 Web 服务器
  3. 安装镜像

非基于网络的部署

在非网络环境中部署 RHEL for Edge 镜像涉及以下高级别步骤:

  1. 下载 RHEL for Edge 容器和 RHEL for Edge Install。有关如何下载 RHEL for Edge 镜像的详情,请查看 第 3.6 节 “下载 RHEL for Edge 镜像”
  2. 将 RHEL for Edge 容器镜像加载到 Podman 中
  3. 在 Podman 中运行 RHEL for Edge 容器镜像
  4. 加载空蓝图
  5. 构建 RHEL for Edge 安装程序镜像
  6. 准备 qcow 磁盘
  7. 引导虚拟机(VM)
  8. 安装镜像

5.1. 提取 RHEL for Edge 镜像提交

下载提交后,提取 .tar 文件并记下 ref 名称和提交 ID。

下载的提交文件包含包含 OSTree 存储库的 a .tar 文件。OSTree 存储库包含提交和 compose.json 文件。

compose.json 文件包含与提交相关的信息元数据,它们包含"Ref"(引用 ID)和提交 ID 等信息。提交中包含 rpm 软件包。

要提取软件包内容,请执行以下步骤:

先决条件

  1. 创建 kickstart 文件或使用现有文件.

流程

  1. 提取下载的镜像 tar 文件:

    # tar xvf <UUID>-commit.tar
  2. 前往您提取 .tar 文件的目录。

    它包含一个 compose.json 文件和 OSTree 目录。compose.json 文件包含提交号,OSTree 目录包含 rpm 软件包。

  3. 打开 compose.json 文件,再记下提交 ID 号。当您继续设置 Web 服务器时,您需要这个数字。

    如果安装了 jq JSON 处理器,也可以使用 jq 工具检索提交散列 ID:

    # jq '.["ostree-commit"]' < compose.json
  4. 列出提交中的 rpm 软件包。

    # rpm-ostree db list rhel/8/x86_64/edge --repo=repo
  5. 使用 Kickstart 文件运行 RHEL 安装程序。您可以使用任何现有文件,也可以使用 Kickstart Generator 工具创建一个文件。

    在 Kickstart 文件中,确保包含有关如何置备文件系统、创建用户以及如何获取和部署 RHEL for Edge 镜像的详细信息。RHEL 安装程序在安装过程中使用此信息。

    以下是 Kickstart 文件示例:

    lang en_US.UTF-8
    keyboard us
    timezone Etc/UTC --isUtc
    text
    zerombr
    clearpart --all --initlabel
    autopart
    reboot
    user --name=core --group=wheel
    sshkey --username=core "ssh-rsa AAAA3Nza...."
    
    ostreesetup --nogpg --osname=rhel --remote=edge
    --url=https://mirror.example.com/repo/
    --ref=rhel/8/x86_64/edge

其它资源

有关如何创建 Kickstart 文件的详情,请参考: