自动停止与自动销毁
有两道余额阈值会对你的实例触发自动操作。第一道保护你的钱。第二道删掉你的数据。
| 余额 | 会发生什么 | 你的磁盘 |
|---|---|---|
| 到 $0 | 组织内每个处于 running 的实例都会被停止 | 保留,并且照样计费 |
| 到 −$5 | 每个还存在的实例都会被销毁 | 永久删除 |
自动销毁会删掉磁盘。没有快照,没有回收站,没有宽限期,也没有任何办法把里面的内容找回来。让余额保持在零以上,一旦变负就立刻充值。
余额究竟怎么会变成负数
费用是在用量发生之后才结算的,大约每分钟一次。因此在余额越过零点之后、结算任务发现并停止它之前,一个运行中的实例最多还能再吃掉大约一分钟的 GPU 时长。
从那时起,往下掉就靠存储推动了。不管还有没有余额来付,已停止的实例都会继续为它们的磁盘计费,所以余额归零并不会冻住计量表——它会继续朝 −$5 掉下去。
$0 时:自动停止
当结算任务发现某个组织的余额为零或更低时:
- 每个处于
running状态的实例都会被停止。这是一次普通的停止:容器关掉,磁盘保留,GPU 位置替你留着。 - GPU 费用结束。存储费用继续,按磁盘容量乘以每 GB 每小时的存储费率计。
- 在你充值之前,部署新实例和启动一个已停止的实例都会以
INSUFFICIENT_BALANCE失败。 - 这个操作会以
instance.auto_stopped记进组织的用量日志。
正处在中间过渡状态的实例——creating、starting——在那一刻不会被动;等它们进入 running,后面某一次结算任务会停掉它们。
充值之后没有任何东西会自己重启。被自动停止的实例会一直停着,直到你从控制台或 API 把它们启动起来。
−$5 时:自动销毁
当余额到达 −$5 时,结算任务会销毁组织内所有还存在的实例——running、stopped 和 error 一视同仁。对每一个:
- 容器和磁盘都被移除。那块磁盘上的一切都被删掉,且是永久的。
- 拆除完成后,GPU 位置会被放回市场,可以被别人租走。
- 该实例的所有费用结束。
- 这个操作会以
instance.auto_destroyed记进用量日志。
越过阈值时正处在中间过渡状态的实例,会等它们稳定到 running、stopped 或 error 之后,由后面某一次结算任务收拾。
已被销毁的实例,事后充值也救不回来。之后添加的余额只对新的活有效。
充值能拦下这两种操作
每次结算任务在对某个实例动手之前,都会重新读一遍余额。如果你的付款先落地,强制这一步就会被跳过,什么都不会被停止或销毁。余额在付款确认后立刻到账,所以只要在余额还高于 −$5 时充值,你的磁盘就保住了。
怎样才永远碰不到第二道阈值
干完的东西就销毁掉。 一个你已经没打算再用的停止实例就是一台计债的钟。把需要的东西从上面拷走,然后销毁它。参见 停止与销毁。
走人之前先把存储的账算一遍。 用磁盘容量乘以存储费率得到一个每小时的数字,再算出你的余额能撑多久。按存储每 GB 每小时 $0.0002 计算:
| 磁盘 | 停止期间的费用 | 从 $0 到 −$5 的时间 |
|---|---|---|
| 200 GB | $0.04/小时 | 约 5 天 |
| 500 GB | $0.10/小时 | 约 2 天 |
| 1,000 GB | $0.20/小时 | 约 1 天 |
这个窗口是一两天,不是一个月。一个长周末就足够让你丢掉一块大磁盘。
按活儿的需要定磁盘大小。 顺手开出来的 2,000 GB 磁盘,停着不用的成本是 200 GB 的十倍,几个小时就能把 −$5 的窗口烧穿。
盯住余额标签。 控制台顶栏里的余额大约每分钟刷新一次,一旦掉到 $5 以下就会变色。把它当成该充值的信号,而不是一条可以搁着不管的提醒。
休假前留出缓冲。 如果没人会盯着这个账户,要么销毁你的实例,要么留下足够覆盖它们整段时间存储费用的余额,还要留有富余。