导读
透过对服务器CPU状态的监控,并实时发送服务器状态数据及图片来及时发现服务器异常,并在必要时解除威胁。
上篇大致说到了Linux系统的一些基础安全设定,和路由器的简单设置,虽然看似简单,却是性价比最高的部分。如果说服务器承载了很多敏感或者重要数据(这个我是非常反对的,重要数据应该保存在专业的云端服务器,比如Dropbox,Onedrive等),那么就应该考虑部署高防服务器,比如阿里云盾等等。
本篇侧重于服务器一旦出现异常,如何及时发现,并在必要时采取行动。同时也可以发现是否有程序崩溃或过载等情况。

简单的真相

回归到计算机的本质,计算机的算力运行主要依靠CPU,所以实时监测CPU的使用率,无疑是有效发现计算机是否有额外程序在运行的最佳切入点,当计算机出现异常,比如被入侵,被攻击,或者程序运行陷入死循环等等都会导致CPU使用率的大幅提升。因此透过对服务器CPU状态的监控,并实时发送服务器状态数据及图片来及时发现服务器异常。

配置HA

在HA的传感器(sensor)模组中,提供了监测cpu和内容使用率等的平台,如下:(添加至configuration.yaml中)

sensor:- platform: systemonitorresources:- type: disk_use_percent- type: memory_use_percent- type: processor_use- type: last_boot

本身还支持很多其他命令,不过我觉得这四个已经够用了。由上到下依次是:硬盘使用率,内存使用率,CPU使用率和最后一次重启时间。这里没有使用网络用量监测,主要是考虑很多时候网络流量的变化并不能很准确的检测出系统异常,加上后期会为大家介绍的远程监测其他电脑(比如小朋友是不是把自己关屋里偷偷玩游戏)等用途时,网络流量的变化起伏还是比较大的。

管理页面元素

既然有了这些数据,那么添加到管理界面来显示相关信息 也是一个不错的体验。

我采用了bar-card的自定义卡片来显示。如果是最简单的方式,可以使用系统自带的History Graph卡片:

用哪个就看各位的界面怎么设计了。

异常及时推送

总算到了正题,Node-RED神奇再次登场,为什么这么喜欢Node-RED,因为它是真神器。。。
抛砖引玉,我自己只设置了cpu使用率高的时候推送通知报警,并截取服务器屏幕发送至手机。各位可以任意发挥。

里面有几处需要各位自行修改为自己的内容,已做了标示,几个时间Delay也可以自行设定,我设定的是如果cpu使用超过10%,且持续了10分钟就推送警告,另外还需要在homeassistant文件夹的WWW文件夹下自建images文件夹,用来存放图片。采用了IFTTT+LINE接收警告,后续会详细介绍如何设置LINE以及如何推送到微信。

在扩展方面,可以设定自动重新启动,自动杀进程等等,各位见仁见智,如有代码或命令方面的需要,敬请关注并留言。这部分还同时使用了VNC服务和vncsnapshot,vnc可以直接启用服务器自带,vncsnapshot是开源免费程序,下载地址在这里:http://vncsnapshot.sourceforge.net/附上Node-RED代码:链接: https://pan.baidu.com/s/1xWk3Ajm8CxC6YwOP_vp9bA 提取码: 71bg下载二维码:

预告:透过IFTTT和LINE接收所有推送通知

监控程序崩溃重启_第十四章 Homeassistant服务器安全及状态监控(下)相关推荐

  1. 系统架构师学习笔记_第十四章_连载

    第十四章  基于ODP的架构师实践 14.1  基于ODP的架构开发过程 系统架构 反映了功能在系统系统构件中的 分布.基础设施相关技术.架构设计模式 等,它包含了架构的 原则 和 方法.构件关系 与 ...

  2. 复频域求零输入响应_第十四章 动态电路的复频域分析 习题答案

    第十四章 动态电路的复频域分析 一.选择题 1. 图13-1所示电感元件的电压.电流关系的运算形式是 B . A .)0()()(-+=L L L Li s sLI s U : B .)0()()(- ...

  3. 高项_第十四章信息文档管理与配置管理

    第十四章信息文档管理与配置管理 软件文档分为三类 若管理文档中的3标注了开发文档,则属于开发文档里 若没有开发两字,则属于管理文档中 文档质量的四个等级 配置管理 什么是配置管理(了解) 配置管理的6 ...

  4. 利用python进行数据分析(第二版)_第十四章

    本书正文的最后一章,我们来看一些真实世界的数据集.对于每个数据集,我们会用之前介绍的方法,从原始数据中提取有意义的内容.展示的方法适用于其它数据集,也包括你的.本章包含了一些各种各样的案例数据集,可以 ...

  5. 我的学习之路_第十四章_反射

    类的反射 [获取class文件对象的三种方式]: ● 使用Object类中的方法 getClass() Class<?> getClass() 返回此Object的运行时类. ● 使用类名 ...

  6. 第十四章_超参数调整

    文章目录 14.1 写在前面 14.2 超参数概述 14.2.1 什么是超参数,参数和超参数的区别 14.2.2 神经网络中包含哪些超参数 14.2.3 模型优化寻找最优解和正则项之间的关系 14.2 ...

  7. fpga驱动rgb液晶屏_正点原子开拓者FPGA开发板资料连载第五十四章基于的数字识别实验...

    1)实验平台:正点原子开拓者FPGA 开发板 2)摘自<开拓者FPGA开发指南>关注官方微信号公众号,获取更多资料:正点原子 3)全套实验源码+手册+视频下载地址:http://www.o ...

  8. 第二十四章 并发编程

    第二十四章 并发编程 爱丽丝:"但是我不想进入疯狂的人群中" 猫咪:"oh,你无能为力,我们都疯了,我疯了,你也疯了" 爱丽丝:"你怎么知道我疯了&q ...

  9. 鸟哥的Linux私房菜(服务器)- 第十四章、账号控管: NIS 服务器

    第十四章.账号控管: NIS 服务器 最近更新日期:2011/07/28 有没有想过,如果我有十部 Linux 主机,这十部主机仅负责不同的功能,事实上,所有的主机账号与对应的密码都相同! 那么我是将 ...

最新文章

  1. 图像生成之扩散模型:靠加入类别条件,效果直达SOTA
  2. LR11之web_reg_find文本检查点的使用
  3. cnn中关于平均池化和最大池化的理解
  4. WSDM Cup 2020 引用意图识别赛道冠军解决方案(附答辩视频、PPT和代码)
  5. 基于JavaFX的SimpleDateFormat演示程序
  6. 资深技术专家崮德在阿里管理研发团队的实践和思考
  7. 微软SQL Server 2012新特性Silverlight报表客户端 - Power View
  8. springboot学习笔记-3 整合redismongodb
  9. 卡西欧计算机能开根号吗,考研计算器怎么开根号
  10. Java jna 中控考勤机_中控考勤机开发 jacob 实现监听
  11. 【图解CDD】利用CANdelaStudio编辑诊断描述CDD文件带你入门到精通
  12. 数据可视化-Tableau-网店运营可视化分析
  13. 《C语言及程序设计》实践参考——回文、素数
  14. 读书笔记 | 资本的秘密
  15. 类名.claa 的含义
  16. CompletableFuture学习
  17. CSP初赛基础知识整理
  18. pycharm注册码,之前的已经过期
  19. 手写vue的v-if和v-show
  20. Spring Cloud第二季--Spring Cloud Bus

热门文章

  1. python2/3 中删除字典中value为空的键值对方法
  2. Python爬虫数据分析三剑客:Numpy、pandas、Matplotlib
  3. 计算机专业毕业生管理制度,管理制度建设
  4. android 动态让控件超出屏幕_android 动态设置屏幕控件宽高度
  5. python如何读取一个文件夹下的多个文件(夹)?
  6. 公交线路 思维,分支(女赛)
  7. html判断是否有某个元素,jquery怎么判断元素是否存在?
  8. php 安装rabbitmq拓展_安装 php-rabbit: RabbitMQ 的 PHP 扩展
  9. pmp知识点详解-项目大牛整理_PMP核心知识点第六章:项目进度管理(3)
  10. split函数python 未定义_Python之Split函数