com.microsoft.windowsazure.exception.ServiceException: ResourceNotFound: 在当前部署的服务中找不到角色 WorkerRole1_IN_0
com.microsoft.windowsazure.exception.ServiceException: ResourceNotFound: Role WorkerRole1_IN_0 was not found in the currently deployed service
我在 Azure 门户中部署了云服务。部署成功。我制作了一些 azure java sdk 代码,如下所示,
ComputeManagementClient cmclient = ComputeManagementService.create(config);
VirtualMachineOperations vmoperat = cmclient.getVirtualMachinesOperations();
VirtualMachineGetResponse vmresp = vmoperat.get("AzurecloudDNS", AzurecloudDNSStaging20160613193121","WorkerRole1_IN_0");
但是抛出如下异常,
Exception in thread "main" com.microsoft.windowsazure.exception.ServiceException: ResourceNotFound: Role WorkerRole1_IN_0 was not found in the currently deployed service.
at com.microsoft.windowsazure.exception.ServiceException.createFromXml(ServiceException.java:206)
at com.microsoft.windowsazure.management.compute.VirtualMachineOperationsImpl.get(VirtualMachineOperationsImpl.java:6517)
at com.aaa.azure.JavaClient.main(JavaClient.java:81)
在 Azure 门户中,我可以看到 WorkerRole1_IN_0 正在使用此云服务。但它抛出异常。
有什么想法吗?先谢谢了。
解释Azure经典门户和Azure新门户的区别,它们使用不同的模型创建云服务和虚拟机。
在Azure经典门户上,使用ASM模式(Azure服务管理)创建Azure服务。但是使用 ARM 模式(Azure 资源管理)用于 Azure 新门户。
例如,您可以参考不同模式的REST API了解现有云服务获取信息的区别,请看下文。
- 在 ASM 模式下使用
Get Role
经典 REST API,它涉及 Java 包 com.microsoft.windowsazure.management.compute
。
- 在ARM模式下使用
Get information about a virtual machine
REST API,它涉及Java包com.microsoft.azure.management.compute
。
所以根据你的代码,你使用Service Management SDK来获取在经典门户上创建的云服务的信息,而不是在新门户上创建的云服务的信息,因为在不同模式下创建的云服务有不同的模型结构。
我在 Azure 门户中部署了云服务。部署成功。我制作了一些 azure java sdk 代码,如下所示,
ComputeManagementClient cmclient = ComputeManagementService.create(config);
VirtualMachineOperations vmoperat = cmclient.getVirtualMachinesOperations();
VirtualMachineGetResponse vmresp = vmoperat.get("AzurecloudDNS", AzurecloudDNSStaging20160613193121","WorkerRole1_IN_0");
但是抛出如下异常,
Exception in thread "main" com.microsoft.windowsazure.exception.ServiceException: ResourceNotFound: Role WorkerRole1_IN_0 was not found in the currently deployed service.
at com.microsoft.windowsazure.exception.ServiceException.createFromXml(ServiceException.java:206)
at com.microsoft.windowsazure.management.compute.VirtualMachineOperationsImpl.get(VirtualMachineOperationsImpl.java:6517)
at com.aaa.azure.JavaClient.main(JavaClient.java:81)
在 Azure 门户中,我可以看到 WorkerRole1_IN_0 正在使用此云服务。但它抛出异常。
有什么想法吗?先谢谢了。
解释Azure经典门户和Azure新门户的区别,它们使用不同的模型创建云服务和虚拟机。
在Azure经典门户上,使用ASM模式(Azure服务管理)创建Azure服务。但是使用 ARM 模式(Azure 资源管理)用于 Azure 新门户。
例如,您可以参考不同模式的REST API了解现有云服务获取信息的区别,请看下文。
- 在 ASM 模式下使用
Get Role
经典 REST API,它涉及 Java 包com.microsoft.windowsazure.management.compute
。 - 在ARM模式下使用
Get information about a virtual machine
REST API,它涉及Java包com.microsoft.azure.management.compute
。
所以根据你的代码,你使用Service Management SDK来获取在经典门户上创建的云服务的信息,而不是在新门户上创建的云服务的信息,因为在不同模式下创建的云服务有不同的模型结构。