admin 管理员组

文章数量: 1086019


2024年2月26日发(作者:百度站长改版工具)

运维管理系统方案

概述

伴随着企事业网络规模的不断扩大,企事业服务器的增多,企事业管理的信息化,企事业网络管理也变的越来越重要。一旦网络、服务器、数据库、各种应用出现问题,常常会给企事业造成很大的损失。怎样能7x24小时检测网络系统的运行情况,避免各种故障的发生,改进传统的网络管理方式来适企事业信息化发展的需要?

因此,运维管理系统就有他的必要性。一个完备的运维管理系统能够提供7x24小时检测网络、服务器、数据库、各种应用系统,及时发现将要出现的问题,并通过短信、Email、声音报告给运维管理人员。运维管理人员就可以及时排除故障,避免造成重大损失。

运维管理系统的功能:

故障发现与警报;

记录日常运维日志信息;

服务器故障统计;

服务器软硬件信息统计;

服务进程管理;

将数据信息存储到数据库,并使用图形方式直观的展示出来;

权限、密码管理;

将数据生成报表。

运维管理系统的特点:

邮件和短信实时故障报警;

B/S结构,能够通过web对远程服务器下达指令;

监控服务器和被监控服务器之间通过python socket来发送信息;

统计日常故障处理,以便下次出现同样故障时能够更快的解决问题;

实现自动化管理和自动化监控;

安全管理服务器性能;

操作流程统计与管理。

系统结构

运维管理系统采用B/S构架,运维管理人员随时随地可以对服务器进行管理、配置及故障处理。它是将部署在同一个局域网内的所有服务器统一管理,服务器之间的信息通讯、指令发送、运维管理都通过python来实现。监控服务器端负责采集、统计和分析数据,在数据出现异常时发送报警信息到管理员的email、手机中,并将错误日志存储到数据库中。

运维管理系统主要通过LAMP服务器、python编程、snmp和shell编程来实现。在被监控端安装python服务,并在被监控服务器上部署python程序和shell脚本用于接受监控服务器端指令、信息采集并发送会监控服务器端。监控服务器端部署python程序和LAMP服务器,用于发送指令、接受数据信息、存储数据、统计数据以及异常报警。

运维管理人员日常通过web浏览器远程登录监控管理系统,检测各被监控服务器的运行状态、服务状态、防火墙配置、进程信息、操作日志等信息。在出现异常时,通过运维系统可以查看到具体的异常服务器、进程等信息,并根据这些信息来处理异常。

服务器状态信息界面

运维管理系统具备后台管理功能,针对不同的用户设置不同的权限,通过后台管理可以添加删除被监控主机、修改用户权限。

操作日志

运维监控系统具备远程控制功能,通过远程重启业务、检查业务状态、查看关键服务的配置文件、获取服务器状态信息、查看服务日志、执行备份、添加删除定时计划任务、添加删除开机机启动业务、在线业务数据统计。并且可以实现在线业务版本更新,批量业务处理。

服务管理

运维监控系统设备监控主要还是采用snmp,结合nagios与运维管理平台整合。

功能模块

运维管理系统根据不同的需求和智能划分为以下几个模块:

智能管理模块

智能管理通过程序远程查看被监控服务器实时信息,对服务器进行在线管理,对一些业务执行在线操作,并记录下远程操作日志。减少远程登录服务器操作,减少故障风险。同时将服务信息储存在数据库中,便于形成报表,为企业运维累计宝贵的运维经验。智能管理主要包括:

用户管理:指远程服务器的用户添加、删除,监控管理系统的用户添加、删除;

密码管理:指远程服务器的用户密码更新(或动态密码),监控管理系统的用户密码更新;

权限管理:指远程服务器用户权限分配,监控管理系统权限分配;

服务器信息管理:记录服务器的cpu、内存、硬盘、网卡等硬件信息,业务信息,在线时间;

服务管理:对服务器中运行的进程、业务惊醒管理;

业务数据统计:在线业务数据统计,如:注册、登录、充值、消费等信息;

系统操作管理:记录用户登录系统操作的日志;

运维日志管理:将出现的故障原因和解决方法以运维日志的形式保存下来;

服务器日志管理:通过远程查看系统日志信息,并实现系统日志保存到监控服务器端。

智能监控模块

智能监控是在原cacti监控的基础上将nagois、cacti和运维管理系统整合,实现同一平台下的监控

管理。并对一些特定的需求进行定制,使监控系统能够更加高效、准确、及时的发现和报告故障信息,提升故障处理质量。智能监控主要包括:

服务器网络:对服务器的网络状态、网络流量进行监控;

服务器硬件:对服务器的硬盘、cpu、内存进行检测;

服务进程:对服务器上的关键服务进行监控,并对进程的的总数进行监控;

系统性能:对服务的负载进行监控;

业务状态:对在线的业务进行检测,如端口、web页面检测。

安全管理模块

安全管理是通过运维管理系统执行需要执行的操作可以减少不必要的误操作,如删除不该删除的文件导致业务、系统不能正常工作。对服务器设置一些规则,当服务器出现异常时能够预警。安全管理主要包括三大块:

❖ 应用安全:指系统关键进程和业务服务;

❖ 系统安全:指远程登录、帐号密码管理、服务器的端口状况;

❖ 网络安全:指服务器连接数、流量信息等。

流程管理模块

规范的流程可以提高工作效率,流程管理可以累积工作经验。许多故障并不是因为程序本身和被入侵导致的,常常由于疏忽而导致遗漏了一些重要的信息,因此按照流程操作可以减少故障出现的频率,并且随着时间的累计流程就成为一种良好的习惯。流程管理是一个企业规范的体现,并且为运维累积经验。主要功能包括:

服务器部署:指新服务器上架和业务部署;

新业务部署:新增在线业务部署;

版本发布:指在线业务版本更新;

定时执行:添加、删除一些定时执行的功能;

数据备份:手动执行和定时执行在线业务系统、数据库的备份。

技术简介

运维管理系统使用的开发语言为:php、python和linux shell。Php用于实现数据展示、数据存储、获取指令;python soclet编程实现监控主机与远程服务器之间的数据通讯、数据加密、发送报警和web页面检测;shell脚本负责执行监控端发送过来的指令,并将执行结果返还给python程序。以下流程展示了从指令下达到获取执行结果,并将结果展示到web页面的一个过程。

主机之间的通讯通过python socket编程来实现,在下达指令时能够实时获取所需要的结果,对于一些关键性服务报警也可以采取这种模式来实现。同时对服务器之间传递的信息进行自定义加密,提高安全性。监控服务服务方面将加入nagios,结合cacti和nagois的优点,将监控系统与运维系统整合到一个统一的平台。监控系统的数据主要还是采用snmp来采集数据,图形展示方面需要根据实际情况进行调整。支持远程查看服务器日志功能,加入运维日志管理功能,类似于谷歌日历,将每天的运维操作日志记录到日历中,并具有备忘提醒功能。

安全管理主要是减少外网远程登录服务器带来的风险,所有的外网服务器的远程登录将通过运维管理服务器来做跳转,业务服务器只接受内网服务器的远程接入。服务器密码方面实现动态密码管理,根据各个服务器的实际状况和一些参数生成动态密码。修改防火墙配置,对于外网非必需端口一律关闭。将日常运维日志、服务器部署、业务部署、故障发现及处理通过web记录数据库中。

SSH远程登录

流程管理类似于BBS发帖功能,将经常涉及到的版本更新、服务器部署、业务部署以文档的形式存储到运维平台中。新版本发布采用流程图的形式,详细标注发布的具体步骤和发布的进程,发布完毕可以保存本次发布的具体流程信息。

新版本发布流程定义:由开发在运维平台中提交发布申请,测试人员根据发布申请对内网环境进行测试。测试完毕以后在运维平台中提交测试结果报告,并有系统自动发送测试结果邮件,运维人员根据邮件结果将新版本发布到预发布服务器并发送预发布服务器发布完毕邮件。测试人员根据邮件对预发布环境进行测试,测试完毕再次在运维系统提交测试报告,运维人员根据测试结果将业务发布到正式业务系统中。


本文标签: 服务器 监控 运维 管理 业务