4.5. 将 MicroShift 服务添加到蓝图中
将 MicroShift RPM 软件包添加到镜像构建器蓝图中,可以使用嵌入 MicroShift 的 RHEL for Edge 镜像构建。
- 从第 1 步开始,创建自己的最小蓝图文件,这会导致更快地安装 MicroShift。
从第 2 步开始,使用生成的蓝图进行安装,其中包括所有 RPM 软件包和容器镜像。这是一个较长的安装过程,但启动更快,因为容器引用在本地访问。
重要- 将以下流程中的 < microshift_blueprint.toml > 替换为您要使用的 TOML 文件的名称。
- 将以下流程中的 & lt;microshift_blueprint > 替换为您要用于蓝图的名称。
流程
使用以下示例创建自己的蓝图文件:
自定义镜像构建器蓝图示例
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
注意命令中的通配符
*
使用最新的 MicroShift RPM。如果您需要特定版本,请替换您想要版本的通配符。例如,插入4.15.0
以下载 MicroShift 4.15.0 RPM。可选。使用特定于您的平台架构的
/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
运行以下命令,将蓝图添加到镜像构建器中:
$ sudo composer-cli blueprints push <microshift_blueprint.toml> 1
- 1
- 将 <microshift_blueprint.toml > 替换为 TOML 文件的名称。
验证
运行以下命令,验证 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
可选:运行以下命令来验证 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。
运行以下命令来编辑 ostree 蓝图:
$ vi <microshift_blueprint.toml> 1
- 1
- 指定添加 MicroShift 服务时使用的蓝图文件的名称。
在 ostree 蓝图中添加以下文本示例:
[[packages]] name = "microshift-olm" version = "*"
- 要将软件包中的清单应用到活跃集群,您必须构建一个新的 OSTree 系统,然后部署到机器上。要更新 OSTree 系统,请使用"应用 OSTree 系统上的更新"中的指令