Python基于telnetlib模块实现交换机全面巡检自动化运维项目

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
实时计算 Flink 版,5000CU*H 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
简介: Python基于telnetlib模块实现交换机全面巡检自动化运维项目

说明:这是一个运维实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取。

image.png

image.png

项目背景

在工作中需要每天定时进行交换机运行状况的巡检,每天都是重复这样的工作,而且每天手动巡检花费很大的时间和精力。说明:这是给一个客户开发的交换机自动化巡检项目。

需求分析

需求一

批量输入交换机IP地址:

设备名

IP

shebei001

ip1

shebei002

ip2

shebei003

ip3

说明:此处IP数量不限制。

依次输入用户名yonghu密码pw123输入命令enable、configdiagnose

先执行 clear statistics emac 0//槽位号 端口号”,然后执行命令display statistics emac 0/槽位号 端口号”,槽位号1-15端口号0-7输出结果中读取Received line code error frames后的数值,例如1槽从0/1 0执行到0/1 7

image.png

当执行结果为Failure: The port of this type does not support this operation或者Failure: This board does not exist时该槽位不采集执行下一槽位每台设备读取两次,两次间隔1分钟,计算前后两次各个端口的差值最后输出差值大于0的端口,输出xls表如下

IP

端口

误码增长

ip1

0/1/0

111

ip2

0/2/3

222

ip3

0/3/1

333

需求二

目标:查每个端口下用户的光衰,统计出光衰最大和最小。  

批量输入交换机IP地址:

设备名

IP

shebei001

ip1

shebei002

ip2

shebei003

ip3

说明:此处IP数量不限制。

依次输入用户名yonghu密码pw123输入命令enable、configdiagnose

执行命令interface epon 0/1 这里0/后面跟槽位,1-15

display ont optical-info 0 all 这条命令,端口是0-7

输出结果 统计OLT Rx ONT power(dBm) 这一列

输出如下:

image.png

需求三

针对需求一和需求二输出的结果进行合并,合并到一个excel文件中。合并规则:以需求一输出的结果为基准,把需求二输出的结果合并到需求一结果中,缺失值用0填充。最终输出结果如下:

image.png

说明:此项目的IP地址均为模拟的IP,非真实IP地址,数据也均为去除敏感信息后的数据。

此项目难点:

1) 解决巡检命令输出结果超出缓冲区的问题,把巡检命令所有的日志都保存下来;

2) 通过正则表达式实现了不同类型交换机各种输出日志格式的判断以及实现了最后统一的输出。


# 本次机器学习项目实战所需的资料,项目资源如下:
 
# 项目说明:
 
# 获取方式一:
 
# 项目实战合集导航:
 
https://docs.qq.com/sheet/DTVd0Y2NNQUlWcmd6?tab=BB08J2
 
# 获取方式二:
 
链接:https://pan.baidu.com/s/1NpueUKv9Vg61BQSVpzcxkg 
提取码:kv12
相关文章
|
1天前
|
机器学习/深度学习 人工智能 运维
智能运维:未来趋势下的自动化与人工智能融合
【8月更文挑战第18天】 在数字化浪潮中,智能运维(AIOps)作为一股不可逆转的力量,正逐步改写传统运维的脚本。本文将探讨AIOps的核心要素、实施路径和面临的挑战,同时分享个人从新手到专家的心路历程,旨在启发读者思考如何在这一领域内持续成长并作出贡献。
11 6
|
1天前
|
Linux 程序员 Python
python-office支持Mac和Linux吗?自动化办公用这个就够了
大家好,我是程序员晚枫。今天解答关于`python-office`是否支持Mac和Linux的问题。起初因需调用Office功能,该项目不完全支持这两个系统。现已通过拆分子项目解决了这一限制,例如`poexcel`可在多平台上运行Excel相关功能。只需简单修改导入语句,如使用`import poexcel`替代`import office`,即可在Mac和Linux上顺利执行。学习或使用中有任何疑问,欢迎留言交流!
|
3天前
|
运维 持续交付 网络安全
自动化运维:Ansible与Terraform的比较
【8月更文挑战第16天】Ansible和Terraform都是自动化运维领域的重要工具,它们各自以其独特的功能和优势在市场中占据了一席之地。在选择使用哪个工具时,用户应根据自己的实际需求和应用场景进行综合考虑。如果主要关注系统配置管理和应用程序部署,那么Ansible可能是一个更好的选择;如果主要关注基础设施的自动化部署和管理,那么Terraform可能更适合您的需求。
|
2天前
|
缓存 监控 网络协议
9条实用的思科Catalyst系列交换机巡检命令!
9条实用的思科Catalyst系列交换机巡检命令!
|
4天前
|
Web App开发 数据采集 测试技术
五分钟轻松掌握 Python 自动化测试 Selenium
本文主要介绍了 Selenium 相关内容,主要涉及 Selenium 知识面,从开始的 Python 小案例,到后面的 API 全面了解,以及 Selenium 的常用功能,到最后的 XPATH 以及爬虫的认知。这些内容已经能够全面,且具有实践性。
|
4天前
|
机器学习/深度学习 人工智能 运维
自动化运维的新篇章:从脚本到智能化管理
在数字化浪潮中,运维领域迎来了前所未有的挑战与机遇。本文将通过一个运维专家的视角,讲述他如何从一个刚毕业的迷茫青年成长为行业内的佼佼者。文章不仅分享技术成长之路,更深入探讨自动化运维的演变历程,以及它如何重塑IT行业的未来。
|
5天前
|
弹性计算 JSON 开发工具
"一键玩转阿里云ECS!Python大神揭秘:如何自动化创建镜像并跨地域复制,让你的云资源部署秒变高效达人!"
【8月更文挑战第14天】本文介绍如何使用Python与阿里云SDK自动化管理ECS镜像,包括创建镜像及跨地域复制,以优化云资源部署。首先安装`aliyun-python-sdk-ecs`并配置阿里云凭证。接着,通过Python脚本实现镜像创建与复制功能,简化日常运维工作并增强灾难恢复能力。注意权限及费用问题。
16 2
|
7天前
|
IDE 测试技术 持续交付
Python自动化测试与单元测试框架:提升代码质量与效率
随着软件行业的发展,代码质量和效率变得至关重要。自动化测试与单元测试是保证质量、提升效率的关键。Python凭借其简洁强大及丰富的测试框架(如Selenium、Appium、pytest和unittest等),成为了实施自动化测试的理想选择。本文将深入探讨这些框架的应用,帮助读者掌握编写高质量测试用例的方法,并通过持续集成等策略提升开发流程的效率与质量。
26 4
|
6天前
|
运维 监控 Devops
构建高效自动化运维体系:DevOps与容器化实践
【7月更文挑战第44天】在现代IT基础设施管理中,自动化运维已成为提升效率、降低成本、确保系统稳定性的关键。本文将探讨如何通过结合DevOps理念和容器化技术来构建一个高效的自动化运维体系。我们将分析这一体系对提高软件交付速度、优化资源利用率以及增强系统可靠性的积极影响,并提供一系列实施策略和最佳实践,帮助企业实现运维自动化转型。
|
10天前
|
运维 Ubuntu 网络安全
Ansible:自动化运维的魔法棒,让复杂工作变得如此简单!
【8月更文挑战第9天】在现代IT运维中,自动化工具不可或缺。Ansible是一款流行的开源工具,以其简洁高效著称。它基于Python,使用YAML编写剧本,通过SSH与远程主机交互,无需安装代理。核心组件包括引擎、剧本、模块等。安装简易,如在Ubuntu上可通过添加PPA后使用`apt-get`命令。通过编写Playbook,如安装并启动Apache2服务的例子所示,可轻松实现自动化任务。Ansible的强大功能和灵活性使其成为提高运维效率的理想选择。
44 6

热门文章

最新文章