yestreenstars
发表于 2015-06-25 18:03
这部书不错~{:yct39:}
1.运维开发为什么要用python?根据自己平时的使用心得,聊聊python的优缺点。
为什么要用Python?因为Python易学又实用,写得了脚本,又写得了爬虫,还写得了网站,几乎是全能啊!Python还可以配合nagios等监控软件使用,有很多nagios的插件都是用Python写的,能力强的可以根据自己的需要写Python来监控。我的Python也才刚入门,所以特别需要书籍来学习,目前我主要对爬虫比较感兴趣,自己有空也会到论坛逛逛,学习一下别人写爬虫的方法,然后自己找些网站来练练手。Python的优点就是易学、开源,语法优美,没有那么多的条条框框,第三方库丰富,几行代码就实现别人几百行代码的功能,既可以用来做系统管理,也可以用来做网站,学得一般可以辅助运维,学得好可以专门去找Python开发的工作了。当然,人无完人,没有一门语言是完美的,Python也不例外,Python的速度比C和C++这类语言来说,简直就是渣,因为它是解释型语言,而C和C++是编译型语言。
2.Python运维脚本开发过程中应该注意什么?
在给变量命名时应该取一些显而易见的名字,尽量少用一些令人丈二和尚摸不着头脑的变量名,也不要和现有函数相同的名字。另外就是适当的给些注释,脚本应该面向对象设计。在开发过程中应该不断地调试脚本,一边开发一边调试,尽可能地将出错率降到最低。
3.如何运用Python帮助运维更好、更高质量的完成运维工作?可以举例说明或用实际案例概括。
Python的第三方库很丰富,我曾经用Python写过一个脚本,用于诊断部署在全球各地的服务器的端口状态,因为脚本中包含敏感信息,所以这里这发出函数的部分:import socket
def IsOpen(ip,port):
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
try:
s.connect((ip,int(port)))
s.shutdown(2)
return True
except:
return False此外,我还写过一个用pexcept实现的自动应答远程同步脚本。总而言之,Python学得好确实对运维很有帮助。
lyhabc
发表于 2015-06-25 21:50
@yestreenstars
pexcept是except的高级版吗{:yxh93:}
devops,cmdbConfiguration Management Database 配置管理数据库,django web 框架,puppet ruby写的,zabbix,lnmp ,ci
bun
发表于 2015-06-25 23:11
stay_sun
发表于 2015-06-26 08:11
回复 24# bun
但是一个项目 不能光一个人写吧需要团队辞职之后接手别人的 项目呢,开发了一年的项目难道要重写
xiaoxingan99
发表于 2015-06-26 09:04
这个工资不算高吧?perl学好了到处都是这个价码!
紫柳
发表于 2015-06-26 10:25
以前看过一个python编译脚本,貌似很难懂的样子
刺客阿地
发表于 2015-06-26 11:16
:mrgreen::mrgreen:money。。。。我喜欢,过来支持下,努力学习python,为了money........
oppo0114
发表于 2015-06-26 11:55
能用shell解决的问题,目前我尽量不去用python;大家怎么看:em03:
stay_sun
发表于 2015-06-26 13:42
回复 29# oppo0114
看你用nage 熟了吧都行 想学好python 的话 最好试着写因为你刚开始肯定是 bash 比较熟不写的话怎么能练出来
ckf513728912
发表于 2015-06-26 13:47
工资好高啊