4.5. 将 MicroShift 服务添加到蓝图中


将 MicroShift RPM 软件包添加到镜像构建器蓝图中,可以使用嵌入 MicroShift 的 RHEL for Edge 镜像构建。

  • 从第 1 步开始,创建自己的最小蓝图文件,这会导致更快地安装 MicroShift。
  • 从第 2 步开始,使用生成的蓝图进行安装,其中包括所有 RPM 软件包和容器镜像。这是一个较长的安装过程,但启动更快,因为容器引用在本地访问。

    重要
    • 将以下流程中的 < microshift_blueprint.toml > 替换为您要使用的 TOML 文件的名称。
    • 将以下流程中的 & lt;microshift_blueprint > 替换为您要用于蓝图的名称。

流程

  1. 使用以下示例创建自己的蓝图文件:

    自定义镜像构建器蓝图示例

    cat > <microshift_blueprint.toml> <<EOF 1
    name = "<microshift_blueprint>" 2
    
    description = ""
    version = "0.0.1"
    modules = []
    groups = []
    
    [[packages]]
    name = "microshift"
    version = "*"
    
    [customizations.services]
    enabled = ["microshift"]
    EOF

    1
    <microshift_blueprint.toml > 是 TOML 文件的名称。
    2
    <microshift_blueprint > 是蓝图的名称。
    注意

    命令中的通配符 * 使用最新的 MicroShift RPM。如果您需要特定版本,请替换您想要版本的通配符。例如,插入 4.15.0 以下载 MicroShift 4.15.0 RPM。

  2. 可选。使用特定于您的平台架构的 /usr/share/microshift/blueprint 目录中安装的蓝图。有关 blueprint 部分的说明,请参见以下示例片断:

    生成的镜像构建器蓝图示例片断

    name = "microshift_blueprint"
    description = "MicroShift 4.15.1 on x86_64 platform"
    version = "0.0.1"
    modules = []
    groups = []
    
    [[packages]] 1
    name = "microshift"
    version = "4.15.1"
    ...
    ...
    
    [customizations.services] 2
    enabled = ["microshift"]
    
    [customizations.firewall]
    ports = ["22:tcp", "80:tcp", "443:tcp", "5353:udp", "6443:tcp", "30000-32767:tcp", "30000-32767:udp"]
    ...
    ...
    
    [[containers]] 3
    source = "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:f41e79c17e8b41f1b0a5a32c3e2dd7cd15b8274554d3f1ba12b2598a347475f4"
    
    [[containers]]
    source = "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:dbc65f1fba7d92b36cf7514cd130fe83a9bd211005ddb23a8dc479e0eea645fd"
    ...
    …
    EOF

    1
    使用与 microshift-release-info RPM 兼容的相同版本的所有非可选 MicroShift RPM 软件包的引用。
    2
    在系统启动时自动启用 MicroShift 并应用默认网络设置的引用。
    3
    对离线部署所需的所有非可选 MicroShift 容器镜像的引用。
  3. 运行以下命令,将蓝图添加到镜像构建器中:

    $ sudo composer-cli blueprints push <microshift_blueprint.toml> 1
    1
    <microshift_blueprint.toml > 替换为 TOML 文件的名称。

验证

  1. 运行以下命令,验证 Image Builder 配置只列出 MicroShift 软件包:

    $ sudo composer-cli blueprints depsolve <microshift_blueprint> | grep microshift 1
    1
    <microshift_blueprint > 替换为蓝图的名称。

    输出示例

    blueprint: microshift_blueprint v0.0.1
        microshift-greenboot-4.15.1-202305250827.p0.g4105d3b.assembly.4.15.1.el9.noarch
        microshift-networking-4.15.1-202305250827.p0.g4105d3b.assembly.4.15.1.el9.x86_64
        microshift-release-info-4.15.1-202305250827.p0.g4105d3b.assembly.4.15.1.el9.noarch
        microshift-4.15.1-202305250827.p0.g4105d3b.assembly.4.15.1.el9.x86_64
        microshift-selinux-4.15.1-202305250827.p0.g4105d3b.assembly.4.15.1.el9.noarch

  2. 可选:运行以下命令来验证 Image Builder 配置列出了要安装的所有组件:

    $ sudo composer-cli blueprints depsolve <microshift_blueprint> 1
    1
    <microshift_blueprint > 替换为蓝图的名称。

4.5.1. 将 Operator Lifecycle Manager (OLM)服务添加到蓝图中

安装 MicroShift 时,Operator Lifecycle Manager (OLM)软件包不会被默认安装。您可以在 ostree 蓝图中添加 microshift-olm 软件包,以便在 MicroShift 中启用 OLM。

  1. 运行以下命令来编辑 ostree 蓝图:

    $ vi <microshift_blueprint.toml> 1
    1
    指定添加 MicroShift 服务时使用的蓝图文件的名称。
  2. 在 ostree 蓝图中添加以下文本示例:

    [[packages]]
    name = "microshift-olm"
    version = "*"
  3. 要将软件包中的清单应用到活跃集群,您必须构建一个新的 OSTree 系统,然后部署到机器上。要更新 OSTree 系统,请使用"应用 OSTree 系统上的更新"中的指令
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.