我正在设置Azure Windows VM,并希望对某些“启动时”脚本使用“自定义脚本扩展”。
许多有关自定义脚本扩展的文章都谈到了能够从Blob和/或Github加载脚本。但是,当我通过门户网站添加自定义搜索引擎时,这就是我看到的内容:
所以我可以从本地计算机上提供脚本文件,就这样了吗?
答案 0 :(得分:1)
在Azure门户中,如您所见,使用扩展名,脚本文件将从您的本地计算机上看似上传。上载脚本文件后,您可以看到它存储在Azure存储Blob中,URL如下所示:https://iaasv2tempstoreeastus.blob.core.windows.net/vmextensionstemporary-10030000aa9b4851-20180717014522123/Untitled1.ps1。
如果要使用Blob和/或Github中的自定义脚本文件,则需要使用PowerShell cmdlet Set-AzureRmVMExtension
,如下所示:
$SettingsString = '{"fileUris":[],"commandToExecute":""}';
$ProtectedSettingsString = '{"storageAccountName":"' + $stoname + '","storageAccountKey":"' + $stokey + '"}';
Set-AzureRmVMExtension -ResourceGroupName "ResourceGroup11" -Location "West US" -VMName "VirtualMachine22" -Name "CustomScriptExtension" -Publisher "Contoso.Compute" -Type "CustomScriptExtension" -TypeHandlerVersion "1.1" -SettingString $SettingsString -ProtectedSettingString $ProtectedSettingsString ;
您可以使用来自Blob和/或Github的脚本文件链接来设置fileUrls
,以便将其用作自定义脚本。
答案 1 :(得分:0)
在Azure CLI上运行以下命令:
az vm extension set --resource-group <Your azure resource group name> --vm-name <your vm name> --name customScript --publisher Microsoft.Azure.Extensions --settings <customscript.json>
在此示例中,
{
"fileUris":["<Generate raw github link to your .sh file and put that link.>"],
"commandToExecute":"./<Your same .sh file in github>"
}