从CoreOS容器Linux(CL)迁移到FedoraFCOS(CoreOS)

Fedora CoreOS是CoreOS容器Linux的官方继任者,它 走到了生命的尽头 2020年5月26日。本页尝试记录CL和FCOS之间的差异,以便轻松过渡到FCOS。

引言

要从CL迁移到FCOS,您必须转换旧的Container Linux配置、Ignition配置或 cloud-config 将文件添加到 Butane配置 并将内容改编为FCOS。由于许多配置详细信息都已更改,因此您应该参考此页面和 CL迁移问题 在GitHub上。

安装更改

对安装过程进行了以下更改:

  • 这个 coreos-install 脚本已被替换为 coreos-installer 。它提供了类似的功能。

  • 这个 coreos.autologin FCOS目前不支持内核命令行参数。出于访问恢复的目的,有可用的说明 这里

  • FCOS中尚不支持某些CL平台,如Vagant。请参阅 下载页面 以查看可用的图像类型。

软件包更改

  • etcd 不包括在FCOS中。参考 正在运行etcd 获取在FCOS上将其作为容器运行的说明。

  • flannel 不包括在FCOS中。

  • Podman容器运行时包含在FCOS中,是推荐的容器运行时。不包括RKT容器运行时。

  • FCOS没有推荐的机制来选择的版本 docker

  • 网络配置现在由NetworkManager处理,而不是 systemd-networkd

  • 对于时间同步,请使用 chronyd 而不是 ntpdsystemd-timesyncd

  • 自动更新现在由Zincati协调,如 津卡提文献 。回滚机制(通过GRUB)现在由 rpm-ostree

  • 重新启动管理器的功能( locksmith )被滚入 津卡提

  • 这个 update-ssh-keys FCOS上未提供工具。SSHD使用 帮助者计划 直接从中读取密钥文件 ~/.ssh/authorized_keys.d

配置更改

编写Butane配置时,请注意以下更改:

  • coreos-metadata余燃 。元数据变量名称的前缀已从 COREOS_AFTERBURN_ ,并且以下平台名称已更改:

    • EC2AWS

    • GCEGCP

      有关更多信息,请参阅 续烧文档

  • 默认情况下,FCOS不允许通过SSH进行密码登录。我们建议 配置SSH密钥 取而代之的是。如果需要,您可以 启用SSH密码身份验证

  • 因为 usermod 在FCOS上还没有完全发挥作用,有一个 docker 组中的 /etc/group 文件。这是一项权宜之计,以促进顺利过渡至FCOS。该团队正在开发一种更实用的 usermod ,届时, docker 默认情况下,不再包括组。请参阅 码头组问题

  • 无法在以下位置创建目录 / 目录。更改仅限于 /etc/var 。请参阅 storage 节点,了解有关将目录和文件写入FCOS的详细信息。

  • Butane配置不再有单独的网络配置部分。使用Butane files 节来编写一个 网络管理器密钥文件 取而代之的是。

操作员备注

  • FCOS提供 尽力而为稳定性 ,并且可能偶尔包括某些用例或工作负载的倒退或破坏性更改。

  • CL有三个释放渠道: alphabeta ,及 stable 。FCOS生产 发布流nexttesting ,及 stable ,具有稍有不同的语义。

  • 总体而言,SELinux限制的工作方式应该与Fedora相同。

  • 要将Ignition配置部署为PXE映像(CL术语中的“定制OEM”)的一部分,请遵循 同样的流程 与CL相同,但将 config.ign 文件位于归档的根目录中。

  • 在CL中,度量/遥测数据通过更新机制收集。在FCOS中,数据通过以下方式收集(没有唯一标识符) fedora-coreos-pinger

    • 要防止ping程序收集或传输任何信息,您可以禁用报告。要执行此操作,请将配置代码片段放入 /etc/fedora-coreos-pinger/config.d/99-disable-reporting.toml 包含以下内容:

      [reporting]
      enabled = false
  • 云CLI客户端不包括在FCOS中。有一项计划是创建一个在FCOS上运行的“工具”容器。

  • 打开粘滞目录中的现有文件时,其行为与CL不同。看见 相关系统将提交

  • CL使同步多线程(SMT)处于启用状态,但建议用户在系统易受某些问题影响时将其关闭 L1TFMDS 。默认情况下,FCOS 自动禁用SMT 对于易受攻击的系统。

  • 总体而言, docker 使用Fedora的默认配置,这在很多方面都不同。值得注意的是,日志记录驱动程序设置为 journald 并且启用了实时恢复。

实施说明

  • CL上的默认文件系统是 ext4 。在FCOS上,缺省值为 xfs

  • 而CL使用了SYSTEM D套接字激活 sshd ,FCOS启动 sshd 默认情况下在启动时。

  • CL有一个“OEM分区”, /usr/share/oem 具有用户可定制的GRUB配置和一些附加工具,但FCOS没有这些。