订阅无法在 ARM 模式下创建虚拟机,只能在 ASM 模式下创建 Azure VM 部署
问题描述
资源组所有者可以在新版 portal 创建经典模式的虚拟机,但是无法创建 ARM 模式的虚拟机。
问题现象
环境中有个相对权限比较高的账户,比如 account admin (以下简称为 AA),这个账号创建一个资源组和对应的 owner。
如果用这个资源组的 owner 登陆 Azure,会出现这个问题:只能创建经典模式的虚拟机,但无法创建 ARM 模式的虚拟机。
问题分析
ARM 下很多资源提供程序没有注册,包括 ARM 下的 Microsoft.Compute:
| NameSpace | RegistrationState |
|---|---|
| Microsoft.Batch | Registered |
| Microsoft.ClassicCompute | Registered |
| Microsoft.ClassicNetwork | Registered |
| Microsoft.ClassicStorage | Registered |
| microsoft.insights | Registered |
| Microsoft.Sql | Registered |
| Microsoft.StreamAnalytics | Registered |
| Microsoft.Web | Registered |
| Microsoft.ApiManagement | NotRegistered |
| Microsoft.Authorization | Registered |
| Microsoft.Cache | NotRegistered |
| Microsoft.ClassicInfrastructureMigrate | NotRegistered |
| Microsoft.CognitiveServices | NotRegistered |
| Microsoft.Compute | NotRegistered |
| Microsoft.Devices | NotRegistered |
| Microsoft.DocumentDB | NotRegistered |
| Microsoft.EventHub | NotRegistered |
| Microsoft.Features | Registered |
| Microsoft.HDInsight | NotRegistered |
| Microsoft.KeyVault | NotRegistered |
| Microsoft.Media | NotRegistered |
| Microsoft.Network | NotRegistered |
| Microsoft.Portal | NotRegistered |
| Microsoft.Resources | Registered |
| Microsoft.Scheduler | Registered |
| Microsoft.ServiceBus | NotRegistered |
| Microsoft.ServiceFabric | NotRegistered |
| Microsoft.Storage | NotRegistered |
AA 创建的资源组的 owner 之所以没有自动注册资源提供程序是由于 AA 的权限导致的。如果 AA 没有创建过 Azure 虚拟机,那么就没有自动注册过资源提供程序,所以 AA 所创建的资源组的 owner 也没有这个权限。
解决方法
基于以上理论,解决方案有两个:
- 手动运行 PowerShell 命令注册资源提供程序;
- 用创建资源组 owner 的那个账号(AA) 先创建一个 ARM 的 Azure 虚拟机。 立即访问http://market.azure.cn
订阅无法在 ARM 模式下创建虚拟机,只能在 ASM 模式下创建 Azure VM 部署的更多相关文章
- Azure Powershell获取指定订阅下的虚拟机信息(ASM)
为方便Azure用户导出已创建虚拟机的相关信息,特编写如下脚本: 详情脚本: # 登陆Azure Account Add-AzureAccount -Environment AzureChinaClo ...
- 创建虚拟机流程nova
这篇博文借鉴于http://www.cnblogs.com/yjbjingcha/p/6977741.html,感谢博友提供. 本文试图具体地描写叙述openstack创建虚拟机的完整过程.从用户发起 ...
- 『学了就忘』Linux基础 — 5、使用VMware创建虚拟机
目录 1.在VMware中创建虚拟机 (1)点击[创建新的虚拟机]. (2)选择系统安装方式 (3)选择客户机操作系统 (4)自定义虚拟机的名称和安装位置. (5)指定系统硬盘容量 (6)完成创建 2 ...
- VMware workstation创建虚拟机console
1. 使用VMware workstation创建虚拟机硬件2. 安装操作系统3. 操作系统安装过程 1. 使用VMware workstation创建虚拟机硬件 使用VMware workstati ...
- 在 Linux 上创建虚拟机规模集和部署高度可用的应用
利用虚拟机规模集,可以部署和管理一组相同的.自动缩放的虚拟机. 可以手动缩放规模集中的 VM 数,也可以定义规则,以便根据资源使用情况(如 CPU 使用率.内存需求或网络流量)进行自动缩放. 在本教程 ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.1创建虚拟机
2.1.创建虚拟机 2.1.1. 创建虚拟机节点1 2.1.2. 创建虚拟机节点2 操作如节点1. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境所有链 ...
- Openstack(十四)创建虚拟机
启动虚拟机之前需要先做一些前期准备,比如网络和IP地址分配.虚拟机:类型创建等等,具体如下: 14.1网络规划及IP划分 #官网安装文档:https://docs.openstack.org/ocat ...
- Azure ARM (9) 创建ARM模式下的虚拟机网络
<Windows Azure Platform 系列文章目录> 笔者在之前几章内容中,创建了ARM Resource Group,然后在这个ARM Resource Group下创建Azu ...
- Azure ARM (11) ARM模式下,创建虚拟机并配置负载均衡器
<Windows Azure Platform 系列文章目录> 本文内容比较多,请大家仔细阅读,谢谢! 在前几章中,我们做了准备工作: 1.创建ARM Resouce Group,叫Lei ...
随机推荐
- Android与MVC设计模式
写在前面,之前做过一段时间移动开发,后来因为工作原因搁浅了,最新重新拿起Android权威编程指南学习,顺道做个学习笔记. 首先呢,我想说无论是计算机科班出身还是培训班出身,都听说过高内聚低耦合以及M ...
- LeetCode记录之14——Longest Common Prefix
本题虽然是easy难度,题目也一目了然,问题就是在这里,需要考虑的特殊情况太多,太多限制.导致我一点点排坑,浪费了较多时间. Write a function to find the longest ...
- POJ_2010 Moo University - Financial Aid 【堆预处理】
一.题面 POJ2010 二.分析 堆预处理 首先可以考虑吧随便取一个点,判断两侧的最小的总费用是多少,然后相加判断是否满足条件.如果直接判断会超时,所以需要用大根堆预处理一下.先看从分数最小的往最大 ...
- linux 配置环境变量
配置全局 环境变量 查看环境变量 #这个变量赋值操作,只是临时生效,需要写入到文件,永久生效 echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/u ...
- Nginx 安装--图片服务器搭建
1. nginx 需要依赖以下模块: gzip模块需要 zlib 库 rewrite模块需要 pcre 库 ssl 功能需要openssl库 1.1.安装pcre 1. 获取pcre ...
- UML类图关系(继承、泛化、实现、依赖、关联、聚合、组合)
继承.实现.依赖.关联.聚合.组合的联系与区别 分别介绍这几种关系: 继承 指的是一个类(称为子类.子接口)继承另外的一个类(称为父类.父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者 ...
- MyBatis 源码解析SqlSession.getConnection(Connection异常:关闭或者不在Mybatis事务)
从SqlSession的实现类SqlSessionTemplate源码中,看出相关方法被其内部类SqlSessionInterceptor(实现了InvocationHandler)代理 当调用Sql ...
- mysql explain工具使用
explain工具可以确认执行计划是否良好,查询是否走了合理的索引.查询的执行计划,随着数据的变化也可能会有变化.调用方式:explain + [sql语句]. 另外,explain是有局限性的:1. ...
- python 爬虫系列06--古诗文
读书破万卷,下笔如有神 import requests import re def parse_page(url): headers = { 'USer-Agent':'user-agent: Moz ...
- jquery、js判断复选框是否选中
js: if (document.getElementById("checkboxID").checked) { alert("checkobx is checked&q ...