None of these 5 common operation and maintenance monitoring tools? What are you an operator

image

There are thousands of operation and maintenance monitoring tools, and only open source solutions have traffic monitoring (MRTG, Cacti, SmokePing, Graphite, etc.) and performance alarms (Nagios, Zabbix, Zenoss Core, Ganglia, OpenTSDB, etc.) to choose from.

And each kind of software has its own characteristics and functions, and their respective focuses and goals are not exactly the same. They are also similar in design concepts and implementation methods, but they all have common features. For example, data collection, analysis and display, alarms, and simple automatic fault handling. In the end, a complete display of the availability of IT system services can be achieved.

Below we will introduce the characteristics of the five monitoring tools commonly used in the industry (Cacti, Nagios, Zabbix, Grafana, Prometheus) in detail.

1、Cacti

Cacti (meaning cactus in English) is a set of network traffic monitoring graphical analysis tools developed based on PHP, MySQL, SNMP and RRDtool.

image

It obtains data through snmpget and uses RRDtool for drawing, but users do not need to understand the complex parameters of RRDtool. It provides very powerful data and user management functions. It can specify that each user can view the tree structure, host device, and any picture. It can also be combined with LDAP for user authentication, and it can also customize the template. In terms of display monitoring, its function is quite good.

By adding templates, Cacti makes the monitoring of different devices reusable, and has the function of customizable drawing, and has powerful computing capabilities (data superimposition function).

2、Nagios

Nagios is an enterprise-level monitoring system that can monitor the running status of services and network information, and can monitor specified local or remote host parameters and services, as well as provide abnormal alarm notification functions.

Nagios can run on Linux and UNIX platforms, and provides an optional browser-based Web interface to facilitate system administrators to view network status, various system problems, and logs. The function of Nagios focuses on the availability of monitoring services and can alert in time based on trigger conditions.

At present, Nagios has also occupied a certain market share, but from observations, Nagios has not kept pace with the times and can no longer meet the changing monitoring needs. The scalability and ease of use of the architecture need to be enhanced, and its advanced features Integrated in the commercial version of Nagios XI.


Zabbix is ​​a distributed monitoring system that supports multiple collection methods and collection clients. It has a dedicated Agent (agent), and can also support multiple protocols such as SNMP, IPMI, JMX, Telnet, and SSH. It stores the collected data To the database, and then analyze and sort it, and trigger an alarm when the conditions are met.

Zabbix has good scalability, and its functions are very rich, you can monitor CPU load, memory usage, disk usage, network status, port monitoring, log monitoring, etc.

However, due to the high consumption of resources, if there are too many hosts to be monitored, phenomena such as monitoring timeout and alarm timeout may occur.

4、Prometheus

As a data monitoring solution, Prometheus is supported by a large community with 6,300 contributors from more than 700 companies, 13,500 code submissions and 7,200 pull requests.

image

Prometheus has the following characteristics:

  • Multi-dimensional data model (Key and Value key-value pairs based on time series)
  • Flexible query and aggregation language PromQL
  • Provide local storage and distributed storage
  • Collect time series data through HTTP-based Pull model
  • Pushgateway (optional middleware for Prometheus) can be used to implement Push mode
  • The target machine can be discovered through dynamic service discovery or static configuration
  • Support a variety of charts and data market

 

5 、 Grafana


Grafana is an open source application written in go language, mainly used for the visualization of large-scale indicator data.

Grafana supports many different data sources. Each data source has a specific query editor, and the customized features and functions of the editor are public specific data sources. The following data sources are officially supported: Graphite, Elasticsearch, InfluxDB, Prometheus, Cloudwatch, MySQL and OpenTSDB, etc.

The query language and capabilities of each data source are different. You can combine data from multiple data sources into a dashboard, but each panel is bound to a specific data source, and it belongs to a specific organization.

image

At last

The advantages and capabilities of each monitoring tool are different. You can choose suitable monitoring tools according to actual application requirements.

I still want to recommend the Python learning group I built by myself : 705933274 , all of whom are learning Python. If you want to learn or are learning Python, you are welcome to join. Everyone is a software development party and share dry goods from time to time (only Python software development related), including a copy of the latest Python advanced materials and zero-based teaching compiled by myself in 2021. Welcome friends who are in advanced and interested in Python to join!

Guess you like

Origin blog.csdn.net/aaahtml/article/details/114842128