自动化运维,你玩转了吗?
【前言】
【初级村包含的内容】
1. Paramiko和Netmiko
两者的使用方式及优劣
2. Python 正则解析
将通过SSH收集回来的各种信息进行正则解析
番外:Text-FSM解析
3. Python SNMP
如何使用Python调用SNMP采集指令,并讲解OID使用方式
4. NetConf
如何通过NetConf对网络设备进行操作
5. Crontab并回调CMDB
如何设置定时执行SSH任务进行定期巡检,并更新回写CMDB
番外:Python Scheduler
6. Flask Web框架
将SSH和NetConf与Web框架相结合,通过API方式或前端调用其执行
【摘要】
在自动化运维领域里面,单从服务器运维的角度来讲,由于可以提前对服务器做系统的定制安装,所以一些大厂会选择在装机时植入特定的Agent,以此实现远程控制服务器的目的。
不过对于大部分的公司,服务器运维或者网络设备运维都仍然依靠远程SSH这一方法,所以我们使用Python作为自动化运维的编程语言的话,就非常需要一个第三方包来实现这一功能,而Paramiko和Netmiko可以说是扛把子的角色。
相信看这个教程的朋友肯定都听过这两个工具包,但可能并不是所有的人都了解这两个包之间的关系。除此之外,网上五花八门的对于用哪个更好的争论也难以分辨。
那么这个章节就先给大家介绍一下这两个包的来龙去脉。
【OpenSSH】
介绍第三方库之前有必要先科普一下关于SSH的知识。
远程操作使用 ssh、 scp和 sftp完成。
使用ssh-add、 ssh-keysign、 ssh-keyscan和 ssh-keygen 进行密钥管理 。
服务端 sshd、 sftp-server和 ssh-agent组成。

【Paramiko/Netmiko简介】
【Paramiko】
源码核心架构图

【Netmiko】
交互流程图

【总结】

yuefeiyu1024
添加作者微信加入专属学习交流群,获取更多干货秘籍
文章转载自python玩转自动化运维,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




