Architecture
Zabbix consists of several major software components. Their responsibilities are outlined below.
//词汇:
outlined:概述(v.)
Server
Zabbix server is the central component to which agents report availability and integrity information and statistics. The server is the central repository in which all configuration, statistical and operational data are stored.
//词汇:
central repository:中央资料库
operational data:运算数据、操作数据
Database storage
All configuration information as well as the data gathered by Zabbix is stored in a database.
Web interface
For an easy access to Zabbix from anywhere and from any platform, the web-based interface is provided. The interface is part of Zabbix server, and usually (but not necessarily) runs on the same physical machine as the one running the server.
//备注:web界面基于PHP开发,可以跟server搭在一起,也可以分开部署。
Proxy
Zabbix proxy can collect performance and availability data on behalf of Zabbix server. A proxy is an optional part of Zabbix deployment; however, it may be very beneficial to distribute the load of a single Zabbix server.
//词汇:
on behalf:代表
Agent
Zabbix agents are deployed on monitoring targets to actively monitor local resources and applications and report the gathered data to Zabbix server. Since Zabbix 4.4, there are two types of agents available: the Zabbix agent (lightweight, supported on many platforms, written in C) and the Zabbix agent 2 (extra-flexible, easily extendable with plugins, written in Go).
//词汇:
actively:主动地(adv.)
Data flow
In addition it is important to take a step back and have a look at the overall data flow within Zabbix. In order to create an item that gathers data you must first create a host. Moving to the other end of the Zabbix spectrum you must first have an item to create a trigger. You must have a trigger to create an action. Thus if you want to receive an alert that your CPU load is too high on Server X you must first create a host entry for Server X followed by an item for monitoring its CPU, then a trigger which activates if the CPU is too high, followed by an action which sends you an email. While that may seem like a lot of steps, with the use of templating it really isn't. However, due to this design it is possible to create a very flexible setup.
//备注:
先得有一台主机,接下来需要有个item去监控这台主机的CPU,且创建一个trigger用于CPU变高时触发警报,还需要创建一个action让zabbix能发送邮件出来。