在程序员的世界里,有关编程语言孰优孰劣的争论从来就没有消停过,不管你更粉哪种语言,毫无疑问,每种语言都有自己擅长的领域,而一些语言因为上手简单、扩展性强、功能强大等因素,往往会比较多地出现在我们面前,呐,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,通过语义分析等办法增加管理和监控选项。有其他想法或者意见?不妨通过评论回复一下,没准还能约几个志同道合的小伙伴一起公关成功,造福更多用户也说不定呐~
最后照惯例开始发资源了,收好不谢: