文章摘要
Incus 是一个新一代的系统容器、应用容器和虚拟机管理器,提供类似公有云的用户体验,允许用户混合管理容器和虚拟机,共享相同的存储和网络资源。它基于镜像,支持多种Linux发行版,具有灵活性和可扩展性,适用于从个人笔记本到服务器集群的多种硬件环境。Incus 提供命令行工具、REST API 及第三方工具进行实例管理,由社区驱动,最初由Aleksa Sarai创建,现由曾参与LXD开发的人员维护。
文章总结
文章主要内容总结
标题: Linux Containers - Incus - 介绍
发布时间: 2025年7月12日
来源: Linux Containers
1. 什么是Incus?
Incus 是一个下一代系统容器、应用容器和虚拟机管理器。它提供了类似于公共云的用户体验,允许用户轻松混合管理容器和虚拟机,并共享相同的底层存储和网络。Incus 基于镜像,支持多种Linux发行版,并提供了灵活性和可扩展性,适用于从个人笔记本电脑到服务器集群的各种硬件环境。用户可以通过命令行工具、REST API或第三方工具来管理实例(容器和虚拟机)。Incus 由 Aleksa Sarai 创建,作为 Canonical 的 LXD 的社区驱动替代品,目前由许多曾参与 LXD 开发的人员维护。
2. 快速入门
用户可以通过在线试用来了解 Incus 的功能。若想在本地运行,可以参考入门指南。
3. 容器和虚拟机
Incus 支持系统容器、应用容器和虚拟机: - 系统容器:模拟完整操作系统的虚拟版本,使用主机系统的内核功能。 - 应用容器:在主机操作系统内运行隔离的应用程序,类似于 Docker。 - 虚拟机:使用主机系统的硬件,但内核由虚拟机提供,允许运行不同的操作系统。
更多关于容器和虚拟机的区别,可以参考文档。
4. 主要特性
Incus 的主要特性包括: - 核心API:安全性设计、直观的API、可扩展性、事件驱动、远程使用、项目支持。 - 实例和配置:基于镜像、支持容器和虚拟机、通过配置文件进行配置。 - 备份和导出:备份和恢复、快照、容器和镜像传输、实例迁移。 - 可配置性:多种存储后端、网络管理、高级资源控制、设备直通。
5. 可用性
Incus 适用于任何最新的Linux发行版,虽然上游不直接提供包,但可以通过第三方仓库获取。Incus 客户端也支持 Windows 和 macOS,用户可以通过客户端连接到运行在Linux机器上的 Incus 服务器。具体安装步骤可以参考安装指南。
6. 支持
Incus 有两种发布类型: - LTS 版本:当前为 Incus 6.0,支持至2029年6月。 - 功能版本:每月发布,包含新功能和修复,通常支持一个月或直到下一个版本发布。
商业支持可以通过 Zabbly 获取。
7. 语言、许可和贡献
Incus 使用 Go 语言编写,采用 Apache 2 许可证。源代码托管在 GitHub。贡献者无需签署 CLA,但需要遵循 DCO(开发者所有权证书)。更多贡献指南请参考贡献指南。
评论总结
Incus的兼容性与用途
- 评论1询问Incus是否支持LXC和QEMU虚拟机:"What can this work with? It says „Containers and VMs“ - I guess that’s LXCs and QEMU VMs?"
- 评论12探讨Incus的适用场景:"Is this for people who want to run their own cloud provider, or that need to manage the infrastructure of org-owned VM's?"
Incus与Proxmox的比较
- 评论2认为Incus是Proxmox的替代品,强调其完全开源:"Main selling point seems to be fully OSS and no enterprise version."
- 评论6指出Incus在资源隔离和限制方面不如Type 1虚拟机管理程序:"Nothing about resource (net, io, disk, cpu) isolation, limits, priorities, or guarantees."
Incus的更新与稳定性
- 评论3关注Incus主机的更新问题,担心更新可能导致所有虚拟机/容器宕机:"How do you handle updating the machine that Incus itself runs on?"
- 评论13提到Incus支持多种存储后端和快照功能:"Using btrfs, lvm or zfs there is some level of support of thin copy provisioning and snapshotting."
Incus与Docker的区别
- 评论7认为Incus在开发Ansible脚本时优于Docker,因为systemd开箱即用:"The main benefit for me over docker/podman is systemd works out of the box in incus containers."
- 评论8表示未看出Incus与Docker的明显区别:"I'm not really seeing how it's different from docker?"
Incus的部署与工具集成
- 评论9询问Incus是否有Terraform/Pulumi集成:"Is there some kind of Terraform/Pulumi integration to make it easy to deploy stuff to some VM running Incus?"
- 评论10称赞Incus是唯一无需GUI即可轻松启动预配置虚拟机的工具:"The only tool I found which allows to easily spin up pre-configured VMs without any gui hassle."
Incus的社区与背景
- 评论4提供Incus的背景信息:"A little bit of context about where Incus came from."
- 评论14提到Colima支持Incus:"I first learned about this because colima supports it."
Incus的混淆与命名
- 评论5提醒不要将Incus与Cirrus7的Incus混淆:"Not to be confused with the cirrus7 incus, which are fanless PC models."
LXC用户是否应迁移到Incus
- 评论11直接询问LXC用户是否应迁移到Incus:"Should lxc user migrate to incus?"
