创建完整的 LXD 服务器¶
信息
此过程适用于 Rocky Linux 8.x 或 9.x。如果您正在寻找来自 LXD 前首席开发人员的此项目的现代实现,但仅适用于 Rocky Linux 9.x,请查看 Incus Server 书籍。
LXD 项目发生了什么
一年前,lxc-users 邮件列表发布了以下公告
LXD 项目的创建者和主要贡献者 Canonical 决定,在作为 Linux Containers 社区的一部分超过八年后,该项目现在将更好地服务于 Canonical 自身的项目集。
决定因素之一是 LXD 的一些首席开发人员辞职,他们随后将 LXD 分叉到 Incus,并在 2023 年 8 月宣布了分叉。发布版本 (0.1) 于 2023 年 10 月发布,开发人员此后已通过 0.7(截至 2024 年 3 月)的逐步发布快速构建了该版本。紧随 0.7 之后的是长期支持版本 6.0 LTS,发布于 2024 年 4 月 4 日,现在是 6.4 LTS(截至 2024 年 9 月)。
在整个过程中,Canonical 被认为会继续维护与 Linux Containers 提供的容器镜像的链接。但是,由于 许可证变更,Linux Containers 无法继续在 LXD 中提供容器镜像。虽然 Linux Containers 无法再为 LXD 提供容器镜像,但 LXD 项目已设法构建了一些容器,包括适用于 Rocky Linux 的容器。
本文档使用 LXD 而不是 Incus。
简介¶
LXD 最好在 官方网站 上进行描述,但可以将其视为一个容器系统,它提供了容器中虚拟服务器的优势。
它非常强大,并且通过适当的硬件和设置,可以在单个硬件上创建许多服务器实例。如果您将其与快照服务器配对,您还将拥有一个容器集,如果您的主服务器出现故障,您可以几乎立即启动这些容器。
(您应该将其视为传统备份以外的东西。您仍然需要某种常规备份系统,例如 rsnapshot。)
LXD 的学习曲线可能很陡峭,但本书将尝试为您提供丰富的知识,帮助您在 Rocky Linux 上部署和使用 LXD。
对于那些想在笔记本电脑或工作站上使用 LXD 作为实验室环境的人,请参见 附录 A: 工作站设置。
先决条件和假设¶
- 一台配置良好的 Rocky Linux 服务器。在生产环境中,请考虑为 ZFS 磁盘空间使用单独的硬盘(如果您使用 ZFS,则必须这样做)。是的,这里的假设是裸机服务器,而不是 VPS(虚拟专用服务器)。
- 这是一个高级主题,但并不难理解。如果您从一开始就遵循这些说明,您应该会成功。也就是说,了解一些关于容器管理的基本知识将大有帮助。
- 在您的机器上舒适地使用命令行,并且熟练使用命令行编辑器。(在这些示例中使用 *vi*,但您可以用您喜欢的编辑器替换它。)
- 在大多数这些过程中,您必须是您的非特权用户。对于早期设置步骤,您需要是 root 用户或能够
sudo
成为 root 用户。在这些章节中,我们假设您的非特权用户为“lxdadmin”。您需要稍后在该过程中创建此用户帐户。 - 对于 ZFS,请确保未启用 UEFI 安全启动。否则,您将不得不签署 ZFS 模块才能使其加载。
- 大多数情况下使用基于 Rocky Linux 的容器
概要¶
- 第 1 章:安装和配置 涉及安装主服务器。通常,在生产环境中使用 LXD 的正确方法是拥有主服务器和快照服务器。
- 第二章:ZFS 设置介绍了 ZFS 的设置和配置。ZFS 是由 Sun Microsystems 创建的开源逻辑卷管理器和文件系统,最初用于其 Solaris 操作系统。
- 第三章:LXD 初始化和用户设置介绍了基本初始化和选项,以及在整个流程中使用的非特权用户的设置。
- 第四章:防火墙设置包含了
firewalld
的设置选项。 - 第五章:图像设置和管理介绍了将操作系统镜像安装到容器并配置它们的过程。
- 第六章:配置文件介绍了如何添加配置文件并将它们应用于容器,主要涵盖 macvlan 及其在 LAN 或 WAN 上进行 IP 地址分配的重要性。
- 第七章:容器配置选项简要介绍了一些容器的基本配置选项,并提供了一些修改配置选项的益处和副作用。
- 第八章:容器快照详细介绍了主服务器上容器的快照过程。
- 第九章:快照服务器涵盖了快照服务器的设置和配置,以及如何创建主服务器和快照服务器之间的共生关系。
- 第十章:快照自动化介绍了如何自动创建快照并将快照填充到快照服务器。
- 附录 A:工作站设置技术上不属于生产服务器文档,但为那些希望在其个人笔记本或工作站上构建 LXD 容器实验室的人提供了解决方案。
结论¶
您可以使用这些章节有效地设置企业级的主服务器和快照 LXD 服务器。在这个过程中,您将学到很多关于 LXD 的知识。请注意,还有很多东西需要学习,将这些文档视为一个起点。
LXD 最大的优势在于它在服务器上的使用经济实惠,允许您快速启动操作系统安装,并允许许多独立的应用程序服务器运行在单个硬件上,利用该硬件实现最大程度的利用率。
作者:Steven Spencer
贡献者:Ezequiel Bruni,Ganna Zhyrnova