如何利用自动发现将现网的进程纳入到监控系统中?

进程监控是一项关键任务,旨在监测系统中运行的进程的性能和状态。通过有效的进程监控,可以实时了解进程的运行情况,及时发现问题并采取措施,确保系统的稳定性和性能。

本期EasyOps产品使用最佳实践,我们将为您揭晓:

    1. 如何利用自动发现将现网的进程纳入到监控系统中?
    1. 如何对进程配置基本的性能和状态监控?

「 需 求 背 景 」

众所周知,进程作为承载服务的运行载体,它的运行状态关系着服务,甚至整个系统平台的正常运行。因此,针对进程本身的监控是非常基础和关键的。

在针对进程级别的监控,我们可能关注以下指标:

并且,我们通过dashboard可以直观展示上述指标的趋势:

「 进 程 采 集 配 置 」

针对进程的监控,我们一般分为两种指标类型:性能监控和状态监控。

  • 性能监控:顾名思义,是监控进程的运行性能的,监控数据一般是时间序列数据,拥有鲜明的趋势变化的特点,一般指进程的CPU,内存,文件描述符等指标;
  • 状态监控:指进程的运行健康状态,运行/停止。

针对不同类型的监控,我们需要配置不同的采集策略。

在配置采集策略之前,我们需要先配置进程的资源自动发现策略,以将现网的进程纳入到CMDB中。这是监控进程的基础和前提。

>> 通用部署实例自动发现

在优维EasyOps平台中,通常把进程称作【部署实例】,以更加形象地表示进程的运行特征。进程就是部署在操作系统上的一个实例,为了符合EasyOps平台的描述语境,下文中使用【部署实例】来指代进程。

首先,我们需要配置部署实例的发现策略,在资源自动发现中,配置【通用部署实例】的自动发现策略,扫描范围填写普通服务,通用部署实例和HTTP服务,也可以选择如Nginx部署实例,tomcat部署实例等类型,此时会把部署实例以及其承载的服务一并发现上来,并建立关联关系。而后,选择要发现进程的端口范围和主机即可。

点击立即发现后,即可发现现网的部署实例。

「 配 置 性 能 采 集 任 务

新建采集任务,选择部署实例监控套件,这个套件会关联到【部署实例ARTIFACT_INST@ONEMODEL】这个模型中,该模型作为各种类型部署实例的父模型,可覆盖多种部署实例类型。

而后选择目标部署实例的一些特征来过滤出关注的部署实例,比如:

提交即可。

「 配 置 拨 测 采 集 任 务

拨测采集任务主要用于监控进程的存活性状态, 一般是通过拨测服务的端口的方式去实现的。

注意:拨测采集任务需要选定特定资源类型的子模型,此时您可能需要建立多条拨测采集任务来满足需求。比如,针对HTTP服务,则选择【HTTP服务】的模型;针对Kafka服务,则选择【Kakfa服务】模型。

说明:

  • IP包含目标主机,表示监控这些主机上的服务
  • 集群模式包含standalone,并且父服务不为空,表示监控服务上的子服务类型。由于我们的拨测目标需要具体到IP:PORT,因此仅针对子服务拨测。
  • 通过定义变量的方式获取要拨测的IP:PORT,注意选择tcpPing的步骤类型

点击提交即可。

最后通过建立合适的告警规则,即可完成对进程的全面监控,这里不再赘述。

相关推荐
阿巴~阿巴~1 小时前
JsonCpp:C++ JSON处理利器
linux·网络·c++·json·tcp·序列化和反序列化
j***29481 小时前
IPV6公网暴露下的OPENWRT防火墙安全设置(只允许访问局域网中指定服务器指定端口其余拒绝)
服务器·安全·php
ao_lang1 小时前
数据链路层
linux·服务器·网络
z***3352 小时前
【MySQL系列文章】Linux环境下安装部署MySQL
linux·mysql·adb
额呃呃2 小时前
零拷贝I/O的核心概念
服务器·php·apache
执笔论英雄2 小时前
【RL】python协程
java·网络·人工智能·python·设计模式
偶像你挑的噻2 小时前
13-Linux驱动开发-中断子系统
linux·驱动开发·stm32·嵌入式硬件
小兔薯了3 小时前
7. LNMP-wordpress
android·运维·服务器·数据库·nginx·php
福尔摩斯张3 小时前
Linux进程间通信(IPC)机制深度解析与实践指南
linux·运维·服务器·数据结构·c++·算法
Protein_zmm3 小时前
Wireshark实验一:Web 浏览器与服务器的协议报文捕获与分析
服务器·测试工具·wireshark