跳到主要内容

自动停止与自动销毁

有两道余额阈值会对你的实例触发自动操作。第一道保护你的钱。第二道删掉你的数据。

余额会发生什么你的磁盘
到 $0组织内每个处于 running 的实例都会被停止,已停止实例的 GPU 会在机器支持的情况下被释放保留,并且照样计费
在 $0 或以下已持续 24 小时,并且已到 −$5 或更低每个已停止或出错的实例都会被销毁永久删除

运行中的实例永远不会被直接销毁:到 $0 时它会被停止,之后只有已停止的实例才可能被自动销毁。组织上有未结的付款争议时,什么都不会被销毁。

自动销毁会删掉磁盘

一旦执行,没有快照,没有回收站,也没有任何办法把里面的内容找回来。这 24 小时是给你充值用的宽限期,不是备份。让余额保持在零以上,一旦变负就立刻充值。

余额究竟怎么会变成负数​

费用是在用量发生之后才结算的,大约每分钟一次。因此在余额越过零点之后、结算任务发现并停止它之前,一个运行中的实例最多还能再吃掉大约一分钟的 GPU 时长。

从那时起,往下掉就靠存储推动了。不管还有没有余额来付,已停止的实例都会继续为它们的磁盘计费,所以余额归零并不会冻住计量表——它会继续朝 −$5 掉下去。

$0 时:自动停止​

当结算任务发现某个组织的余额为零或更低时:

  • 每个处于 running 状态的实例都会被停止。容器关掉,磁盘保留,但和你自己的停止不同,这次停止会在机器支持的情况下把 GPU 释放回机器:既然没人为它们付钱,其他租户就可以使用它们。
  • 原本就已停止的实例——包括你自己停止、GPU 一直为你保留的那些——其 GPU 也会以同样的方式被释放。
  • GPU 费用结束。存储费用继续,按磁盘容量乘以每 GB 每小时的存储费率计。
  • 被释放的实例会把容器和磁盘留在机器上,充值之后可以再次启动——但只能用同样的 GPU。如果那时另一位租户正在使用其中任何一块,启动会以 409 CAPACITY_UNAVAILABLE 被拒绝,实例连同磁盘保持停止。参见停止与销毁。
  • 在无法释放 GPU 的机器上,或者实例运行的是 vm 模板时,GPU 会像你自己停止之后一样继续为实例保留,实例仍然只收取存储费。
  • 在你充值之前,部署新实例和启动一个已停止的实例都会以 INSUFFICIENT_BALANCE 失败——而且充值后的余额必须够支付组织届时所运行的一切一小时的费用,光是回到零以上是不够的。
  • 这个操作会记进组织的用量日志:运行中的实例记为 instance.auto_stopped,已停止的实例记为 instance.auto_released;控制台的用量页面分别显示为 自动停止(余额) 和 自动释放 GPU。
  • 自动销毁的 24 小时计时开始。

正处在中间过渡状态的实例——creating、starting——在那一刻不会被动;等它们进入 running,后面某一次结算任务会停掉它们。

充值之后没有任何东西会自己重启。被自动停止的实例会一直停着,直到你从控制台或 API 把它们启动起来;被释放的 GPU 也不会被重新保留:下一次启动会重新取回它们,前提是它们仍然空闲。

支付争议未结期间​

一笔正式的支付争议会冻结组织的付款,在它结束之前,启动已停止的实例会以 402 PAYMENTS_FROZEN 被拒绝。为无法启动的实例保留 GPU 毫无意义,所以在付款被冻结期间:

  • 已停止实例的 GPU 会在下一次结算任务中被释放,即使余额为正也一样,前提是机器支持;
  • 你按下的停止会在机器支持的情况下立刻释放 GPU——控制台的停止对话框会在你确认之前说明这一点——而且 API 在该组织每个实例上的 stop_releases_gpus 都为 true;
  • 冻结本身不会停止任何运行中的实例:它们继续运行并计费,上面的零余额规则仍然适用于它们;
  • 争议未结期间不会自动销毁任何东西。

争议结束后,这些实例就是普通的已释放停止:只要同样的 GPU 空闲,启动就能成功。什么会冻结和解冻一个组织,参见交易记录与花费。

24 小时之后、到 −$5 时:自动销毁​

只有以下三条同时成立时,自动销毁才会执行:

  • 余额在 −$5 或更低;
  • 余额已经在 $0 或以下连续停留了至少 24 小时,中间没有回到零以上;
  • 组织上没有未结的付款争议。

这时它会销毁组织内每一个 stopped 和 error 实例。对每一个:

  • 容器和磁盘都被移除。那块磁盘上的一切都被删掉,且是永久的。
  • 拆除完成后,GPU 位置会被放回市场,可以被别人租走。
  • 该实例的所有费用结束。
  • 这个操作会以 instance.auto_destroyed 记进用量日志。

仍在运行的实例会被停止,而不是被销毁;等它们变成 stopped 之后,下一次结算任务才可能销毁它们。正处在中间过渡状态的实例,会等它们稳定下来之后,由后面某一次结算任务收拾。

已被销毁的实例,事后充值也救不回来。之后添加的余额只对新的活有效。

充值能拦下这两种操作​

每次结算任务在对某个实例动手之前,都会重新读一遍余额。如果你的付款先落地,强制这一步就会被跳过,什么都不会被停止或销毁。余额在付款确认后立刻到账。把余额拉回零以上的充值也会重置那 24 小时计时:如果之后余额再次变负,宽限期会重新开始。

让余额仍停在零或以下的充值不会重置计时,它只是让余额在 −$5 之上多撑一段时间。

怎样才永远碰不到第二道阈值​

干完的东西就销毁掉。 一个你已经没打算再用的停止实例就是一台计债的钟。把需要的东西从上面拷走,然后销毁它。参见 停止与销毁。

走人之前先把存储的账算一遍。 用磁盘容量乘以存储费率得到一个每小时的数字,再算出你的余额能撑多久。按存储每 GB 每小时 $0.0002 计算:

磁盘停止期间的费用从 $0 到 −$5 的时间多久后被销毁
200 GB$0.04/小时约 5 天约 5 天
500 GB$0.10/小时约 2 天约 2 天
1,000 GB$0.20/小时约 1 天约 1 天
2,000 GB$0.40/小时约 12 小时24 小时

自动销毁会等到两者中较晚的那一个:在零或以下满 24 小时,或者余额到达 −$5。这个窗口是一天到几天,不是一个月。一个长周末就足够让你丢掉一块大磁盘。

按活儿的需要定磁盘大小。 顺手开出来的 2,000 GB 磁盘,停着不用的成本是 200 GB 的十倍,半天就能跌到 −$5——你和磁盘被删之间,只剩下那 24 小时的宽限期。

盯住余额标签。 控制台顶栏里的余额大约每分钟刷新一次,一旦掉到 $5 以下就会变色。把它当成该充值的信号,而不是一条可以搁着不管的提醒。

休假前留出缓冲。 如果没人会盯着这个账户,要么销毁你的实例,要么留下足够覆盖它们整段时间存储费用的余额,还要留有富余。

相关内容​