是否有办法在可抢占节点实际被抢占之前进行判断?我可以判断GCE在事件发生时记录事件(compute.instances.preempted事件),但是否有办法在事件发生之前 * 在GKE内进行判断,以便我采取预防措施?谢谢
compute.instances.preempted
qni6mghb1#
没有办法检测Google VM何时会被抢占。There is a delay to allow shut down scripts to run,但在示例被抢占之前没有任何警告,让您做好准备。这是使用可抢占VM时要接受的风险之一。虽然没有明确提到不会有通知,但通知流程的缺乏意味着您不会事先收到通知。This section on GPU preemptible VMs明确提到要获得通知,您需要使用标准虚拟机
lc8prwob2#
根据谷歌的文件,2023年公认的答案不再成立,有两种选择:1.某种类型的协调器应用程序可以向Google的API发出请求以检测抢占(并可选地向VM/spot pod发送自己的信号以通知其抢占)。所提供的链接提供了有关如何将范围缩小到抢占区域操作的更多说明。GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/operations1.被抢占的VM或spot pod可以检测其自身的抢占。curl "http://metadata.google.internal/computeMetadata/v1/instance/preempted" -H "Metadata-Flavor: Google"https://cloud.google.com/compute/docs/instances/create-use-spot#detect-preemption
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/operations
curl "http://metadata.google.internal/computeMetadata/v1/instance/preempted" -H "Metadata-Flavor: Google"
2条答案
按热度按时间qni6mghb1#
没有办法检测Google VM何时会被抢占。There is a delay to allow shut down scripts to run,但在示例被抢占之前没有任何警告,让您做好准备。这是使用可抢占VM时要接受的风险之一。
虽然没有明确提到不会有通知,但通知流程的缺乏意味着您不会事先收到通知。This section on GPU preemptible VMs明确提到要获得通知,您需要使用标准虚拟机
lc8prwob2#
根据谷歌的文件,2023年公认的答案不再成立,有两种选择:
1.某种类型的协调器应用程序可以向Google的API发出请求以检测抢占(并可选地向VM/spot pod发送自己的信号以通知其抢占)。所提供的链接提供了有关如何将范围缩小到抢占区域操作的更多说明。
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/operations
1.被抢占的VM或spot pod可以检测其自身的抢占。
curl "http://metadata.google.internal/computeMetadata/v1/instance/preempted" -H "Metadata-Flavor: Google"
https://cloud.google.com/compute/docs/instances/create-use-spot#detect-preemption