python(工具)与自动化运维(目的)

一.为什么进行自动化运维

1.运维早期 : 服务器体量小, 部署步骤少、操作简单、对运维人员要求较低 ( 掌握基本的 Linux 命令即可 ) 。运维人
 
员都是通过手工执行命令管理硬件、软件资源。运维人员需要执行大量的重复性命令来完成日常的运维工作。
 
2.互联网行业飞速发展: 服务器体量大、部署步骤多、操作繁琐、对运维人员要求提高 ( 至少掌握一门编程语言 )
 
3.自动化运维的必要性:
 
1 )手工运维缺点多。 手工操作易发生操作风险且效率低,运维人力成本变高,体量大 (1000+) 的服务器难以人工管理。
 
2 )业务需求的频繁变更。 业务需要快速响应市场的需求,需求变更频率也越来越快,只有 Devops 持续交付实践 ,才
 
能满足频繁变更的业务需求。
 
3 )自动化运维的技术已经成熟。 云计算、大数据等需求刺激着自动化运维的需求,产生大量优秀的自动化运维开源
 
工具 (eg:Ansible Docker ) , 也助力着自动化运维的发展。
 
二.成熟的自动化运维体系:
 
1.支持混合云的配置管理数据库( CMDB )。
 
CMDB 存储与管理企业 IT 架构中设备的各种配置信息,它与所有服务支持 和服务交付流程都紧密相连,支持这些流程的
 
运转、发挥配置信息的价值,同时依赖于相关流程保证数据的准确性。
 
2. 完备的监控和应用性能分析系统。
 
资源监控(如服务器、磁盘、网络)和性能监控(如中间件、数据库)都是较为基础 的监控,开源工具有Zabbix Nagios
 
OpenFalcon (国产)。
 
3.批量运维工具。
 
开源的批量运维工具有 Ansible SaltStack Puppet Chef ,其中 Ansible SaltStack 纯由 Python 编写,代码质量和社区
 
活跃程度都很高,推荐使用。
 
4.日志分析工具。
 
如何快速地从成百上千台服务中采集日志并分析出问题所在呢?日志采集方面工具有 Sentry + 日志分析有ELK ,两者都是
 
开源的。
 
5.  持续集成和版本控制工具
 
持续集成是一种软件实践,团队成员经常集成他们的工作,每次集成都通过自动化的构 建来验证,从而尽早发现集成错
 
误。持续集成的工具Jenkins+ 版本控制是软件 Git
 
6.  漏洞扫描工具。
 
借助商业的漏洞扫描工具扫描漏洞,保护服务器资源不受外界的攻击。
 
三.选择python作为自动化运维工具的必要性:
 
1.大部分的开源运维工具都是由纯Python 编写的,如Celery ansible Paramiko airflow 等,学习Python后可以更加顺畅
 
地使用这些开源工具提供的 API ,可以阅读这些开源工具的源代码,甚至可以修改源代码以满足个性化的运维需求。
 
2.Python与其他语言相比,更加优雅、明确和简单
 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值