在程序员的世界里,有关编程语言孰优孰劣的争论从来就没有消停过,不管你更粉哪种语言,毫无疑问,每种语言都有自己擅长的领域,而一些语言因为上手简单、扩展性强、功能强大等因素,往往会比较多地出现在我们面前,呐,Python 这条「巨蟒」就是如此。

Web 开发会用到,数据分析会用到,机器学习会用到,科学计算会用到……哪哪哪都能看到它的身影。

那么你猜,Azure 虚拟机和 Python 的碰撞能产生什么有趣的东西?

微软云计算架构师、资深工程师彭俊带你开脑洞了,通过 Python 驾驭 Azure 虚拟机,让它更听你的话。

彭俊

微软云计算架构师、资深工程师

将通过本文介绍如何使用基于 Python 开发的小程序控制 Azure 虚拟机

运维工程师的日常是怎样的?别的先不说,不过有一种情况可能经常会遇到:

  • 客户/管理员通过控制台、微信、邮件等方式告诉运维,某台虚拟机需要开机/关闭/重启;

  • 运维人员根据要求执行对应的操作,然后通过微信/短信/邮件等方式将结果反馈给管理员或用户;

  • 同时可能还需要通过类似的方式给其他负责运维的同事发出提醒;

  • 此外,运维人员偶尔可能还需要查看某一时段内的审计或运维日志,来确定这一时段内执行的操作是否合理……

如果说只需要写一个简单的 Python 小程序,就可以通过邮件、微信等方式自动搞定这一切呢?

不信就一起试试吧。

1安装配置 Python

首先需要在中国区 Azure 上安装 Python,为此需要执行下列命令:

pip install azure==2.0.0rc6

其他配置和选项基本可以按照 Python SDK 的官方文档介绍来执行,并且可以参考范例和相关源代码。

下列操作的核心是 RESTFul API,并将通过模拟 HTTP call 来完成操作。

2程序代码解读

实现上述目标的这个 Python 小程序,完整代码如下:

这里需要注意:Base_url 一定记得要选中国,随后需要启动几个用于处理请求的 Monitor/Compute 的客户端。

为了完成邮件和微信提醒功能,还需要编写短信通知和微信通知、监控模块。

邮件通知可以用 SMTPLib 来完成,这里选择的 139 服务可以直接提供短消息通知。                                                                                                                                                     

至此,一个简单的运维提醒查看工具就搞定了。

高潮来了

彭老师这次开脑洞就是这样,各位小伙伴你们在读完之后,是否会想到其他同样炫酷有趣的操作?

例如:使用微信作为监控指令的 Host 或者 Webhook,通过语义分析等办法增加管理和监控选项。有其他想法或者意见?不妨通过评论回复一下,没准还能约几个志同道合的小伙伴一起公关成功,造福更多用户也说不定呐~

最后照惯例开始发资源了,收好不谢:

立即访问http://market.azure.cn

Python 加持,给你更有趣的 Azure 虚拟机开关重启方法!的更多相关文章

  1. Azure虚拟机时间同步问题

    场景描述:在Azure上新创建虚拟机默认是UTC时区的,因为业务在国内,所以要修改在CST注:协调世界时(英语:Coordinated Universal Time,法语:Temps Universe ...

  2. WOW.js – 让页面滚动更有趣

    演示1 演示2-仿oppo首页 下载 简介 有的页面在向下滚动的时候,有些元素会产生细小的动画效果.虽然动画比较小,但却能吸引你的注意.比如刚刚发布的 iPhone 6 的页面(查看).如果你希望你的 ...

  3. wow.js让css3动画变动更有趣(滚动页面动画模拟懒加载特效)

    CSS3的出现给网站页面增加了活力,网站增色不少,有这么小小的一款插件就能做出很多动画效果. 最重要的是它:简单易用.轻量级.无需 jQuery......他就是wow.js 地址:https://d ...

  4. 【转】python:让源码更安全之将py编译成so

    python:让源码更安全之将py编译成so 应用场景 Python是一种面向对象的解释型计算机程序设计语言,具有丰富和强大的库,使用其开发产品快速高效. python的解释特性是将py编译为独有的二 ...

  5. 只为更快、更省、更安全的 Azure CDN

    来来来!小编今天要公布一件大事啦: 经过最近一次更新,Azure CDN 高级版服务 HTTPS SSL 证书的申请方式有所改进啦,除了现有的 Azure CDN 代为申请证书外,还支持用户自己申请的 ...

  6. 【Azure Developer】Python代码通过AAD认证访问微软Azure密钥保管库(Azure Key Vault)中机密信息(Secret)

    关键字说明 什么是 Azure Active Directory?Azure Active Directory(Azure AD, AAD) 是 Microsoft 的基于云的标识和访问管理服务,可帮 ...

  7. 使用mysqlslap对mysql进行压测,观察Azure虚拟机cpu使用率

    一直想做这个测试,原因很简单,很多人一直比较怀疑Azure的虚拟机性能,说相同的配置凭啥比阿里的虚拟机贵那么多,其实,我自己以前也怀疑过,但是接触Azure的几个月,确实发现Azure的虚拟机性能真的 ...

  8. Azure 虚拟机常见问题-上

    在 Azure 虚拟机上可以运行什么? 所有订户均可在 Azure 虚拟机上运行服务器软件.此外,MSDN 订户还可以访问由 Azure 提供的特定 Windows 客户端映像. 就服务器软件来说,你 ...

  9. 运行预构建 Linux 映像的 Windows Azure 虚拟机中的交换空间 – 第 1 部分

    本文章由 Azure CAT 团队的 Piyush Ranjan (MSFT) 撰写. 随着基础结构服务(虚拟机和虚拟网络)近期在 Windows Azure 上正式发布,越来越多的企业工作负荷正在向 ...

随机推荐

  1. Spring入门第五课

    集合属性 在Spring中可以通过一组内置的xml标签(如:<list>,<set>,<map>)来配置集合属性. 配置java.util.List类型的属性,需要 ...

  2. Umbraco -- 在Visual Studio中新建一个View 如何在Umbraco back office 中显示出来

    在使用Umbraco中的过程中,遇到一个问题. 我在项目中(Visual Studio),添加了一个View---Test.cshtml. 然后进入到该Umbraco项目的back office, 在 ...

  3. 35.windows提权总结

    本文参考自冷逸大佬的博客,源地址在这里:https://lengjibo.github.io/windows%E6%8F%90%E6%9D%83%E6%80%BB%E7%BB%93/ windows提 ...

  4. HTML代码中<%%>、<%=%>、<%:%>各是什么意思

    运行.获取后台代码或值.<%%>之间可以写服务器端代码,比如<%for(var i=0;i<10;i++){//执行循环体}%> 又如<%for(var i=0;i ...

  5. .net动态代理-EMIT,AOP实现

    动态代理实现原理: 通过动态基础目标类,重写目标虚方法,.net中实现手段-il Emit.Proxy项目源码,https://github.com/1448376744/Emit.Proxy 以下是 ...

  6. 2017乌鲁木齐区域赛A(动态规划,组合数学,期望)

    #include<bits/stdc++.h>using namespace std;double c[110][110];double g[110];double dp[110][110 ...

  7. PostGIS安装 pgis3.4.2 postgresql 10.1

    https://yq.aliyun.com/articles/228258http://download.osgeo.org/postgis/source/http://blog.51cto.com/ ...

  8. print和sys.stdout

    print print语句执行的操作是一个写操作,把我们从外设输入的数据写到了stdout流,并进行了一些特定的格式化.和文件方法不同,在执行打印操作是,不需要将对象转换为字符串(print已经帮我们 ...

  9. Meissel Lehmer Algorithm 求前n个数中素数个数 【模板】

    Count primes Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tot ...

  10. 解决Win10中vmware运行特别慢问题

    1.关闭防火墙:win+S打开搜索框,输入防火墙,选择windowsDefender防火墙 ,如图: 2.启用或关闭防火墙,如图: 3.关闭防火墙,两个选项都关闭,如图: 4.打开VMware,如果速 ...