尝试使用 Azure nodejs SDK 并测试虚拟机运行命令,如Get StdOut from RunCommand using Azure VM Javascript SDK中所述。此调用的性能很差。用户是否有权更改虚拟机运行命令的超时值?
发送脚本的任何其他替代方法。
尝试使用 Azure nodejs SDK 并测试虚拟机运行命令,如Get StdOut from RunCommand using Azure VM Javascript SDK中所述。此调用的性能很差。用户是否有权更改虚拟机运行命令的超时值?
发送脚本的任何其他替代方法。
是的,“运行命令”方式的性能不太好,如果使用 SDK 遇到超时错误,也许直接调用 REST API 将是一种解决方法。
在底层方面,当你使用SDK调用运行命令函数时,它调用了这个API:
POST https://management.azure.com/subscriptions/<your subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.Compute/virtualMachines/<VM Name>/runCommand?api-version=2018-04-01
Request Headers:
Content-Type: application/json
Authorization: Bearer <access token>
Request Body:
{"commandId":"RunPowerShellScript","script":["<script content>"]}
一旦你成功调用它,你会得到一个 202 响应代码,并且在响应头中,会有一个参数“位置”,它的值是一个链接,你可以使用它来获取你的命令运行状态:
通过这种方式,您可以通过调用这个url来监控运行状态,而不是等待很长时间的响应。
除了在 Azure VM 上运行 ps 脚本的“运行命令”方式外,还有 3 种其他方式可以执行此操作:
该博客对它们进行了很好的描述,您可以根据需要选择其中一个。
希望能帮助到你。