当前位置: 首页 > news >正文

Azure Automation (3) 定期将某个Azure订阅下的所有虚拟机开关机

  《Windows Azure Platform 系列文章目录》

 

  本文介绍的是国内由世纪互联运维的Azure China。

 

  在笔者之前的文章中,我们介绍了使用Azure Automation可以定期开关机Azure虚拟机。因为Azure虚拟机是按照分钟计费的,为了节省成本,我们可以

  (1)在白天9点之前将所有的虚拟机开启

  (2)晚上7点以后将所有的虚拟机关闭

  (3)周末的时候不使用Azure虚拟机

  这样可以显著的降低我们使用Azure虚拟机的成本,对于开发测试环境来说,特别使用Azure虚拟机。

 

  开启订阅下所有虚拟机的脚本如下:

  https://github.com/leizhang1984/AzureChinaAutomation/blob/master/ASM/StartAllVM.ps1

 

  关闭订阅下所有虚拟机的脚本如下:

  https://github.com/leizhang1984/AzureChinaAutomation/blob/master/ASM/StopAllVM.ps1

 

 

  请注意,在导入Runbook之前,修改相应的参数,如下:

                #设置Org ID
                [parameter(Mandatory=$true)]
                [String]$AzureOrgId="[YourOrgID]",
          
                #设置Org ID的密码
                [Parameter(Mandatory = $true)] 
                [String]$Password="[YourPassword]",
                
                #设置订阅名称
                [Parameter(Mandatory = $true)] 
                [String]$AzureSubscriptionName="[YourSubscriptionName]"

 

 

 

  这里的部分内容我之前已经介绍过了,请参考笔者之前的文档: Azure Automation (2) 定期删除存储账号中的文件

  

  主要步骤有以下三个部分:

  1.创建协同管理员co-admin

  2.导入Runbook

  3.设置计划任务

 

  1.创建协同管理员,略

  2.我们创建一个Automation命令为LeiAutomation。点击该Automation,如下图:

  

 

  3.页面跳转,我们点击RUNBOOKS,然后点击 IMPORT,如下图。

  

  导入完毕后,我们就可以查看到该RunBook,如下图:

  

 

  4.记得导入Azure Automation RunBook之后,需要Publish这个RunBook

  

 

  5.Publish之后,我们就可以在PUBLISHED里面看到发布的RUNBOOK项目

 

  6.执行成功后,我们可以在Schedule里面设置计划任务。我们创建一个新的计划任务,选择LINK TO A NEW Schedule,如下图:

  

 

  7.我们首先命名这个Schedule(计划任务),图略

  

  8.然后设置计划任务频率。如下图:

  

  注意,开启虚拟机的时候会花费一点时间,所以我们提前开启Azure虚拟机,设置在8:45执行这个Runbook脚本。

  那我们关闭Azure虚拟机的时候,可以稍微延后一点,比如在晚上7:10开始关闭Azure虚拟机。

 

 

 

  本博-三石Blog(下文简称本博),在本博客文章结尾处右下脚未注明转载、来源、出处的作品(内容)均为本博原创,本站对于原创作品内容对其保留版权,请勿随意转载,如若真有需要的朋友可以发Mail联系我;转载本博原创作品(内容)也必须遵循“署名-非商业用途-保持一致”的创作共用协议,请务必以文字链接的形式标明或保留文章原始出处和博客作者(Lei Zhang)的信息,关于本博摄影作品请务必注意保留(www.cnblog.com/threestone)等相关水印版权信息,否则视为侵犯原创版权行为;本博谢绝商业网站转载。版权所有,禁止一切有违中华人民共和国著作权保护法及相关法律和本博(法律)声明的非法及恶意抄袭。

 

  

相关文章:

  • haslayout
  • python练习程序(批量重命名)
  • 国标电表DLT645转MODBUS TCP协议转换器MRD-5021,工业设备,浪涌三级保护MRD
  • jquery 绑定省份和城市
  • 《高性能mysql》到手
  • hdu--1811--并查集拓扑排序好题
  • (转)关于如何学好游戏3D引擎编程的一些经验
  • Python学习小组微信群公告页面
  • 栈的表示和实现
  • 抓取代理IP
  • Jquery Ajax时 error处理 之 parsererror
  • 0816
  • 面试逻辑题
  • 10个网页设计师必备的CSS技巧(转)
  • 使用py2exe发布windows平台Python
  • express + mock 让前后台并行开发
  • flask接收请求并推入栈
  • iOS | NSProxy
  • js数组之filter
  • JS字符串转数字方法总结
  • Logstash 参考指南(目录)
  • nodejs调试方法
  • Promise面试题,控制异步流程
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 实战|智能家居行业移动应用性能分析
  • 使用 Xcode 的 Target 区分开发和生产环境
  • Semaphore
  • 蚂蚁金服CTO程立:真正的技术革命才刚刚开始
  • ​Linux·i2c驱动架构​
  • #Linux(帮助手册)
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (博弈 sg入门)kiki's game -- hdu -- 2147
  • (附源码)计算机毕业设计SSM智能化管理的仓库管理
  • (转)http-server应用
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .halo勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .net 微服务 服务保护 自动重试 Polly
  • .NET/C# 编译期能确定的字符串会在字符串暂存池中不会被 GC 垃圾回收掉
  • .NET3.5下用Lambda简化跨线程访问窗体控件,避免繁复的delegate,Invoke(转)
  • .NET版Word处理控件Aspose.words功能演示:在ASP.NET MVC中创建MS Word编辑器
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)
  • @font-face 用字体画图标
  • @ModelAttribute 注解
  • @property python知乎_Python3基础之:property
  • @selector(..)警告提示
  • [ 攻防演练演示篇 ] 利用通达OA 文件上传漏洞上传webshell获取主机权限
  • [<死锁专题>]
  • [ABC294Ex] K-Coloring
  • [BZOJ] 3262: 陌上花开
  • [CSS3备忘] transform animation 等
  • [CUDA手搓]从零开始用C++ CUDA搭建一个卷积神经网络(LeNet),了解神经网络各个层背后算法原理
  • [Flutter]WindowsPlatform上运行遇到的问题总结
  • [hdu 2826] The troubles of lmy [简单计算几何 - 相似]
  • [JavaScript]_[初级]_[关于forin或for...in循环语句的用法]