知识库

以尽可能少的停机时间升级套餐

核心、内存和磁盘可以在实例运行时增长;但更换系列则不可以。来宾系统必须做什么才能注意到新硬件。

哪些操作可以热执行

  • 核心数:实时增加,前提是目标规格能容纳在当前宿主机上。通常可以。
  • 内存:实时增加,条件同上。
  • 额外NVMe:实时增加,始终可以。
  • 根磁盘:在线扩容,文件系统会在底层同步扩展。

哪些不可以:任何缩小操作,以及在不同系列之间迁移。Ryzen到EPYC是不同机器,因此属于迁移而非升级——流程与更换站点相同,只是不换城市。

操作步骤

curl -s -X POST https://paragonvps.com/api/v1/instances/<instance-id>/resize -H "Authorization: Bearer $Paragon_TOKEN" -H "Content-Type: application/json" -d '{"plan":"r-12","mode":"hot"}'

"mode":"hot"在无法热执行时会拒绝变更,而不是重启。请使用它。默认的宽松模式是导致实例在周五十一点重启的原因。

让客户机感知变更

在某些内核上,新核心不会自动上线:

lscpu | head
grep . /sys/devices/system/cpu/cpu*/online
echo 1 > /sys/devices/system/cpu/cpu8/online

将其设为自动,以便下次升级无需你干预:

cat > /etc/udev/rules.d/80-cpu-hotplug.rules <<EOF
SUBSYSTEM=="cpu", ACTION=="add", TEST=="online", ATTR{online}=="0", ATTR{online}="1"
EOF
udevadm control --reload

内存块也有同样情况:

free -h
echo online > /sys/devices/system/memory/auto_online_blocks

该设置重启后不保留。在内核命令行中添加memhp_default_state=online以持久化。

扩展根文件系统

块设备会变大。分区和文件系统不会自动跟随:

lsblk
growpart /dev/vda 1
resize2fs /dev/vda1

在XFS上,最后一步是xfs_growfs /。两个镜像都已包含growpart。扩展分区与调整文件系统大小之间的间隙,是断电可能造成不便的一秒钟。

应用程序同样不会感知

大多数守护进程只在启动时读取一次CPU数量。一个在四核实例上选择四个工作进程的Web服务器,在你新的十二核实例上仍然运行四个工作进程。重启服务,或显式设置工作进程数,而不是依赖auto

nproc
systemctl restart nginx

持有内存池的任何程序都需要同样关注。内存翻倍对仍被指示使用四GB缓冲区的数据库毫无作用。

费用

按秒计算差额。新旧计划之间的差价,在周期剩余时间内,将从账户余额中扣除(如有),否则开具发票。降级则计入余额而非链上支付,因为退回小额加密货币的网络费用高于信用价值。

续费日期不变。二十日升级仍在二十日续费,与之前相同。当前费率见定价页面

失败时

如果宿主机无法容纳新规格,API会明确告知,且不会发生任何变更。此时转为迁移:同一磁盘,不同机器,几分钟停机,计划变更在远端完成。这部分由我们执行;你会收到包含时间窗口的邮件。

随时恭候

选择城市,选择大小,用加密货币支付。

无需填写关于您的身份信息的表格,无需等待人工审批,无需电话验证。账单结清后,凭证将发送到您的邮箱。