在程序员的世界里,有关编程语言孰优孰劣的争论从来就没有消停过,不管你更粉哪种语言,毫无疑问,每种语言都有自己擅长的领域,而一些语言因为上手简单、扩展性强、功能强大等因素,往往会比较多地出现在我们面前,呐,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. 数据库 连接(join)

    转自http://www.cnblogs.com/caozengling/p/5318696.html 数据库中飞内连接,自然连接,外连接 数据库中的连接join氛围内连接,自然连接,外连接,外连接又 ...

  2. C语言实现wc项目

    该World Count项目用的是C语言编写,只实现了-c.-w.-l.三个功能,由于简单全部代码均由小编自己编写,用的是VS2013只支持windows平台cmd运行. 木有图形界面,参考了Linu ...

  3. kolla-build常用命令行详解

    --base-image 用于指定使用自己定制的基础镜像,不用官方网站的样例如下:kolla-build --base-image registry.access.redhat.com/rhel7/r ...

  4. js原生实现轮播图效果(面向对象编程)

    面向对象编程js原生实现轮播图效果 1.先看效果图 2.需要实现的功能: 自动轮播 点击左右箭头按钮无缝轮播 点击数字按钮切换图片 分析:如何实现无缝轮播? 在一个固定大小的相框里有一个ul标签,其长 ...

  5. 反射实现增删改查(DAO层)——插入数据

    先贴出代码,后续补充自己的思路.配置文件.使用方式: /** * 插入数据 */ @Override public void addObject(Object object, String table ...

  6. cf835(预处理 + 记忆化dp)

    题目链接: http://codeforces.com/contest/835/problem/D 题意: 定义 k 度回文串为左半部分和右半部分为 k - 1 度的回文串 . 给出一个字符串 s, ...

  7. 解决Maven项目中jar包依赖冲突问题

    版本冲突的解决方案 [1]调节原则 [1]路径最短者优先原则 [2]路径相同时,先声明者优先原则 [2]排除原则:用于排除某项依赖的依赖jar包 <dependency> <grou ...

  8. C.0689-The 2019 ICPC China Shaanxi Provincial Programming Contest

    We call a string as a 0689-string if this string only consists of digits '0', '6', '8' and '9'. Give ...

  9. springMvc配置 中文api

    http://7xvpsh.com1.z0.glb.clouddn.com/publish/21-2/the-dispatcher-servlet.html springmvc4.1.7:配置 复制转 ...

  10. 16-----client、offset、scroll 系列

    1.client 代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...