介绍
如果您收到来自DigitalOcean的电子邮件通知,表示您的Droplet将很快升级到我们的云的最新版本,您有两个选择继续:
- 不执行任何操作,并允许在预定时间进行自动升级
- 在计划的自动升级之前的任何时间手动启动升级事件
第二个选项的主要优点是手动启动升级事件,它允许您控制何时进行升级过程。 因为您的Droplet必须在升级期间脱机,这是您应该使用的方法,如果您有一个首选维护时段。 不管你做什么,你的Droplet的IP地址将被保留。
本教程将讨论升级前应该考虑的一些注意事项,并向您展示如何通过DigitalOcean控制面板和API手动启动Droplet升级事件。
云升级期间发生了什么?
在基本术语中,升级过程涉及将您的Droplet从一个物理服务器移动到运行最新版本的DigitalOcean虚拟机管理程序软件的另一个服务器 - 我们有时称为DigitalOcean“云”。 升级过程要求您的Droplet关闭电源,直到完成。
升级到最新版本的云使您的Droplet能够利用您的Droplet所在的数据中心的最新功能,因为它们可用。 示例功能包括IPv6,专用网络和元数据。
估计停机时间
为一个Droplet的升级过程中,估计最大的停机时间窗口: 高达每GB一分钟的存储容量 。 例如,如果您有Droplet20GB的存储容量,整个升级它应该开始后只需要不到 20分钟。
现在,你知道为什么你应该升级和过程可能采取多长时间,我们将介绍如何手动启动升级通过DigitalOcean控制面板和API。
关闭Droplet
启动升级过程之前,建议您poweroff
通过命令行你Droplet。 此步骤将确保您的Droplet将在升级之前正常关闭。
SSH到您的Droplet与用户sudo
访问(替换自己的用户名和IP地址):
ssh user_name@droplet_IP_address
一旦你在命令行,发出poweroff命令:
sudo poweroff
您将与您的Droplet断开连接。 现在您可以通过控制面板或API启动升级过程,请按照以下两个部分中的步骤操作 - 选择您最喜欢的一个。
通过DigitalOcean控制面板升级
注意:一旦Droplet定于升级这种升级方法才可用。 如果您的任何Droplet计划升级,您将收到一封电子邮件通知,其中包含所有相关详细信息,包括Droplet ID,名称,以及迁移的预定日期和时间。
在Web浏览器,导航到Droplet页面https://cloud.digitalocean.com/ (登录,如果系统提示您)。
查找并单击升级电子邮件中提及的Droplet的名称。
点击设置按钮。 在这里,你将看到升级选项卡 。 点击它。
现在点击升级按钮 ,然后接受确认提示手动启动Droplet升级过程。 您的Droplet将开始升级,并将在过程完成时自动启动!
验证升级状态
当升级正在处理时,您的Droplet的信息页面将显示一条消息,指出“您的活动正在处理...”和Droplet的事件历史记录。 升级事件将显示为“升级”:
一旦升级过程完成后,Droplet信息页面将恢复正常,并有将在Droplet历史部分已完成的“升级”事件。
通过API查看可升级的Droplets
要查看您当前升级的Droplet,其中包括定于升级所有Droplet的列表,你可以使用Droplet_upgrades
API端点。 此端点的使用记录在这里: 列表Droplet升级 。
例如,您可以通过运行此curl
命令来请求您的Droplet有资格升级的列表:
curl -X GET -H 'Content-Type: application/json' -H 'Authorization: Bearer YOUR_API_TOKEN' "https://api.digitalocean.com/v2/droplet_upgrades"
这将返回一个JSON数组,其中包含有关计划迁移的任何Droplet的信息,例如Droplet ID和计划的迁移时间。 如果此数组为空,则不需要迁移任何Droplet。
通过API升级
如果您希望通过DigitalOcean API来启动升级过程中,你必须知道的id
,将被迁移的Droplet。 如果您收到升级通知电子邮件,则会包含Droplet ID,否则,您可以使用API按照上一节中的说明查找任何可升级的Droplet的ID。
一旦你的DropletID,你必须与Droplet操作 API端点使用它,并设置类型属性为“migrate_Droplet”。 API的这种用法在这里详细描述: 升级一个Droplet 。
例如,如果你想使用,使API请求curl
,您可以使用此命令(替换您的API令牌和DropletID):
curl -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer YOUR_API_TOKEN' -d '{"type":"migrate_droplet"}' "https://api.digitalocean.com/v2/droplets/droplet_id/actions"
这将启动指定的Droplet的升级过程。
结论
如果您的Droplet在开始升级过程之前已关闭电源,则升级完成后将保持关闭电源,一定要打开电源。 请检查您的所有服务是否正常运行。
如果您有任何问题,请在下面的评论中留下他们!