前言
在公司对于运维人员来说,巡检是日常例行的一件事。刚刚开始服务器少,每次都是手动登录到服务器上做检查。可是服务器一多了,肯定是不能这样干的。因此我们就需要做一些比较自动化的行为。
程序说明
程序是通过使用python实现ssh连接到服务器去实行shell脚本,返回数据,并且生成excel,对不正常指标进行标红处理。
Python要实现ssh连接服务器还需要其他模块。
软件/模块 | 版本 | 其他 |
python | 2.7.9 | |
paramiko | 1.15.2 | |
xlwt | 1.0.0 |
本程序在win7 64bit使用是没有问题的(本人用的就是win7 64bit :) )
这边为了方便我提供了两个版本:
- python源码版:daily_check_py.zip
- 由于有些人在机器上没有安装python,所以这里我提供了一个将python转化为exe的版本。只要点击exe执行文件就能执行相关程序了:daily_check_exe.zip
程序流程
程序结构与程序说明
此程序由主程序、主机信息文件、命令文件三个文件组成。
执行了daily_check.py生成了xunjian.txt文件,我们需要将文件的内容都拷贝到一个excel文件中查看。并标出相关的预警的信息。如下:
上图显示了5列:
- 项目:检查了什么。
- 命令:检查使用的命令。
- 基线:比对的标准。
- 巡检情况:检查出来的信息。
- 主机:是在那台主机上检查的。
相关文件解释
这边就不说主程序文件了,有兴趣的可以自己去看。当然欢迎大家给出相关意见。
- *.cmd文件
此文件存放了巡检需要执行的命令、校验标准和命令是检查什么项目的,如下图:
以上文件的每一行分为3个部分:
- 校验项目。
- 校验shell命令。
- 校验标准:校验标准指定一个操作符号(>、<、=),具体用途例如:<85% 如果检查出来的结果 >85%就超标了。
以上三个部分是使用 “#” 分割(注意:请在命令中避免使用 “#”,以免出现程序分割错误)。
host.info文件
此文件中存放了需要巡检的主机的IP和用户名信息,它们使用空格分开,如果有不需要巡检的主机可以在里面使用 (#) 在注释,和shell脚本的注释是一样的。如图:
如果有行的服务器需要巡检,需要添加相关 主机 信息到此文件中。
执行巡检
- python程序巡检
- 需要接入生产环境,确保能使用相关用户访问相关服务器。
- 解压zip 文件。
- 运行py执行日常巡检。
- 查看生成的excel表,看是否有红色标注的异常(一般在swap上有小的使用可以不管)。
- 查看log,获得相关的日志信息。
- exe程序巡检
- 1、需要接入生产环境,确保能使用相关用户访问相关服务器。
- 2、解压zip。
- 进入到dist文件夹。
- 找到exe执行巡检。(注意执行完巡检相关的巡检excel和check.log存储在dist文件夹中。)
- 查看生成的excel表,看是否有红色标注的异常(一般在swap上有小的使用可以不管)。
- 查看log,获得相关的日志信息。
注意:exe巡检的*.cmd和host.info文件存放在dist/host文件夹中。
reference:
http://www.ttlsa.com/python/python-daily-check/
相关推荐
6. **脚本名为`daily_check_py`**:这个文件名暗示了这是一个每天都会运行的检查脚本,很可能是一个Python源代码文件,包含上述的所有功能逻辑。 综合以上信息,我们可以推断这个脚本是一个强大的运维工具,它自动...
2、部署2.1、创建目录待巡检机器上创建目录:mkdir -p /tmp/daily_check/logmkdir -p /tmp/daily_check/tmp管理机创建目录:E:\daily_check这里的管理机用的是 windows,可以以换成 Linux 的。2.2 安装必要的第三方...
毕业论文-叮当活动报名V1.0.0 开源版-整站商业源码.zip
c#随机输出14个字符串代码.zip
内容概要:文章主要探讨了批量工件并行切割下料的问题,重点在于优化切割方案以提高板材利用率、减少切割时间和降低能耗。文中详细介绍了切割机的工作原理及其运动方式,以及对不同尺寸板材(A: 8000*3000、B: 6000*2000、C: 7000*2500)的切割要求。提出了五个任务:一是不考虑约束条件下,为三种板材设计切割排版方案以最大化板材利用率;二是基于四把切割刀具,规划最短时间完成切割的协同运行方案;三是根据附件2提供的工件型号分布,确定切割这批工件所需的板材数量和排版方案,以最大化板材利用率;四是使用八把切割刀具,在保证板材利用率不低于之前方案95%的前提下,最小化切割时间;五是综合考虑板材、设备时间和能量的成本,利用最多十把切割刀具,最小化总成本。;
**描述:“适用于JDK8的环境”** 本文将深入探讨Neo4j社区版3.5.6版本,这是一个基于图数据库的强大工具,特别适用于知识图谱构建和可视化。由于其运行需求,必须在Java Development Kit(JDK)8的环境下进行安装和操作。 **一、Neo4j概述** Neo4j是一款开源的图形数据库,它以节点、关系和属性的形式存储数据,这使得处理复杂网络结构的数据变得更为直观和高效。Neo4j社区版是免费的,适合开发和学习用途,而企业版则提供了更多的高级功能和服务。 **二、JDK8要求** 为了运行Neo4j 3.5.6,你需要在你的计算机上安装JDK8。JDK是Java开发工具包,包含了运行Java应用程序所需的Java虚拟机(JVM)以及一系列开发工具。确保安装的是与Neo4j版本兼容的JDK版本至关重要,因为不兼容的JDK可能会导致运行错误或性能问题。 **三、安装和配置** 1. **下载与解压**: 从官方渠道下载"neo4j-community-3.5.6.zip"压缩文件,并将其解压到你选择的目录。 2. **环境变量配置**: 配置系统环境变量,将Neo4j的bin目录添加到PATH环境变量中,以便于命令行启动和管理数据库。 3. **修改配置文件**: Neo4j的配置主要通过`conf/neo4j.conf`文件进行,如需更改默认设置,如内存分配、端口设置等,应在此文件中进行修改。 4. **启动和停止**: 使用`neo4j console`命令启动服务,`neo4j stop`命令关闭服务。 **四、知识图谱与可视化** Neo4j因其强大的图数据模型,成为构建知识图谱的理想选择。你可以使用Cypher查询语言来操作和查询图数据,它的语法简洁且直观,易于学习。 1. **Cypher语言**: Cypher是一种声明式、图形化
flatbuffers/////
AGV技术详解.pdf
内容概要:本文介绍了Protozoa,一种基于WebRTC的多媒体隐蔽传输工具,旨在帮助用户绕过互联网审查。Protozoa利用WebRTC视频通话作为载体,通过修改WebRTC框架中的编码视频帧来嵌入并传输隐蔽数据。它具有高带宽性能(可达1.4Mbps)和强大的流量分析抗性,能够在不被检测的情况下传输任意IP流量。实验表明,Protozoa可以在不同网络条件下保持稳定性能,并成功绕过中国、俄罗斯和印度的国家级审查机制。 适合人群:对网络安全、隐蔽通信技术感兴趣的科研人员和技术专家,以及需要绕过互联网审查访问受限内容的用户。 使用场景及目标:①适用于希望在受限制网络环境中安全、隐蔽地访问互联网资源的技术人员;②研究和测试新型隐蔽通信方法的研究人员;③评估和改进隐蔽通信系统的安全性和性能。 阅读建议:由于涉及复杂的网络协议和技术细节,建议读者具备一定的计算机网络和编程基础。重点关注Protozoa的工作原理、实现方式及其与现有隐蔽通信工具的比较,以便更好地理解和应用这一技术。
毕业论文-发卡-整站商业源码.zip
实训商业源码-智答-更好用的语音问答6.0.4-毕业设计.zip
实训商业源码-免签码支付源码-毕业设计.zip
毕业论文-房产中介小程序8.0.56+开源版-整站商业源码.zip
毕业论文-活动报名小程序-整站商业源码.zip
ANSYS产品资料——Systems and Multiphysics.pdf
毕业论文-KTV小程序V1.6.1+分销1.0.0带前端-整站商业源码.zip
该项目实现了一个多目标优化算法的集成框架,主要用于求解复杂的多目标优化问题(MOPs)。其核心功能包括以下方面: 1. **多目标优化算法集成** 项目整合了三种经典的多目标优化算法: - **NSGA-II**:基于非支配排序和拥挤度距离的遗传算法,适用于全局搜索。 - **MOPSO**:多目标粒子群算法,通过粒子群协同搜索和外部存档维护Pareto前沿。 - **NSGAMOPSO**:创新性地结合NSGA-II和MOPSO的双种群协同进化策略,兼顾全局探索与局部开发能力。 2. **测试函数库与问题定义** 提供了47个标准多目标测试函数(如ZDT、DTLZ、UF、WFG系列等)和实际工程问题(如盘式制动器设计),支持2-3目标优化,并内置真实Pareto前沿数据用于性能验证。 3. **性能评估指标** 实现了四种评价指标: - **IGD**(反向世代距离):衡量解集与真实Pareto前沿的接近程度。 - **GD**(世代距离):评估解集的收敛性。 - **HV**(超体积):量化解集的多样性和覆盖范围。 - **Spacing**:反映解集分布的均匀性。 4. **可视化与对比分析** 支持二维/三维Pareto前沿的动态绘图,直观对比不同算法的优化效果,并自动生成指标数据表格(如Excel文件),便于量化分析算法性能。 5. **自适应参数与约束处理** 算法参数(如交叉概率、变异概率)可动态调整,同时通过边界检查和修复机制确保解的可行性。 **应用价值**:该项目为研究者和工程师提供了一个高效、可扩展的多目标优化工具,适用于学术研究、工业设计(如机械优化)等领域,能够快速验证算法性能并解决实际多目标优化问题。
AVEVA数字时代的智造方式.pdf
毕业论文-叮咚同城微圈小程序V11.3.3+前端 开源版-整站商业源码.zip
内容概要:文章详细探讨了基于MATLAB/Simulink的电动汽车预充电路设计,旨在解决电动汽车启动及充电初始阶段电池系统承受瞬态大电流冲击的问题。文章首先分析了电动汽车技术的发展背景及预充电路的重要性,接着介绍了预充电路的工作原理、设计要点及相关的技术标准。文中通过构建预充电路的MATLAB/Simulink仿真模型,对比了不同预充电阻值对电流冲击的影响,并引入PID控制策略优化预充电过程。最终,通过多工况仿真验证了设计方案的工程适用性和有效性。研究结果显示,优化后的预充电路可将冲击电流峰值抑制在安全阈值范围内,电压过渡过程的稳定性提升35%以上。 适合人群:具备一定电力电子和控制理论基础的电气工程师、从事电动汽车研发的技术人员、高校相关专业的研究生及科研人员。 使用场景及目标:①研究电动汽车预充电路的动态特性及关键参数优化;②设计智能控制策略以提升充电系统的安全性与效率;③验证预充电路在不同工况下的性能表现,为实际应用提供技术支持。 其他说明:本文不仅提供了详细的理论分析和仿真模型构建方法,还展示了仿真实验的具体步骤和结果,强调了预充电路设计对电动汽车整体性能和安全性的关键作用。研究成果不仅适用于锂离子电池预充场景,其多变量控制思路亦可扩展至钠离子电池、固态电池等新型储能系统的充放电管理领域。