代码下面的代码--有人在这里共享了它(Starting a Google Compute instance with Python) --我做了一些调整,它非常适合我启动一个vm。我想知道是否有可能调整这段代码,以便在同一个函数中启动多个实例?以下是代码:
from googleapiclient import discovery
service = discovery.build('compute', 'v1')
def autostart_vm(request):
# Project ID for this request.
project = 'secret-metrics-278618'
# The name of the zone for this request.
zone = 'us-central1-a'
# Name of the instance resource to start.
instance = 'devops1'
instance2 = 'devops-2'
request = service.instances().start(project=project, zone=zone, instance=instance)
response = request.execute()
print('VM Instance started')发布于 2020-11-25 03:07:42
这是可能的,尽管你必须作出调整。从instances().start()的描述
启动一个实例,该实例使用实例().stop方法停止。有关更多信息,请参见重新启动实例。
这意味着您必须迭代该方法(假设您的实例位于类似的项目和区域)如下:
# Name of the instance resource to start.
instanceList = ['devops1', 'devops-2']
for i in instanceList:
request = service.instances().start(project=project, zone=zone, instance=i)
response = request.execute()
print('VM instance '+ i + ' started')https://stackoverflow.com/questions/64995387
复制相似问题