是否可以获取ClassicCompute
虚拟机列表并使用Azure资源管理器库管理它们?
使用Azure预览门户创建的虚拟机和存储帐户也是经典版本。
是否不支持使用azure预览门户创建V2虚拟机,或者我是否缺少任何设置?
答案 0 :(得分:1)
似乎最近更新了Azure预览门户,以便您可以选择是否需要" classic"使用新ARM模板的vms或vms。
要执行此操作:
转到"新建",选择您的模板,例如" Windows Server 2012 R2 Datacenter",然后在"创建"上方的下拉框中。命令按钮,有一个标题为"选择计算堆栈的部分。"这将让您选择"使用服务管理堆栈(经典)" - (即V1经典计算机)或"使用资源管理器堆栈" - (即V2经典计算)。
希望有所帮助!
答案 1 :(得分:0)
Azure预览门户支持V1和V2 VM。您可以使用全部浏览创建V2 VM - >虚拟机,并使用全部浏览创建V1 VM - >虚拟机(经典)
答案 2 :(得分:0)
你可以获得V1和amp的列表V2 VM使用以下代码。 ListRecursiveAsync()
只是一种扩展方法,我将它放在一起处理多页结果的可能性。
另外,为了理解ARM API的功能,Azure Resource Explorer)是一个很好的工具。
using (var client = new ResourceManagementClient(creds))
{
var v1ComputeParams = new ResourceListParameters { ResourceType = "Microsoft.ClassicCompute/virtualMachines" };
var v2ComputeParams = new ResourceListParameters { ResourceType = "Microsoft.Compute/virtualMachines" };
var v1ComputeResult = await client.ListRecursiveAsync(v1ComputeParams, null);
var v2ComputeResult = await client.ListRecursiveAsync(v2ComputeParams, null);
}
/// <summary>
/// Gets the list of resources, recursing until ResourceListResult.NextLink is empty.
/// </summary>
/// <param name="client"></param>
/// <param name="parameters">Optional. Query parameters. If null is passed returns all resources from all resource groups.</param>
/// <param name="nextLink"></param>
/// <returns></returns>
public static async Task<IList<GenericResourceExtended>> ListRecursiveAsync(this ResourceManagementClient client, ResourceListParameters listParams, string nextLink)
{
var rValue = new List<GenericResourceExtended>();
ResourceListResult computeList = null;
if (!string.IsNullOrWhiteSpace(nextLink))
{
computeList = await client.Resources.ListNextAsync(nextLink);
}
else
{
computeList = await client.Resources.ListAsync(listParams);
}
rValue.AddRange(computeList.Resources);
if (!string.IsNullOrWhiteSpace(computeList.NextLink))
{
var nextResult = await ListRecursiveAsync(client, null, computeList.NextLink);
rValue.AddRange(nextResult);
}
return rValue;
}