最近想尝试通过Azure里的自动化功能来控制VM的定时开关机,找到网上的一篇文章,  按照文章操作到“Import Azure Resource manager module”的第6步时,需要导入一个”AzureResourceManager.zip”文件,但当前的页面里却找不到这个文件的下载地址。

就为了加载这个文件,查资料做测试,前后折腾了两三天,好在最终总算是成功了,在这里做个记录备忘。

1. 哪里去找这个AzureResourceManager.zip文件?

安装了Azure PoweShell 后,默认在C:\Program Files (x86)\Microsoft SDKs\Azure\PowerShell\ResourceManager目录下会有一个AzureResourceManager目录。把这个文件打包压缩成AzureResourceManager.zip就可以了。

2. 如何把它添加成Auzre Automation的模块?

方法一:在传统的Azure Portal上,打开自动化帐户,选择下部的导入模块,然后选择刚才生成的zip文件进行提交。

方法二:在新的Azure Portal上,依次打开自动化管理帐户->资产->模块。

然后选择”添加模块”

选择之前生成的zip文件进行提交。

方法三: 使用Azure Powershell

New-AzureAutomationModule –AutomationAccountName <已创建好的自动化帐户名> –ContentLink <http://Internet address/AzureResourceManager.zip> –Name <待创建的自动化模块名> –ResourceGroupName <已创建号的自动化帐户名所在的资源组的组名>

通过Powershell来处理,需要提前将AzureResourceManager.zip文件上传到网上某个位置,比如保存到Azure的Storage里,并设置为可以公开下载。

e.g. new-azureautomationmodule –automationaccountname vmautoshutdown –contentlink https://www.eee.com/azureresourcemanager.zip –name AzureResourceManager –Resourcegroupname vmautoshutdown

三种方式在上传Zip文件时需要注意:

1. 系统只支持40M的文件上传,但最新版本的Azure Powershell安装好后,生成的Zip文件会大于40M。解决办法就是删除AzureResourceManager下面几个用不到的模块目录,然后相应的修改目录里AzureResourceManager.psd1文件,把对应的模块引用去掉。比如,不需要DataFactory功能模块,就把DataFactories目录删除,然后在AzureResourceManager.psd1文件里,把DataFactories有关的引用都去掉。

(当时在这里出了疏漏,删除配置文件里的SiteRecovery引用时,由于它是在最后一行,而之前每一行的最后都有一个逗号。在删除SiteRecovery这行时没有删除上一行的逗号,导致模块导入无法成功,而PowerShell方式根本没报错,新Portal下的报错信息又非常有限,只提示Job suspended by…,后来是在传统的Portal里添加模块时,注意到报错里有提到一句指令的后面多了一个逗号才发现问题所在)

2. Azure 里默认会有0.9.1版本的资产模块, 而AzureResourcemanager模块的版本是0.9.7,这两个可能会有冲突。建议把0.9.1版本的模块删除,然后将C:\Program Files (x86)\Microsoft SDKs\Azure\PowerShell\ServiceManagement目录下的Azure目录打包(这个是0.9.7)上传, 替代老版本。

Azure 自动化里添加ResourceManager模块的更多相关文章

  1. 为Azure Web Site 添加ADFS验证支持之二 在代码里使用ADFS

    下面我们来创建一个MVC 5.0的ASP.Net程序,并且将它部署到Azure Web Site上 通过Visual Studio 2015创建Web Project 在选择ASP.net模板的地方, ...

  2. 嵌入式linux驱动开发之给linux系统添加温度传感器模块

    忙了几天,终于可以让ds18b20在自己的开发板的linux系统上跑了!虽然ds18b20不是什么新鲜玩意,但是想想知己可以给linux系统添加模块了还是有点小鸡冻呢! 虽然说现在硬件的资源非常丰富而 ...

  3. Asp.net MVC 如何向webform一样在IIS里添加虚拟目录

    相信很多用webform的程序猿都习惯性的使用虚拟目录的形式来对一个程序添加新的功能,那么在mvc下该如何来弄呢? 首先得有一个项目基层的项目,然后我们在这个项目的基础上新增一个功能模块,例如信息发布 ...

  4. 动态编译添加php模块

    注意:转载请注明出处:http://www.programfish.com/blog/?p=85 在很多时候我们用linux里搭建web服务器的时候会需要编译安装php套件,而在编译安装后可能又会需要 ...

  5. springboot~添加新模块的方法

    在springboot项目框架里,把一个项目两大模块,主项目main和测试项目test,而我们的测试项目根据功能又可以再分,比如可以有单元测试,集成测试,业务测试等等. 对于一个初学者来说,建立模块的 ...

  6. C# Azure 用Webhook添加警报规则

    本篇文章的目的是什么? Azure云端一直困扰着我的是,如果遇到数据库累积数据量过大.数据库DTU过大.应用程序服务访问量过大等,我们都没办法知道他们什么时候过大.只能做的是,我们天天看着我们的应用, ...

  7. CMake中添加Qt模块的合理方法

    https://www.jianshu.com/p/7eeb6f79a275 转载自这里 用CMake来组织的工程中要用Qt首先要设置.找到Qt相关模块.主要是通过find_package这个CMak ...

  8. 为Azure Web Site 添加ADFS验证支持之一 设置ADFS的信任关系

    很多时候企业开发的应用都会通过AD(Active Directory)进行验证用户名密码的,在企业里面统一一个AD来进行账号密码管理也是一个很好的实践.当企业打算将一个应用迁移到Azure的时候,使用 ...

  9. Linux apache 添加 mod_rewrite模块

    apache已安装完毕,手动添加mod_rewrite模块  #find . -name mod_rewrite.c //在apache的源码安装目录中寻找mod_rewrite.c文件 #cd mo ...

随机推荐

  1. 可以调整gif动画图片尺寸的很实用的php类

    类的使用demo: <?php //http://www.cnblogs.com/roucheng/ require_once "roucheng.php"; $gr = n ...

  2. 当kfreebsd 用户遇见openSUSE系统

    openSuse的系统工具集覆盖了四大主流桌面环境,是针对每一种桌面环境定制的独立的桌面体验.

  3. Retention、Documented、Inherited三种注解

    Retention注解 Retention(保留)注解说明,这种类型的注解会被保留到那个阶段. 有三个值:1.RetentionPolicy.SOURCE —— 这种类型的Annotations只在源 ...

  4. 泛函编程(6)-数据结构-List基础

    List是一种最普通的泛函数据结构,比较直观,有良好的示范基础.List就像一个管子,里面可以装载一长条任何类型的东西.如需要对管子里的东西进行处理,则必须在管子内按直线顺序一个一个的来,这符合泛函编 ...

  5. 下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作

    下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作 User::find()->all(); 此方法返回所有数据: User::findOne($id); 此方法返回 主键 id=1 的 ...

  6. 开发机多用户 xdebug 远程调试 PhpStorm

    在公司都用的远程开发机开发,每次有错误调试就得dd(xxx)然后保存真是,让我在本地开发用惯xdebug的情何以堪,所以有了下文. 1.安装配置xdebug 直接使用pecl安装即可 # pecl i ...

  7. pbfunc外部函数扩展应用-在Powerbuilder中进行Http的GET、POST操作

    利用PBFunc扩展函数进行Http的操作时,需要对n_pbfunc_http的以下几个函数进行参数设置: of_set_URL(...)//要进行GET或POST的url,必须 of_set_Con ...

  8. Hibernate之映射文件中索引及约束的使用

    1.添加索引: 在一对多的关系中,在多的一方会产生一个外键,这个外键没有自动 添加索引,当存在从一的一端产生对多的一端的查询时,有可能会在多的一端造成全表查询问题,数据量巨大时会产生严重的性能问题.可 ...

  9. ASP.NET WebAPI 07 路由

    WebAPI的中路由设计与ASP.NET相似,但又是独立的一套框架. HttpRoute HttpRoute主要提供了路由模板,用于匹配url,生成virtualPath. public interf ...

  10. BaseServlet

    1. 目的: 将提升Servlet的处理请求的能力,而不只限于doGet()/doPost()等请求. 让其Servlet能够自己根据请求,从而触发相应的方法进行处理. 2. 具体代码实现: impo ...