在运维技术还不成熟的早期,都是通过手工执行命令管理硬件、软件资源,但是随着技术的成熟以及软硬件资源的增多,运维人员需要执行大量的重复性命令来完成日常的运维工作。而自动化运维就是将这些原本大量重复性的日常工作自动化,让工具或系统代替人工来自动完成具体的运维工作,解放生产力,提高效率,降低运维成本。可以说自动化运维是当下IT运维工作的必经之路。
自动化运维之所以势在必行,原因有以下几点:
(1)手工运维缺点多。传统的手工执行命令管理软硬件资源容易发生操作风险,只要是手工操作,难免会有失误,一旦执行错误的命令,后果可能是灾难性的。当软硬件资源增多时,手工配置效率低,增加运维人员的数量也会导致人力成本高。
(2)传统人工运维难以管理大量的软硬件资源。试想当机器数目增长到1000台以上的时候,依靠人力来维护几乎是非常困难的事情。
(3)业务需求的频繁变更。现在的市场瞬息万变,业务唯有快速响应市场需求才能持续发展,对工具的需求和变更更会是越来越多,频率也越来越快,程序升级、上线、变更都是需要运维条线来支撑的。同样的,只有借力自动化运维,使用工具才能满足频繁变更的业务需求。
(4)自动化运维的技术已经成熟。自动化运维被广泛关注的一个重要原因就是自动化运维的技术已经非常成熟了,技术的成熟为自动化运维提供了智力支持。云计算、大数据一方面刺激着自动化运维的需求,另一方面也助力自动化运维。微服务的软件架构、容器等技术都在推动自动化运维。
(5)工具已经到位。关于自动化运维的工具,无论是开源的工具还是企业级的产品,都是应有尽有,实现自动化运维已经势不可挡。
为什么选择Python进行运维
(1)大部分开源运维工具都是纯Python编写的,如Celery、ansible、Paramiko、airflow等,学习Python后可以更加顺畅的使用这些开源工具提供的API,可以阅读这些开源工具的源代码,甚至可以修改源代码以满足个性化的运维需求/
(2)Python与其他语言相比,有着许多优势。简单易学,更接近自然的思维方法,使你能够专注于解决问题而不是语法细节;规范的代码,Python采用强制缩进的方式使得代码具有较好的可读性;Python拥有一个强大的标准库画和丰富的第三方库,拿来即用,无须重复的造轮子。
(3)Python的可移植性高,Linux、UNIX、Windows、Android、MAC OS等一次编写,处处运行;适应效果好,学习一个知识点,能够直接实战;潜移默化,学习Python能够顺利理解并学习其他语言。
Python官方给出了一段Python格言
Beautiful is better than ugly
Explicit is better than implicit
Simple is better than complex
Complex is better than complicated
Flat is better than nested
Sparse is better than dense
Readability counts
Special cases aren’t special enough to break the rules
Although practiaclity beats purity
Errors should never pass silently
Unless explicitly silenced
In the face of ambiguity,refuse the temptation to guess
There should be one-- and preferably only one --bovious way to do it
Although that way may not be obvious at first unless you’re Dutch
Now is better than never
Although never is often better than right now
If the implementation is hard to explain,it’s a bad idea
If the implementation is easy to explain,it may be a good idea
Namespaces are one honking great idea --let’s go more of those
自动化运维与python
最新推荐文章于 2024-07-06 10:00:00 发布