跳到内容跳到页面导航:上一页 [access key p]/下一页 [access key n]
documentation.suse.com / SLES Minimal VM 简介

SLES Minimal VM 简介

出版日期:2024-09-17
内容

SLES Minimal VM 的简要概述。

原因

您想知道 SLES Minimal VM 可以为您做些什么。

工作量

读完本文需要 10 分钟。

目标

了解什么是 SLES Minimal VM,以及可以用它来做些什么。

要求
  • 大致熟悉 SUSE Linux Enterprise Server

1 SLES Minimal VM 简介

SLES Minimal VM 是 SUSE Linux Enterprise Server 的精简版本,旨在提供一个基础平台供您构建用于数据中心的系统、创建虚拟应用程序映像和打造设备。您可以对其进行自定义,仅安装特定使用场景所需的软件包。这意味着需要管理的软件包和需要应用的补丁减少了。选择有限的软件包还可减少攻击面,从而提高系统的安全性。

2 SLES Minimal VM 亮点

  • SLES Minimal VM 以虚拟机映像的形式提供,已经过预配置且可立即运行。

  • 虽然您可以按原样部署提供的映像,但也可以使用提供的 KIWI NG 模板创建自定义的 SLES Minimal VM 映像。

  • 提供的 jeos-firstboot 向导会在系统首次引导时运行,可用于配置基本设置,例如系统区域设置和 root 口令。

    适用于 OpenStack 的 SLES Minimal VM 不同,它使用 cloud-init(而非 jeos-firstboot)来配置 OpenStack 实例。

  • 您无需进行任何其他配置,即可与正在运行的 SLES Minimal VM 实例建立 SSH 连接。

  • 默认网络配置设置为使用 DHCP。

  • 初始配置完成后,系统会自动创建 Btrfs 快照。这意味着,如有必要,您可以轻松撤消所有后续更改。

  • SLES Minimal VM 映像使用 kernel-default-base 作为默认内核,如此可减少使用的空间。

  • 由于 openSUSE Leap SLES Minimal VM 和 SLES Minimal VM 相似,因此可以轻松从前者迁移到后者。

3 SLES Minimal VM 与 SUSE Linux Enterprise Server 之间的差异

SLES Minimal VM 与 SUSE Linux Enterprise Server 之间存在一些重大差异。

JeOS Firstboot

SLES Minimal VM 附带了 JeOS Firstboot 工具(适用于 OpenStack 的 SLES Minimal VM 不同,它使用 cloud-init),可用于在系统首次引导期间配置基本设置。这些设置包括键盘布局、时区以及 root 口令。

kernel-default-base

由于存在大小限制,SLES Minimal VM 映像使用 kernel-default-base 作为默认内核。因为该内核不包含裸机的驱动程序,所以占用的空间更小。

如果特定使用场景需要任何被省略的模块,请安装 kernel-default 软件包,以实现完整的内核模块树。常规 SUSE Linux Enterprise Server 安装使用的就是该内核。

默认无储存库

从安装媒体安装 SUSE Linux Enterprise Server 时,系统会自动将安装媒体设置为默认脱机通道。

注意
注意

默认情况下,jeos-firstbootjeos-licenseslive-langset-data 软件包不会接收更新。只有在进行系统的初始配置时需要这些软件包,之后可以将它们去除或保持原样,不会引发问题。如果您希望它们保持最新状态,请启用 Development Tools 模块。

Zypper 配置

SLES Minimal VM 是 SUSE Linux Enterprise Server 的精简版本。有一部分大小的缩减是通过启用 /etc/zypp/zypp.conf 中的以下两个选项实现的:rpm.install.excludedocs = yes(默认在安装过程中排除所有标记为文档的文件)和 solver.onlyRequires = true(默认禁止安装建议的软件包)。

基本软件包

您可以使用 KIWI NG 工具构建 SLES Minimal VM 映像。KIWI NG 的配置文件(称为模板)列出了映像中必须包含的软件包。请注意,模板中列出的软件包可能会在映像构建过程中提取所需的依赖项。这表示生成的映像所包含的软件包可能比模板中指定的多。

磁盘布局

与 SUSE Linux Enterprise Server 在安装期间计算可调整的磁盘布局建议不同,SLES Minimal VM 使用如下固定的虚拟映像分区方案:

  • 2 MB BIOS 引导

  • 33 MB EFI 系统

  • 24 GB Linux 文件系统

要获得额外的磁盘空间,您可以扩展虚拟主机中的现有磁盘,也可以向虚拟机添加另一个磁盘。如果您选择后一个选项,则必须手动进行分区和格式化。

已禁用 systemd-coredump

systemd-coredump 在 SLES Minimal VM 映像中默认处于禁用状态。要收集查错所需的应用程序内核转储,请执行以下步骤:

  • 安装 systemd-coredump 软件包,该软件包中包含 /usr/lib/sysctl.d/50-coredump.conf

  • 重引导系统或使用 sysctl --system 命令启用核心转储。

有关更多信息,请参见 https://documentation.suse.com/sles/html/SLES-all/cha-tuning-systemd-coredump.html

4 获取 SLES Minimal VM

您可以从官方下载 网页下载所需的 SLES Minimal VM 变体。该页面提供以下 SLES Minimal VM 版本:

  • 适用于 KVM 和 Xen 的完全虚拟 SLES Minimal VM

  • 适用于 VMware 的 SLES Minimal VM

  • 适用于 Microsoft Hyper-V 的 SLES Minimal VM

  • 适用于 OpenStack 的 SLES Minimal VM

  • 适用于 Xen 的半虚拟 SLES Minimal VM

  • 适用于 KVM 的完全虚拟 SLES Minimal VM (AArch64)

注意
注意:需要订阅 SUSE

SLES Minimal VM 默认不包含任何储存库。您必须注册系统以访问联机储存库。需要付费订阅才能注册。

5 将 SLES Minimal VM 与 QEMU 搭配使用的示例

您可以从官方下载 网页下载现成的映像,以试用 SLES Minimal VM。创建基于 SLES Minimal VM 的虚拟机的具体过程取决于您选择的版本。以下示例演示了如何使用 JeOS Firstboot 或 Combustion 通过 QEMU 创建和配置 SLES Minimal VM 实例。

5.1 使用 JeOS Firstboot 手动运行和配置 SLES Minimal VM

在 QEMU 中运行以下命令创建 SLES Minimal VM 虚拟机。

> qemu-system-x86_64 \
    -enable-kvm \
    -m 1G \
    -smp 1 \
    -drive if=virtio,format=qcow2,file=IMAGE.qcow2 \
    -nographic \
    -netdev user,id=net0,hostfwd=tcp::2222-:22 \
    -device virtio-net-pci,netdev=net0

系统引导后,JeOS Firstboot 会指引您完成初始系统设置。

注意
注意:更改区域设置

SLES Minimal VM 映像仅随附 en_US 区域设置。完成设置后,您可以通过安装 glibc-locale 软件包并运行 localectl set-locale LANG=LOCALE 命令(请将 LOCALE 替换为所需的语言区域设置,例如 de_DE.UTF-8),来安装并选择所需的系统区域设置。

请注意,要执行此操作,您需要订阅 SUSE,并使用 SUSEConnect -e EMAIL ‑r REGISTRATION_CODE 命令注册 VM。

  1. 首先,系统会提示您使用键盘选择对话框选择合适的键盘布局。

  2. 接下来阅读并接受许可协议。不接受许可协议将无法继续。

  3. 指定所需的时区。

  4. 出现提示时,指定并确认所需的 root 口令。

  5. 最后一步,系统会引导您注册系统。如果您只打算测试 SLES Minimal VM,可以跳过注册步骤。

  6. 完成初始配置后,您便可以使用在设置过程中指定的口令以 root 身份登录系统。

提示
提示:首次引导后安装产品补丁

我们强烈建议您在成功安装并注册 SLES Minimal VM 后安装可用的最新联机更新。

5.2 使用 Combustion 自动运行和配置 SLES Minimal VM

SLES Minimal VM 附带 Combustion 配置工具,可以在首次引导时使用专用脚本文件自动配置系统。当您需要部署具有相同初始配置的多个虚拟机时,此功能特别有用。

要在 QEMU 中触发 Combustion 工具,请使用带 fw_cfg 参数的 qemu 命令,该参数用于指定 script 文件的位置。

要了解这在实践中是如何运作的,您可以使用一个简单的 Combustion 脚本,自动将 root 用户添加到在 QEMU 中运行的 SLES Minimal VM 实例。

首先,生成所需 root 口令的哈希值。可以使用 openssl passwd -6 命令来完成此任务。将以下指令添加到 script 文件中(请将示例哈希值替换为生成的哈希值):

echo 'root:$5$.wn2BZHlEJ5R3B1C$TAHEchlU.h2tvfOpOki54NaHpGYKwdNhjaBuSpDotD7' | chpasswd -e

使用以下命令在 QEMU 中基于 SLES Minimal VM 设置一个新虚拟机(请将 IMAGESCRIPT 分别替换为 .qcow2 映像和 script 文件的路径名称):

> qemu-system-x86_64 \
        -enable-kvm \
        -m 1G \
        -smp 1 \
        -drive if=virtio,format=qcow2,file=IMAGE.qcow2 \
        -nographic \
        -netdev user,id=net0,hostfwd=tcp::2222-:22 \
        -device virtio-net-pci,netdev=net0 \
        -fw_cfg name=opt/org.opensuse.combustion/script,file=SCRIPT

请注意,Combustion 运行时不会提供任何反馈或输出。表明配置已正确执行的唯一迹象是系统未启动 JeOS Firstboot 工具,并且您可以使用之前生成的口令以 root 身份登录系统。

注意
注意:Combustion 文档

有关使用 Combustion 的详细信息,请参见 https://documentation.suse.com/sle-micro/html/SLE-Micro-all/cha-images-combustion.html