18.2. 关于引导的点火集成层
引导映像依赖特定的集成层来处理首次启动时的点火配置。了解这些层有助于确保您的自定义基本映像具备适当的动态配置。
点火边缘封装提供四个集成层,将点火与 OSTree 连接起来:
sshdauthorized_keys.d支持-
Ignition 将 SSH 密钥写入
~ / .ssh/authorized_keys.d/ignition目录。上游的OpenSSH不支持AuthorizedKeysFile中的 glob 模式,因此sshd配置必须显式列出路径。 OSTree/var装载和填充内置的
数据剪切模块自动绑定挂载/var目录为可写目录,并在Ignition文件阶段运行之前填充标准子目录。因为OSTree系统强制执行只读
/usr文件系统,所以不需要您执行任何操作。但是,请确保 Ignition 创建的任何自定义文件或持久数据都针对/var或/etc目录,而不是/usr。- 首次引导完成
-
在 Ignition 运行后删除
/boot/ignition.firstboot戳的系统服务。此标记可防止在后续引导时重新运行 Ignition。 - 网络启用
-
当 Ignition 需要获取远程配置时,在
initramfs中启用网络访问的服务。 - 支持的数据剪切模块
以下
数据剪切模块支持引导时点火:-
35ignition-edge:安装Ignition支持脚本、生成器和系统单元的主要集成模块。 -
10coreos-sysctl:配置引导期间所需的内核参数。 -
99journal-conf:配置initramfs阶段的日志记录。 -
99emergency-shell-setup:点火失败时提供调试功能。
-
- 支持的系统服务
集成包括以下
系统服务:-
ignition-firstboot-complete.service: 在 Ignition 完成后运行,并从/boot目录中删除第一个引导标记。 -
coreos-check-ssh-keys.service: 启动后在系统控制台上显示 SSH 密钥状态。 -
coreos-ignition-write-issues.service: 将点火状态信息写入/etc/issue.d/目录,以便在登录时显示。
-