实例管理
实例是 Novaix 管理的核心对象,每个实例对应一台虚拟机或容器。管理员和用户都可以对实例执行各种操作。
实例状态流转
实例在生命周期中会经历以下状态变化:
管理员操作
管理员可以在管理面板的「实例管理」中查看和管理所有实例。支持的操作包括:
生命周期管理
| 操作 | 说明 |
|---|---|
| 启动 | 启动已停止的实例 |
| 停止 | 正常关机 |
| 强制停止 | 强制断电,类似拔电源 |
| 重启 | 重新启动实例 |
| 冻结 / 解冻 | 暂停或恢复实例运行 |
| 重装系统 | 使用指定镜像重新安装系统,数据将被清除 |
| 重建实例 | 在原节点恢复丢失或损坏的实例,保留订单和资源分配 |
| 删除 | 永久删除实例及其所有数据 |
| 强制删除 | 跳过运行状态检查,节点不可达时仅清理数据库记录 |
WARNING
强制停止可能导致数据丢失,建议仅在正常关机无响应时使用。重装系统和删除操作不可恢复,请谨慎执行。强制删除适用于节点故障无法正常通信的场景,远端残留资源需在节点恢复后手动清理。
重装系统
重装会使用所选镜像替换系统盘,保留实例的订单、资源分配和网络配置。自 0.4.8 起,重装会保留节点上已生效的固定 IP、MAC、限速和防火墙绑定,并在获取实例地址后恢复端口转发。
NAT 实例的 SSH 端口会自动映射到实例内部的 TCP 22,无需重新添加。对于原先通过 DHCP 获取地址的实例,系统会在能确认原网卡租约时保留原内网地址;无法确认时,按重装后实际获取的地址同步映射。建议为 NAT 套餐配置内网 IP 池,便于统一管理地址分配。
如果任务日志提示网络尚未就绪或转发恢复失败,系统会提交节点同步任务继续处理。您可以在任务列表中查看同步结果,不需要为此再次重装系统。
重建实例
自 0.4.7 起,管理员可以在实例丢失或系统盘损坏时,在原节点按已保存的配置重建实例。原实例 ID、所属用户、订单、到期时间、计费记录和资源分配会保留。
- 先确认原节点已恢复在线,所需网络、存储池、配置文件及系统镜像可用。如果节点重装过系统,请先恢复这些基础配置。
- 在管理面板的「实例管理」页面,找到已停止或异常的实例,点击「重建」;也可以从实例详情页进入。运行中的实例需先停止。
- 如果实例存在快照,确认是否勾选删除原有快照及快照记录。未确认时,任务不会清理快照或重建系统盘。
- 输入实例名称,点击「确认重建」,在任务日志中查看结果。
重建会恢复实例网络、防火墙及端口转发。如果系统盘已经恢复,但启动或网络恢复失败,处理故障后再次提交重建会继续后续步骤,避免重复清空系统盘。若日志提示上次系统盘操作结果无法确认,请先核查节点任务,系统不会自动重复执行破坏性操作。
DANGER
重建会清空系统盘,不能恢复已丢失的数据。附加磁盘必须仍然存在,重建不会重新创建丢失的数据盘。清理快照后无法撤销;需要恢复原数据时,请使用可用备份。
批量操作
在实例列表中勾选多个实例后,可以对它们执行批量操作,支持批量启动、停止、重启、冻结、解冻、强制停止和删除。操作完成后会返回每个实例的执行结果,方便确认是否全部成功。
TIP
批量操作会逐个执行,部分实例操作失败不会影响其余实例的执行。如果某个实例当前状态不允许执行该操作(例如对运行中的实例执行启动),该实例会返回失败,其余实例正常处理。
快照管理
快照可以保存实例在某一时刻的完整状态。您可以:
- 创建快照:保存当前状态
- 恢复快照:将实例恢复到快照时的状态
- 删除快照:删除不再需要的快照
WARNING
- 快照会占用节点的磁盘空间,创建过多快照可能导致节点存储不足
- 恢复快照会完全覆盖实例当前的所有数据,此操作不可撤销
- 建议在创建快照前先停止实例,以确保数据一致性(运行中的实例也可以创建快照,但可能存在文件系统不一致的风险)
网络与安全
- 防火墙规则:为实例配置入站和出站规则,支持 TCP、UDP、ICMP 协议
- 端口转发:将宿主机端口映射到实例内部端口
- 更换 IP:从 IP 池中分配新的 IP 给实例,旧 IP 会被回收
- 添加 / 移除额外 IP:管理实例的附加 IP
- 反向 DNS:为实例的 IP 设置 rDNS 记录
更换主 IP
在管理面板的实例详情页中,先停止实例,再点击「更换 IP」。从 0.4.9 起,列表会按实例所在节点、网络和 IP 协议族筛选兼容的空闲地址。确认后,系统会提交更换任务,回收旧 IP 并保留原有网卡过滤策略;任务完成后再启动实例。
NAT 实例不支持通过此入口更换主 IP。如需调整独享公网地址,请使用实例的独享公网 IP 管理功能。
网卡防伪造设置
从 0.4.9 起,管理员可以在创建实例时的「设备 → 网络」,或实例详情的「配置 → 网络」中设置防伪造策略:
| 设置 | 说明 |
|---|---|
| IPv4 地址防伪造 | 开启后仅允许使用分配的 IPv4 地址 |
| IPv6 地址防伪造 | 开启后仅允许使用分配的 IPv6 地址 |
| MAC 地址防伪造 | 开启后禁止伪造 MAC 地址;启用 IP 地址防伪造时也会启用此保护 |
每项均可选择「默认」「开启」或「关闭」。「默认」不指定过滤策略,创建时分配固定 IP 会默认开启对应地址的防伪造。若需要允许其他 IPv4 地址,同时保留 MAC 保护,可以将「IPv4 地址防伪造」设为「关闭」,「MAC 地址防伪造」设为「开启」。
这些选项适用于桥接网卡,路由网卡不显示这些设置。创建和更换 IP 会保留显式指定的过滤策略;编辑网卡时也会保留未在表单中展示的 IP、MAC 等属性。
实例防火墙使用条件
实例防火墙需要网卡和节点运行环境支持对应能力:
- 受管桥接网络:节点运行环境需支持桥接网卡防火墙(6.9 或更新版本),并使用 nftables 后端
- 虚拟私有网络(OVN):节点运行环境需支持虚拟网络防火墙
同步规则前,系统会检查网卡模式和节点能力;不满足条件时会提示原因。升级 Novaix 面板不会自动升级已有节点的运行环境。如果旧节点提示不支持,请先升级节点运行环境,再重新同步防火墙规则。
NAT 实例
通过 NAT 套餐 创建的实例,在概览页面会额外显示 NAT 连接信息:
- 共享 IP:实例使用的公网 IP 地址
- SSH 端口:用于 SSH 登录的端口号(端口块的第一个端口)
- 可用端口:可自由使用的端口范围
- SSH 命令:一键复制的登录命令
TIP
防火墙规则是在虚拟化层面实现的,独立于实例内部的防火墙(如 iptables / ufw)。两层防火墙是叠加关系,流量需要同时通过两层才能到达实例。如果您在 Novaix 中开放了某个端口但仍无法访问,请同时检查实例内部的防火墙配置。
远程访问
- 终端(Terminal):在浏览器中直接打开运行中实例的 Shell 终端,需要实例内系统已启动并运行了 Shell 环境
- 控制台(Console):通过 VNC 访问实例的图形界面,仅虚拟机类型可用(容器不支持),适用于系统未启动或网络不通的情况
TIP
终端类似于 SSH 连接,需要实例内的操作系统正常运行。控制台类似于物理机的显示器+键盘,即使操作系统未启动(如卡在 GRUB 引导界面)也可以操作,适合网络不可用或启动阶段排障。如果您的虚拟机实例无法 SSH 登录,优先尝试使用控制台排查问题。
ISO 管理
- 挂载 ISO:将 ISO 镜像挂载到实例的虚拟光驱中,用于安装系统、驱动或使用救援工具
- 卸载 ISO:卸载已挂载的 ISO 镜像
其他操作
- 修改到期时间:在实例概览页直接编辑到期时间,或设为「永不过期」。修改后系统会自动取消该实例的待支付续费订单,避免旧订单支付后覆盖管理员的调整
- 自定义备注:为实例添加自定义备注名称,方便在列表中快速识别。管理员在实例概览页编辑,用户在实例详情页编辑
- 升级配置:调整实例的 CPU、内存、磁盘等资源
- 限速 / 解除限速:限制或恢复实例的网络带宽
- 重置密码:重置实例的登录密码。支持 cloud-init 的镜像通过 cloud-init 注入(重启后生效),非 cloud-init 镜像(如 Windows)通过虚拟机代理直接设置(即时生效,需实例处于运行状态)。重置时可选择「重置后自动重启」,省去手动重启步骤
- 流量管理:查看实例的流量使用情况,用户可在实例详情页购买流量包
- VPC 管理:将实例挂载到 VPC 私有网络或从中卸载
用户自助操作
用户在用户面板中可以管理自己的实例,支持的操作包括:
- 启动、停止、重启
- 查看连接信息(IP、用户名、密码、SSH 命令、终端入口,统一展示在详情页第一屏)
- 重装系统(限套餐允许的镜像,运行中点击会自动先停机再重装)
- 重置密码(支持自动生成,运行中默认自动重启,非 cloud-init 实例需在运行状态下操作)
- 创建和恢复快照
- 查看资源监控数据
- 购买流量包
- 自定义备注(在详情页名称下方编辑,备注会显示在实例列表中)
- 开启/关闭自动续费(在详情页「详细信息」区域切换,需实例关联套餐且有到期时间,按时计费实例不支持)
- 打开终端和控制台
- 管理防火墙规则
- 管理端口转发规则
- 挂载和卸载 ISO 镜像
- 查看操作历史
操作并发限制
同一个实例在同一时间只允许执行一个操作任务。例如,当实例正在创建快照时,您无法同时执行重启或重装操作,需要等当前任务完成后才能发起新操作。这是为了避免并发操作导致数据损坏或状态混乱。
异步任务
大部分实例操作(创建、重装、快照等)是异步执行的。操作发起后会生成一个任务,您可以在管理面板的「任务管理」中查看所有任务的状态和日志。
任务支持实时日志查看,您可以看到操作的每一个步骤和进度。如果任务失败,日志中会包含详细的错误信息,方便排查问题。
TIP
如果任务长时间处于「运行中」状态没有进展,通常是因为节点连接中断或节点负载过高。请先检查节点的连接状态和资源使用情况。
