免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: yestreenstars
打印 上一主题 下一主题

[其他] 学习与分享——Python自动化运维 [复制链接]

论坛徽章:
32
处女座
日期:2013-11-20 23:41:20双子座
日期:2014-06-11 17:20:43戌狗
日期:2014-06-16 11:05:00处女座
日期:2014-07-22 17:30:47狮子座
日期:2014-07-28 15:38:17金牛座
日期:2014-08-05 16:34:01亥猪
日期:2014-08-18 13:34:25白羊座
日期:2014-09-02 15:03:55金牛座
日期:2014-11-10 10:23:58处女座
日期:2014-12-02 09:17:52程序设计版块每日发帖之星
日期:2015-06-16 22:20:002015亚冠之塔什干火车头
日期:2015-06-20 23:28:22
61 [报告]
发表于 2014-11-26 14:39 |只看该作者
回复 60# bulletmarquis

牛逼啊!你也会python啊!
   

论坛徽章:
16
IT运维版块每日发帖之星
日期:2015-08-24 06:20:00综合交流区版块每日发帖之星
日期:2015-10-14 06:20:00IT运维版块每日发帖之星
日期:2015-10-25 06:20:00IT运维版块每日发帖之星
日期:2015-11-06 06:20:00IT运维版块每日发帖之星
日期:2015-12-10 06:20:00平安夜徽章
日期:2015-12-26 00:06:302016猴年福章徽章
日期:2016-02-18 15:30:34IT运维版块每日发帖之星
日期:2016-04-15 06:20:00IT运维版块每日发帖之星
日期:2016-05-21 06:20:00综合交流区版块每日发帖之星
日期:2016-08-16 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-14 06:20:00
62 [报告]
发表于 2014-11-26 14:56 |只看该作者
1.你是如何学习Python的?看书?看视频?还是?
看书+google

2.你工作中有用到Python吗?主要用来做什么?
略有,系统管理的时候解决shell处理不了的问题。

3.你觉得Python跟其他脚本语言比优势在哪?
比perl简洁易懂,比php有更强大模块。比shell也是模块多,API强。

4.谈谈Python在自动化运维中的应用。

没玩过,都是Puppet来处理的。

5.给出一个你自己写的Python脚本(最好有详细注释)。

http://blog.chinaunix.net/uid-20778583-id-3535210.html

http://blog.chinaunix.net/uid-20778583-id-1635617.html

论坛徽章:
2
摩羯座
日期:2014-11-03 15:28:56卯兔
日期:2015-01-04 17:20:51
63 [报告]
发表于 2014-11-26 15:05 |只看该作者
回复 61# yestreenstars


    只是写过一点点,很不熟练

   现在需要用python写东西,还得一边查资料一边写=。=

论坛徽章:
0
64 [报告]
发表于 2014-11-26 16:30 |只看该作者
  1. 1.你是如何学习Python的?看书?看视频?还是?
  2. 看书:python语法是从python简明手册上看的。python标准库
  3. 同事指导:有幸在北京的公司时候一个同事指导过我写一些简单的py脚本

  4. 2.你工作中有用到Python吗?主要用来做什么?
  5. 工作中用到python的地方还是蛮多的:
  6. a. 我们用aws的时候,一些自动部署、检测脚本都是用python写的
  7. b. 平时一些备份任务现在也改成python去做
  8. c. 帮助运营人员去分析一些数据(mysql、DB的一些操作)

  9. 3.你觉得Python跟其他脚本语言比优势在哪?
  10. 可读性很强、可移植性强

  11. 4.谈谈Python在自动化运维中的应用。
  12. 现在我们生产环境使用ansible做为自动化部署和配置管理,配置git,真的很赞

  13. 5.给出一个你自己写的Python脚本(最好有详细注释)。
  14. 第一次写爬虫的时候脚本:
  15. import os
  16. import urllib
  17. import re

  18. # 定义下载路径
  19. download_path = os.path.dirname(os.path.abspath(__file__))


  20. class spider(object):
  21.     def __init__(self, url):
  22.         self.url = url

  23.     # 分析内容   
  24.     def parse(self,content):
  25.         pattern = 'src="(http://.*\.jpg)\s*"'
  26.         matchs = re.findall(pattern,content,re.M)
  27.         return matchs

  28.     # 下载图片
  29.     def downloads(self,urls):
  30.         d_path = download_path + "/test"
  31.         if not os.path.exists(d_path):
  32.             os.mkdir(d_path)
  33.         for url in urls:
  34.             filename = url.split("/")[-1]
  35.             print url
  36.             print "Downloads %s" % (filename)
  37.             output = "%s/%s" % (d_path, filename)
  38.             urllib.urlretrieve(url,output)
  39.      
  40.     #  run主体      
  41.     def run(self):
  42.         d_url = self.url
  43.         fd = urllib.urlopen(d_url)
  44.         try:
  45.             content = fd.read()
  46.             urls = self.parse(content)
  47.             self.downloads(urls)
  48.         finally:
  49.             fd.close()

  50. if __name__ == "__main__":
  51.     sp = spider("http://eladies.sina.com.cn/photo/")
  52.     sp.run()
复制代码

论坛徽章:
0
65 [报告]
发表于 2014-11-26 21:40 |只看该作者
1.你是如何学习Python的?看书?看视频?还是?
我是野路子,就是前任有个小工具是python写的,让我运维。我才百度python的hello word,然后买了一本python的入门数据,自己对照书,练习了一个周末。
2.你工作中有用到Python吗?主要用来做什么?
我的工作就是运维+数据库dba。所以主要就是用python的模板来生成一些sql,和一些简单的监控。
3.你觉得Python跟其他脚本语言比优势在哪?
python的结构清晰,方便其他人查看代码。
4.谈谈Python在自动化运维中的应用。
先吐槽下,python没有一个分隔符,只能靠换行缩进,在一行python做管道的时候,真心不方便。其他的python提供的api非常多,很方便就实现一些小功能。
5.给出一个你自己写的Python脚本(最好有详细注释)。
这个回头补一个,python的单行命令查询ip对应的域名。

论坛徽章:
1
水瓶座
日期:2013-11-04 13:16:13
66 [报告]
发表于 2014-11-27 10:34 |只看该作者
坐不住了,母哥也不叫我~

1.你是如何学习Python的?看书?看视频?还是?
看书,自己实践写代码

2.你工作中有用到Python吗?主要用来做什么?
运维脚本略多,主要用分析日志,生成报表,Django 开发公司的运维平台

3.你觉得Python跟其他脚本语言比优势在哪?

简单易懂,门槛低,模块多

4.谈谈Python在自动化运维中的应用。

很多有运维自动化工具都是基于python开发的,如 func   fabric  salt  等,还有一个比较火,名字想不起来了

5.给出一个你自己写的Python脚本(最好有详细注释)。

一定要给吗? 比较长
请移步 http://blog.chinaunix.net/uid-17291169-id-3241613.html

论坛徽章:
32
处女座
日期:2013-11-20 23:41:20双子座
日期:2014-06-11 17:20:43戌狗
日期:2014-06-16 11:05:00处女座
日期:2014-07-22 17:30:47狮子座
日期:2014-07-28 15:38:17金牛座
日期:2014-08-05 16:34:01亥猪
日期:2014-08-18 13:34:25白羊座
日期:2014-09-02 15:03:55金牛座
日期:2014-11-10 10:23:58处女座
日期:2014-12-02 09:17:52程序设计版块每日发帖之星
日期:2015-06-16 22:20:002015亚冠之塔什干火车头
日期:2015-06-20 23:28:22
67 [报告]
发表于 2014-11-27 10:38 |只看该作者
回复 66# howge

脚本写得牛逼!
   

论坛徽章:
2
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:09
68 [报告]
发表于 2014-11-27 11:22 |只看该作者
本帖最后由 lolizeppelin 于 2014-11-27 11:37 编辑

一.你是如何学习Python的?看书?看视频?还是?
看简单的语法入门书,google解决遇到的问题,读别人代码,最重要的还是多用python解决问题,多写代码

二.你工作中有用到Python吗?主要用来做什么?
1 数据库数据处理,启多进程去多个数据库数据取指定数据再合并统计
2 各类数据格式化输出到数据库、普通文件、excel,方便财务,运营查看(这类工作非常多,特别是在web后台功能开发不全的时候)
3 自动化运维脚本
4 爬虫、与网页互交获取指定资源(本来想附上ucloud的数据库备份脚本的.不让贴url卵叼)
5 压力测试
6 系统管理
7 做nagios等监控工具的的插件、报警控件
8 日志文件分析、cdn日志,nginx日志等
9 做服务器代理进程,处理开服,关服,热更新,文件更新等

三.你觉得Python跟其他脚本语言比优势在哪?
1.对比perl
最大优点,比perl好读太多,有个笑话就是猴子乱打打出来第一个能用的语言就是perl。
python如果你用很c的方式去写的话,任意一个程序员都很容易阅读你的代码。而且perl也有点日落西山的感觉,各类库都比不上python了(perl写得少,一点个人感觉)
最大缺点,perl比python早上linux,在某些老旧系统上只有perl
2.对比php
php我写得不多,php比python主要还是系统管理相关的模块少很多,php毕竟主攻的方向就不是这里
3.shell
python对比shell的优点是在是太多了,举个例子,当年shell区有那么个帖子,某公司的一道shell题目,内容很简单,大概就是批量重命名指定文件夹内的文件后缀,很多人回帖提供了写法,那贴我唯一记得的就是版主的一句话,内容大概是“这题目很好,可容易可简单,如果想复杂了,文件名里有特殊字符串比如空格斜杠什么的,处理起来就比较复杂了”,这句话成了我当时觉得必须学python的原因,这话表明了一个shell的核心缺陷,异常和错误处理非常不方便。
shell的优点当然也很多,任意linux上都有,强悍的各种工具的效率比一般人写的代码效率快很多,不过如果python也可以用到话,shell一些优点python一样可以用到。python可以调shell,shell也可以运行脚本获取返回。

四.谈谈Python在自动化运维中的应用。
写个代理agent程序,接受文件,接受命令码、复杂的json来做对应操作比直接走ssh之类的通道方便太多了,正确/错误返回也可以定义得清晰明了。
在有复杂操作的情况下,有客户端能让工作更加方便快捷,自定义各种返回也能让出错几率少很多。其实这也是zabbix这样带agent的监控工具比cacti之类更优秀的原因。

五.给出一个你自己写的Python脚本(最好有详细注释)。
马勒隔壁的,贴个代码还JJYY不给带url,不贴了

论坛徽章:
32
处女座
日期:2013-11-20 23:41:20双子座
日期:2014-06-11 17:20:43戌狗
日期:2014-06-16 11:05:00处女座
日期:2014-07-22 17:30:47狮子座
日期:2014-07-28 15:38:17金牛座
日期:2014-08-05 16:34:01亥猪
日期:2014-08-18 13:34:25白羊座
日期:2014-09-02 15:03:55金牛座
日期:2014-11-10 10:23:58处女座
日期:2014-12-02 09:17:52程序设计版块每日发帖之星
日期:2015-06-16 22:20:002015亚冠之塔什干火车头
日期:2015-06-20 23:28:22
69 [报告]
发表于 2014-11-27 11:58 |只看该作者
回复 68# lolizeppelin

稍安勿躁~{:3_193:}
   

论坛徽章:
0
70 [报告]
发表于 2014-11-27 13:56 |只看该作者
很好的分享!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP