我正在按照本教程https://docs.microsoft.com/en-us/azure/batch/tutorial-parallel-python了解如何使用Azure Batch API。
然而,从该文章中可以看出,批次运行完成后池中的节点会发生什么。
我关心的原因是我将使用的节点在批量开始之前需要进行大量设置。是否可以让VM在运行之间保留该设置,以节省设置所需的带宽和时间?
而且,如果该设置需要重新启动(例如在安装GPU驱动程序之后),那么在使用群集之前可以做什么呢?
答案 0 :(得分:1)
行batch_client.pool.delete(_POOL_ID)
导致删除池,这也导致其所有节点都被删除。
在运行之间保持VM的方法是不删除池,只需将您的下一个作业提交到同一个池。
关于您的广泛设置,包括GPU驱动程序和重新启动,我假设您是通过池启动任务执行此操作。我认为在启动任务中重启(假设它是最后一个命令)应该没问题,虽然我没有尝试过。然后,重新启动后该节点应该就绪。
也许更好的选择是use a custom VM image包含所有复杂的设置,或者use a Docker container,也可以包含这样复杂的设置(包括安装CUDA等)。