微前端架构如何改变企业的开发模式与效率提升
904
2022-10-21
基于Redis与Paramiko的系统监控运维程序
Controller
这是我在去年学习Paramiko和Redis时开发的系统监控与运维程序:
基于Redis pub/sub通信: 1、服务端中定义监控配置模板(包括系统监控指标、监控主机组等)并写入Redis; 2、客户端从Redis中获取模板并根据模板调用插件获取系统监控数据,计算并整理后发布到Redis; 3、服务端订阅(客户端的发布频道)获取监控数据; 4、目前支持Linux下CPU、内存、网卡的监控(系统异常自动处理有待实现);基于SSH2协议连接的远程控制(paramiko): 1、支持多线程文件分发和命令批量执行; 2、记录历史操作日志。
开发环境
环境 | 版本 |
---|---|
操作系统 | Ubuntu 14.04 |
数据库 | Redis 3.0.6 |
开发语言 | Python 2.7.4 |
IDE | PyCharm 2017.1 x64 |
使用方法
1、安装Redis及python redis模块,以Ubuntu为例:
sudo apt-get install redis-serversudo pip install redis
2、修改配置文件(一般为/etc/redis/redis.conf):
bind 0.0.0.0
3、启动Redis:
service redis start
4、安装paramiko模块:
sudo pip install paramiko
5、系统监控:
服务端:
python Server/bin/manage.py monitor
客户端:
python Client/bin/manage.py
6、系统运维:
服务端:
python Server/bin/manage.py operate
运行效果
注意事项
1、启用系统监控时必须先启动服务端(把监控模板写入Redis)才能启动客户端,否则客户端获取不到监控指标会报错。 2、实现客户端CPU的监控使用sar命令,需要先安装sysstat包:
sudo apt-get install sysstat
3、服务端指定监控指标可修改Server/conf/service.py文件;指定监控组和集群可修改Server/conf/settings.py。 4、客户端启动程序务必在Client/conf/settings.py指定本机ip。 5、由于默认以root用户登录,远程执行命令时默认为客户端root用户的根目录。 6、重新启动程序时出现获取监控数据异常的情况,可以尝试清空redis数据再重新启动服务端程序:
redis-cli127.0.0.1:6379> flushall
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~