Azure Automation (1) 入门
《Windows Azure Platform 系列文章目录》
通过Azure Automation(自动化),开发人员可以自动完成通常要在云环境中执行的手动、长时间进行、易出错且重复性高的任务。你可以使用 Runbook 来创建、监视、管理和部署 Azure 环境中的资源。所谓的 Runbook,基本上就是指 Windows PowerShell 工作流。
Azure Automation概念上类似Windows Service,SQL Server Job。
Azure Automation可以无人值守,自动化运行。
Azure Automation有三个非常重要的概念:
1.Automation,一组业务逻辑的集合。包含多个RunBook和多个Schedule。
2.RunBook,运行业务逻辑的主题
3.Schedule,调度RunBook的计划任务。一个Schedule可以调度多个RunBook
举个例子,假设我们每天早上9点上班之前把一个订阅下所有的虚拟机开启,然后在下午6点下班以后把所有的虚拟机关闭,这样是非常节省成本的。
以前我们需要通过单独某一台Azure虚拟机,定期执行PowerShell命令,因为虚拟机按照小时收费,成本会非常高,非常不划算。
另外单独的Azure虚拟机会产生单点故障,从可靠性角度来说,也是无法保障的。
通过使用Azure Automation,可以设置自动化的工作流,定期执行负载的业务逻辑。
Azure Automation功能非常强大。微软Azure Automation团队提供了Runbook实例代码,读者可以浏览http://go.microsoft.com/fwlink/p/?linkid=393029&clcid=0x409,进行参考。
最后,笔者演示一个简单的Azure Automation Hello World,使用国内由世纪互联运维的Azure China
1.首先我们登陆管理界面,地址https://manage.windowsazure.cn
2.选择Automation,点击Create an automation account。如下图:

2.输入Automation的名字,如下图:

3.在Automation栏目,选择我们之前创建的LeiAutomation。如下图:

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

5.打开浏览器浏览https://gallery.technet.microsoft.com/scriptcenter/The-Hello-World-of-Windows-81b69574
下载相应的PS1脚本并通过上图导入到Azure Runbook。如下图:

6.导入成功后,我们就可以查看到该RunBook。如下图:

7.我们点击上图中的Write-HelloWorld,页面跳转,然后我们点击Author。如下图:

8.可以看到这个RunBook的业务很简单,就是输出Hello World。具体代码如下:
workflow Write-HelloWorld {
param (
# Optional parameter of type string.
# If you do not enter anything, the default value of Name
# will be World
[parameter(Mandatory=$false)]
[String]$Name = "World"
)
Write-Output "Hello $Name"
}
9.我们可以通过点击TEST来进行调试。如下图:

10.调试成功后,我们就可以点击PUBLISH进行发布。如下图:

11.发布成功后,我们可以在PUBLISHED里面看到发布的RUNBOOK项目,如下图:

12.我们点击PUBLISH里面的Start按钮,可以执行该RUNBOOK。如下图:

13.执行成功后,我们可以在Jobs里,查看到之前执行的Job。如下图:

14.我们点击上图的JOB CREATED,就可以查看到执行的具体情况。图略。
15.如果我们点击SCHEDULE,就可以定期,比如每小时,每天执行这个RUNBOOK。如下图:

Azure Automation (1) 入门的更多相关文章
- Azure Automation (2) 定期删除存储账号中的文件
<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China. 本文是对笔者之前的文档Azure Backup (1) 将SQL ...
- Azure Automation (3) 定期将某个Azure订阅下的所有虚拟机开关机
<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China. 在笔者之前的文章中,我们介绍了使用Azure Automation ...
- Azure Automation (4) 按照Azure虚拟机的机器名,设置开关机
<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China服务. 在有的时候,我们不需要将所有的虚拟机进行开关机. 本文介绍的脚 ...
- 使用Azure Automation(自动化)定时关闭和启动虚拟机
1. 概述 作为Windows Azure的用户,使用Azure的过程中,最担心的事情就是还没到月底,预设的费用就快消耗完了(下面两张账单图是我最讨厌看到的).但是仔细分析自己的费用列表,发现绝大部分 ...
- 免费电子书:微软Azure基础之Azure Automation
(此文章同时发表在本人微信公众号"dotNET每日精华文章") Azure Automation是Azure内置的一项自动化运维基础功能,微软为了让大家更快上手使用这项功能,特意推 ...
- 利用Azure Automation实现云端自动化运维(3)
Azure automation的认证方式:证书 该种方式是推荐的进行Automation认证的方式,好处在于安全性高,过期时间由自己控制,不好的地方在于大家在Windows上要生成证书比较麻烦, ...
- 利用Azure Automation实现云端自动化运维(1)
Azure Automation是Azure上的一个自动化工作流引擎,基于Powershell,来帮助用户简化,集成和自动化Azure上的运维工作,例如: 实现定时开关虚拟机,节约成本 实现定时创建删 ...
- 利用Azure Automation实现云端自动化运维(2)
Azure automation的认证: 用户名和密码 在Azure的automation中使用Powershell可以管理当前订阅的资源,也可以管理不同订阅的资源,那么问题就来了,安全性如何 ...
- 利用Azure Automation实现云端自动化运维(4)
在上述基本准备工作做完后,wo们看看如何实现利用Azure Automation实现定时自动开关机的操作,这种场景非常适合Dev/Test环境,因为Azure的虚拟机是按照分钟收费的,所以我们可以在开 ...
随机推荐
- week 4 日志
周一 上上个星期感冒,上个星期看完奇幻森林后痔疮发作,打了整整一礼拜的针,有点背.. 今天看了 css知多少(6)——选择器的优先级 http://www.cnblogs.com/wangfupeng ...
- 对InvokeAction简略分析了解验证失败为什么Action还会继续执行
一.前言 有些同学使用AuthorizationFilter来进行用户是否登录验证,如果未登录就跳到登录页. 很简单的一个场景,但是有些同学会发现虽然验证失败了,但是整个Action还会执行一遍. 于 ...
- 【腾讯bugly干货】QQ空间直播秒开优化实践
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址为:http://bugly.qq.com/bbs/forum.php?mod=viewthread&tid=1204&am ...
- Linux2:vi、ls、cd、pwd、mkdir、rm、mv、cp、cat、tail
前言 从本篇文章开始,每篇文章将写10个Linux命令,个人的写作想法是: 1.常用的Linux命令,那些生僻的.不常用的就不写了 2.从实际考虑,只列出每个命令常见的用法和参数选项,有兴趣了解进一步 ...
- git/ssh捋不清的几个问题
主要是 windows 用户会遇到很多纠结的问题,linux/unix 用户属于这方面的高端用户,应该有能力处理此类问题,而且网络上也有很多解决方案,本文的授众是 windows 用户.由于今天配置了 ...
- mysqlnd cannot connect to MySQL 4.1+
phpMyAdmin - error #2000 - mysqlnd cannot connect to MySQL 4.1+ using the old insecure authenticatio ...
- Java框架介绍-13个不容错过的框架项目
本文转自互联网,个人收藏所用. 下面,我们将一同分享各有趣且颇为实用的Java库,大家请任取所需.不用客气~ 1.极致精简的Java Bootique是一项用于构建无容器可运行Java应用的极简技术. ...
- java gc的考察
参考http://www.cnblogs.com/mazj611/p/3481610.html 看了很多博客.书, 仍然有所不懂.很多看过即忘记.实在要不得. 我们可以通过jstat获取gc情况 js ...
- 从零开始用gulp
gulp是基于流的前端构件化工具.目前比较火的前端构建化工具还是挺多的,grunt gulp fis3等等. 这个鬼东西有什么用?请参考https://www.zhihu.com/question/3 ...
- 每天一个linux命令(58):telnet命令
telnet命令通常用来远程登录.telnet程序是基于TELNET协议的远程登录客户端程序.Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式.它为用户 ...