Déploiement CentOS-7 et installation de Zabbix 3.0

Annuaire d'articles

  • But:

  • Déployer Zabbix 3.0

  • Configurer la fonction d'alarme par e-mail, configurer la détection automatique du système d'exploitation et la fonction d'ajout automatique

  • Configurez l'action pour surveiller automatiquement les hôtes découverts et envoyer des alertes par e-mail

  • Configurez l'action pour surveiller automatiquement les hôtes découverts et réaliser l'alarme du robot DingTalk

Déployez et installez Zabbix 3.0 :

  • Configurer la "résolution du nom d'hôte et des hôtes"

HOSTNAME=zabbix
hostnamectl set-hostname "$HOSTNAME"
echo "$HOSTNAME">/etc/hostname
echo "$(grep -E '127|::1' /etc/hosts)">/etc/hosts
echo "$(ip a|grep "inet "|grep -v 127|awk -F'[ /]' '{print $6}') $HOSTNAME">>/etc/hosts
bash		#触发bash;主机名已改变

insérez la description de l'image ici

  • Installer MySQL (renommé mariadb dans CentOS-7)

yum -y install mariadb-server mariadb

insérez la description de l'image ici

systemctl start mariadb		#启动服务
systemctl enable mariadb	#加入系统服务,开机自启动

insérez la description de l'image ici

cd /usr/local/src/
wget https://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
rpm -ivh /usr/local/src/zabbix-release-3.0-1.el7.noarch.rpm

insérez la description de l'image ici

  • Installez certains packages zabbix qui doivent être utilisés
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent

insérez la description de l'image ici

  • Installez le package logiciel zabbix-get pour faciliter l'obtention d'informations de surveillance en exécutant des commandes ultérieurement
yum install -y zabbix-get-3.0.28-1.el7.x86_64

insérez la description de l'image ici

  • Supplément : (certains noms de packages et utilisations de zabbix) \color{red}{supplément : (certains noms de packages et utilisations de zabbix)}Supplément : ( quelques noms de paquets et utilisations de z a b b i x )
  1. zabbix-server-mysql-3.4.6-1.el7.x86_64 (programme d'installation principal du serveur zabbix)
  2. zabbix-agent-3.4.6-1.el7.x86_64 (programme d'installation principal de l'agent zabbix)
  3. zabbix-web-3.4.6-1.el7.noarch (programme d'installation Web zabbix)
  4. zabbix-get-3.4.6-1.el7.x86_64.rpm (programme d'installation du serveur zabbix, utilisé pour obtenir les données de surveillance)
  5. zabbix-web-mysql-3.4.6-1.el7.noarch.rpm (programme d'installation pour la base de données de connexion Web zabbix)
  6. zabbix-release-3.4.2-1.el7.noarch.rpm (générer le fichier de configuration source zabbix yum)
  7. zabbix-sender-3.4.6-1.el7.x86_64.rpm (programme d'installation de l'agent zabbix, utilisé pour envoyer des données de surveillance)

Concentrez-vous ensuite sur les deux packages suivants (zabbix-get et zabbix-sender) :

  • zabbix-get (installé côté serveur)
  • zabbix-sender (installé côté agent)
  • zabbix-get est installé côté serveur zabbix, utilisé pour communiquer avec le côté agent zabbix et utilisé pour extraire activement des données du côté agent vers le côté serveur ;
  • zabbix-sender est installé du côté de l'agent zabbix, utilisé pour communiquer avec le côté serveur zabbix et utilisé pour pousser activement les données du côté agent vers le côté serveur.
rpm -qa |grep zabbix	#查看已经安装的Zabbix程序包

insérez la description de l'image ici

MySQL construit la base de données, importe la bibliothèque et la table zabbix

mysql
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
flush privileges;
quit;
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -pzabbix zabbix		# 导入数据库脚本,生成数据库环境并授权
  • Commande Zcat :
    "Zcat" est un utilitaire de ligne de commande permettant d'afficher le contenu des fichiers compressés sans les décompresser. Il développe le fichier compressé en sortie standard, vous permettant de visualiser son contenu. De plus, zcat a exactement le même résultat que l'exécution de la commande gunzip -c.
    insérez la description de l'image ici

Modifiez le fichier de configuration principal de Zabix pour démarrer

#将DBPassword复制一行进行修改
sed -i 's/# DBPassword=.*/&\nDBPassword=zabbix/g' /etc/zabbix/zabbix_server.conf
#为Zabbix前端配置PHP,更改时区
sed -i 's|# \(php_value date.timezone\) Europe/Riga|\1 Asia/Shanghai|g' /etc/httpd/conf.d/zabbix.conf
#重启服务
systemctl restart zabbix-server zabbix-agent httpd
#加入系统服务,开机自启动
systemctl enable zabbix-server zabbix-agent httpd

insérez la description de l'image ici

  • Accès à la page Web : http://192.168.137.235/zabbix
    insérez la description de l'image ici
  • Ici, vous pouvez voir que la valeur de la date du fuseau horaire que nous avons modifiée ci-dessus a pris effet
    insérez la description de l'image ici
  • Renseignez le Mot de passe de la base de données : zabbix
    insérez la description de l'image ici
  • Répertorier les détails des services Zabbix, l'étape suivante par défaut
    insérez la description de l'image ici
  • Résumé avant l'installation, étape suivante par défaut
    insérez la description de l'image ici
  • Une fois l'installation terminée, cliquez sur Terminer pour vous connecter à la page de gestion Web
    insérez la description de l'image ici
  • Nom d'utilisateur et mot de passe par défaut Admin/zabbix
    insérez la description de l'image ici
  • Changez la langue de l'interface en chinois (selon vos préférences personnelles, pas nécessaire)
    insérez la description de l'image ici
  • Passer au chinois (zh_Cn) Chinois, mettre à jour pour confirmer la mise à jour
    insérez la description de l'image ici

Configurer la fonction d'alerte par e-mail :

  • Gestion – ​​Type de média d'alarme – E-mail
    insérez la description de l'image ici

  • Ajout de 163 boîtes aux lettres pour l'envoi d'e-mails d'alarme
    insérez la description de l'image ici

  • Modifier le support d'alarme de l'administrateur (Admin) Admin
    - Utilisateur - Admin

    insérez la description de l'image ici

  • Ajouter un support d'alerte
    insérez la description de l'image ici

  • Selon les besoins, réglez et ajustez vous-même
    insérez la description de l'image ici

  • mettre à jour, ajouter
    insérez la description de l'image ici

Configurez la découverte automatique et testez :

  • Ouvrez une nouvelle machine virtuelle et installez et configurez le client zabbix
# 主机名和hosts解析部署
HOSTNAME=zabbix-test
hostnamectl set-hostname "$HOSTNAME"
echo "$HOSTNAME">/etc/hostname
echo "$(grep -E '127|::1' /etc/hosts)">/etc/hosts
echo "$(ip a|grep "inet "|grep -v 127|awk -F'[ /]' '{print $6}') $HOSTNAME">>/etc/hosts
bash		#触发bash;主机名已改变

insérez la description de l'image ici

# 将 Zabbix 服务端添加到 hosts 解析文件中(方便后面配置文件指向服务端地址)
echo "192.168.137.235 zabbix_server">>/etc/hosts

insérez la description de l'image ici

# 使用官方yum源安装配置Zabbix agent
cd /usr/local/src/
wget https://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
rpm -ivh /usr/local/src/zabbix-release-3.0-1.el6.noarch.rpm

insérez la description de l'image ici

# 安装客户端
yum -y install zabbix-agent

insérez la description de l'image ici

# 修改客户端配置文件 zabbix_agentd.conf
cd /etc/zabbix/
sed -i 's/^Server=127.0.0.1/Server=zabbix_server/g' zabbix_agentd.conf
sed -i 's/^ServerActive=127.0.0.1/ServerActive=zabbix_server:10051/g' zabbix_agentd.conf
sed -i "s/^\(Hostname=\).*/\1$(hostname)/g" zabbix_agentd.conf
# 在当前系统级别开启 zabbix-agent 服务,并启动客户端(便于实现自动发现)
chkconfig zabbix-agent on
/etc/init.d/zabbix-agent start

insérez la description de l'image ici

  • Ajoutez la fonction de découverte automatique à la page Web :
    Configuration – Découverte automatique – Créer des règles de découverte

    insérez la description de l'image ici
  • Ajouter une règle de découverte automatique
    insérez la description de l'image ici
  • statut activé
    insérez la description de l'image ici
  • Détection – découverte automatique
    Vous pouvez voir que le client a été connecté et que la découverte automatique est terminée

    insérez la description de l'image ici
  • Supplément (opération facultative) : − − Créer une action de découverte automatique (action) − − réaliser un ajout automatique ou envoyer une notification par e-mail) \color{red}{Supplément (opération facultative) :-- Créer une action de découverte automatique (action ) - - réaliser un ajout automatique ou envoyer une notification par e-mail)}Supplément ( opération facultative ) : _−Créer une action de découverte automatique ( action ) _ _ _ _Réaliser l'ajout automatique ou envoyer une notification par e-mail )
    • Créez d'abord un groupe d'hôtes pour faciliter l'ajout automatique d'hôtes de découverte au groupe ultérieurement
      insérez la description de l'image ici
    • Configuration - Action - Source d'événement (Découverte automatique) - Créer une action - Envoyer un e-mail de notification après l'ajout automatique de l'hôte
      insérez la description de l'image ici
    • Créer une action de découverte automatique
      Onglet Configurer les actions
      insérez la description de l'image ici
    • Onglet Configurer les conditions
      insérez la description de l'image ici
    • Onglet Configurer les actions – Envoyer un e-mail
      insérez la description de l'image ici
    • Afficher la liste des actions de découverte automatique
      insérez la description de l'image ici
    • Dans l'événement, nous pouvons voir l'événement déclenché par la découverte automatique
      insérez la description de l'image ici
    • Le client recevra un e-mail lorsque la connexion sera déconnectée
      insérez la description de l'image ici

Créez des hôtes et des groupes d'hôtes :

  • Configuration – Hôte – Créer un hôte
    insérez la description de l'image ici
  • Ajoutez le contenu du premier onglet, et les onglets restants ne seront pas définis temporairement
    insérez la description de l'image ici
  • Affichez le groupe d'hôtes, le groupe d'hôtes nouvellement créé a été généré et zabbix-agent a été ajouté à ce groupe d'hôtes
    insérez la description de l'image ici

Configurer les éléments de surveillance (élément) :

insérez la description de l'image ici

  • Créer un nouvel élément de surveillance
    insérez la description de l'image ici
  • Configurer et ajouter des éléments de surveillance du processeur

system.cpu.switches : le nombre de contextes à basculer. Il renvoie une valeur entière.

  • Le serveur exécute la commande pour obtenir la valeur entière du nombre de contextes CPU client à basculer
zabbix_get -s 192.168.137.137 -k "system.cpu.switches"

insérez la description de l'image ici

  • Configurer l'acquisition d'éléments de surveillance
    insérez la description de l'image ici
  • Afficher à nouveau les éléments de surveillance de zabbix-agent
    insérez la description de l'image ici
  • Voir la tendance du graphique de tendance
    insérez la description de l'image ici
  • Configurer et ajouter des éléments de surveillance de carte réseau
net.if.in[if,<mode>]	网络接口上传流量统计;返回 整数。
[if,<mode>]	带中括号的Key表示能接受参数的key
if 指定网卡接口名称;<mode> 指定具体需要监控模式的数据
  • Supplément : Ajouter une méthode de clé personnalisée
要想使用自定义key,需要更改agent端配置文件/etc/zabbix/zabbix-agentd.conf
UserParameter=<key>,<command> -- 不接收参数
UserParameter=system.memory.free,awk '/^MemFree/{print $2}' /proc/meminfo
UserParameter=<key[*]>,<command>$1...$9 -- 接收参数
UserParameter=system.memory.usage[*],awk '/^$1/{print $$2}' /proc/meminfo
第一个$1是前system.memory.usage[*]的所有输出结果;$$2是通过awk过滤出第二行或列的值。

Exemple : \color{rouge}{Exemple :}Exemple :

找到UserParameters,添加UserParametes=system.memory.free,awk '/^MemFree/{print $2}' /proc/meminfo(自定义的key,需注意不要与内建key重名) --监控空闲内存的值
配置完成需要重启服务:systemctl restart zabbix-agent.service
服务端通过命令查看客户端空先内存:zabbix_get -s 192.168.137.139 -k "system.memory.free"

insérez la description de l'image ici

  • Le serveur exécute la commande pour obtenir la valeur entière des statistiques de trafic de téléchargement de l'interface réseau du client
zabbix_get -s 192.168.137.137 -k "net.if.in[eth0,packets]"
zabbix_get -s 192.168.137.137 -k "net.if.in[eth0,bytes]"

insérez la description de l'image ici

  • Exécutez la commande ifconfig sur le client pour voir d'où viennent les données et si elles sont cohérentes
    insérez la description de l'image ici
  • Configurer les éléments de surveillance à obtenir et enregistrer (mise à jour)
    insérez la description de l'image ici
  • En plus de l'enregistrement (mise à jour), le bas de l'élément de contrôle prend également en charge l'option de clonage, qui peut cloner un élément de surveillance et le configurer
    insérez la description de l'image ici
  • Clonez un élément de surveillance et ajoutez la surveillance en tant que : Octets entrants - le nombre d'octets entrants
    Modifiez simplement la valeur et le nom de la clé

    insérez la description de l'image ici
  • Continuez à cloner et ajoutez le nombre de paquets sortants et d'octets sortants Nombre
    de paquets sortants

    insérez la description de l'image ici
  • Octets sortants
    insérez la description de l'image ici
  • Enregistrer et afficher les nouveaux éléments de surveillance
    insérez la description de l'image ici
  • Vous pouvez toujours voir la tendance des données de surveillance
    insérez la description de l'image ici

Configurez le déclencheur (Trigger):

  • Configuration - hôte - hôte/groupe d'hôtes correspondant - déclencheur - sélectionnez le propriétaire et l'hôte du groupe correspondant - créez un déclencheur
    insérez la description de l'image ici
  • Créer un nouveau déclencheur Paquets entrants – le nombre moyen de paquets entrants dépasse 100 par seconde pour déclencher un événement Événement (alarme)
    insérez la description de l'image ici
  • Sélectionnez l'élément de surveillance correspondant
    insérez la description de l'image ici
  • Sélectionnez le nombre de paquets entrants
    insérez la description de l'image ici
  • Configurer les expressions de déclencheur
    insérez la description de l'image ici
  • Enfin, configurez et ajoutez

{zabbix-agent:net.if.in[eth0,packets].last(#1)}>100
insérez la description de l'image ici

  • Afficher la liste des déclencheurs
    insérez la description de l'image ici
  • Afficher la tendance des éléments de surveillance
    insérez la description de l'image ici
  • Afficher les déclencheurs associés et surveiller la taille du nombre de paquets
    insérez la description de l'image ici
  • Revenez au déclencheur, changez la valeur en "5" (100 est trop défini) puis observez
    pour voir les événements anormaux (3 méthodes)

    insérez la description de l'image ici
    • La première méthode : filtrer les déclencheurs correspondant à l'hôte
      insérez la description de l'image ici
    • La seconde est de visualiser les événements de l'hôte correspondant
      insérez la description de l'image ici
    • La troisième méthode consiste à afficher l'état système correspondant du tableau de bord
      insérez la description de l'image ici

Configurer les actions – Actions et configurer les alertes par e-mail :

  • Configuration - Actions - Déclencheurs (action de création)
    insérez la description de l'image ici
  • action de configuration
    insérez la description de l'image ici
  • conditions de configuration
    insérez la description de l'image ici
  • Configurer les actions - Courrier Envoyer un message
    insérez la description de l'image ici
  • afficher la liste des actions
    insérez la description de l'image ici
  • Vérifiez si vous avez reçu le courrier
    insérez la description de l'image ici

∗ ∗ Résumé : ∗ ∗ \color{red}{**Résumé :**}Résumé :
Le client se connecte au serveur – configure les éléments de surveillance – configure les déclencheurs – exécute les actions – reçoit les alarmes
∗ ∗ Supplément : ∗ ∗ \color{red}{**Supplément : **}Supplément : -Détails de la configuration del'onglet
Action-Détailsde l'onglet Condition -Détailsdela configuration de l'onglet Opération -Détails de la configuration de l'opération d'action-Envoyerun message-Commandeà distanceexécutée
insérez la description de l'image ici

insérez la description de l'image ici

insérez la description de l'image ici


insérez la description de l'image ici

insérez la description de l'image ici

Essayez de restaurer l'exercice d'échec à l'aide d'un script :

  • Installez le service httpd :

Le client installe et démarre le service Httpd, et écoute le port 80 ;
le serveur surveille ce service (port), et s'il ne peut pas être détecté, exécute l'opération "restart/start".
L'état détecté est "OK" ; sinon, "Problème"

# 客户端安装httpd服务
 yum install -y  httpd

insérez la description de l'image ici

# 客户端启动 httpd 服务并查看进程及端口
systemctl start httpd.service		#启动服务
ps -ef |grep httpd				#查看服务进程		
ss -tnl						#查看启用端口

insérez la description de l'image ici

  • L'hôte zabbix-agent ajoute des éléments de surveillance (éléments) :

insérez la description de l'image ici

  • Afficher les éléments de surveillance, ajoutés
    insérez la description de l'image ici
  • Afficher les données de détection
    insérez la description de l'image ici
  • Afficher les tendances de détection
    insérez la description de l'image ici
  • L'hôte zabbix-agent ajoute des déclencheurs (Triggers) :

  • nouveau déclencheur

{zabbix-agent:net.tcp.listen[80].last(#1)}=0
insérez la description de l'image ici

  • sélectionner une expression
    insérez la description de l'image ici
  • Afficher la liste des déclencheurs
    insérez la description de l'image ici
停止 httpd 服务
systemctl stop httpd.service

insérez la description de l'image ici

  • Afficher à nouveau les tendances du moniteur
    insérez la description de l'image ici
启动 httpd服务,查看事件
systemctl start httpd.service
状态由:OK -- Problem -- OK

insérez la description de l'image ici

  • L'hôte zabbix-agent ajoute des actions (Actions) :

    • Configurer l'onglet Actions
      insérez la description de l'image ici
    • Configurer l'onglet Conditions
      insérez la description de l'image ici
    • Configurer l'onglet Actions
      • Configuration première étape
        insérez la description de l'image ici
      • Configurer la deuxième étape
        insérez la description de l'image ici

La prémisse de l'implémentation du script personnalisé (script personnalisé) :
configurez du côté de l'agent :
1. zabbix a le pouvoir d'exécuter le script correspondant ;
éditez le fichier /etc/sudoers, ajoutez : zabbix ALL=(ALL) NOPASSWD : ALL
commentez le ligne suivante : Defaults requlretty
2. Le processus de l'agent doit autoriser l'exécution de commandes à distance, modifier le
fichier et définir EnableRemoteCommands=1 ; redémarrer le service pour prendre effet

  • Modifiez le fichier de configuration de zabbix-agent :
visudo		#为zabbix用户赋予sudo权限,如果 /etc/sudoers文件中有Defaults requiretty这一行需要注释,表明远程执行命令不需要开启终端

insérez la description de l'image ici

systemctl restart zabbix-agent.service		#重启zabbix-agent客户端服务

insérez la description de l'image ici

  • Configurer la troisième étape
    insérez la description de l'image ici
  • Afficher la liste des actions
    insérez la description de l'image ici
  • Fermez le service httpd et déclenchez l'action
systemctl stop httpd.service		#停止httpd服务
ps -ef |grep httpd				#查看服务进程		
ss -tnl						#查看启用端口

insérez la description de l'image ici

  • Afficher les changements de tendance de statut
    insérez la description de l'image ici
  • Vérifiez l'événement et constatez que le temps d'arrêt du service est très court
    insérez la description de l'image ici
  • Selon le niveau de journalisation, les actions exécutées seront affichées dans /var/log/zabbix/zabbix_server.log
  • Modifiez le numéro de port de démarrage du service httpd, vérifiez s'il continuera à exécuter les prochaines étapes (problème d'escalade) \color{red}{modifiez le numéro de port de démarrage du service httpd, vérifiez s'il continuera à exécuter les prochaines étapes (problème escalade)}Modifiez le numéro de port de démarrage du service h t t p d et vérifiez s'il continuera à exécuter les prochaines étapes ( escalade du problème ) .
grep Listen /etc/httpd/conf/httpd.conf			#查看httpd占用端口号
sed -i 's/80/8080/g' /etc/httpd/conf/httpd.conf		#修改监听端口Listen 80为8080
grep Listen /etc/httpd/conf/httpd.conf			#查看httpd占用端口号

insérez la description de l'image ici

ss -tnl						#查看当前占用端口
systemctl restart httpd.service	#重启httpd服务
ss -tnl						#查看当前占用端口

insérez la description de l'image ici

  • Afficher les dernières données, les tendances des données
    insérez la description de l'image ici

  • Attendez quelques minutes pour voir l'état d'exécution de l'événement
    insérez la description de l'image ici

  • Vérifiez, le courrier a été distribué
    insérez la description de l'image ici

  • Modifiez le numéro de port à 80 pour redémarrer le service et vérifier le courrier
    insérez la description de l'image ici

Ajoutez le type de média de l'e-mail d'alarme - utilisez le script (script):

  • Ajout
    insérez la description de l'image ici
    du script de type de support d'alarme − − emplacement de stockage du script sur le serveur zabbix : \color{red}{script -- emplacement de stockage du script sur le serveur zabbix :}s c r i p t−L'emplacement où le script est stocké sur le serveur z a b b i x :
位于server主机的alertscripts参数定义的目录下,默认为/usr/lib/zabbix/alertscripts/
zabbix调用脚本时会向其传递参数;3.0之前的版本通过:
	$1:消息接收人	$2:消息主题	  $3:消息主体
3.X之后的版本,此三个参数默认不再传递,需自行定义;
	参数(){
    
    ALSTER.SENDTO}	{
    
    ALSTER.SUBJECT}	{
    
    ALSTER.MESSAGE}
  • Afficher la liste des médias
    insérez la description de l'image ici

  • Ajout du type de support d'alarme "Admin" sur la base de l'original
    insérez la description de l'image ici

  • Sélectionnez le type, ajoutez
    insérez la description de l'image ici

  • mettre à jour le support d'alarme
    insérez la description de l'image ici

  • Action ajoutée - action (utiliser un script pour envoyer un courrier)
    insérez la description de l'image ici

  • Ajouter des scripts au serveur zabbix

yum provides */mail		#查看mail命令在哪个安装包中(脚本中用到此命令,需要安装)
yum install -y mailx-12.5-19.el7.x86_64		#安装包含mailm命令安装包
vi sendmail.sh		#新建脚本文件,需要与配置报警媒介脚本命名一样

insérez la description de l'image ici

chmod +x sendmail.sh	#赋予执行权限
systemctl restart zabbix-server	#重启服务生效
bash -n sendmail.sh	测试脚本有没有问题
bash -x sendmail.sh [email protected] "hello world" "hello everyone"	#发送测试邮件

insérez la description de l'image ici

  • Vérifiez que l'e-mail a été envoyé avec succès
    insérez la description de l'image ici

  • Le client modifie à nouveau le numéro de port, attend l'heure et vérifie à nouveau.
    Vérifiez l'événement, les quatre étapes ont été exécutées

    insérez la description de l'image ici

  • Le journal de l'action d'exécution peut être consulté dans : Rapport - Journal des actions pour afficher l'état de l'envoi de l'exécution (y compris le contenu du sujet)
    insérez la description de l'image ici

  • Vérifiez si l'e-mail a bien été reçu
    insérez la description de l'image ici

Créer des graphiques :

  • Configuration - Hôte - Graphiques (graphiques)

  • Créer un graphique de tendance du nombre de paquets entrants et sortants
    insérez la description de l'image ici
  • Afficher le graphique
    Surveillance – graphique – sélectionner le groupe/hôte correspondant
    insérez la description de l'image ici
  • Créer un graphique de tendance des octets entrants et sortants
    insérez la description de l'image ici
  • Créer un graphique de tendance du nombre de changements de contexte CPU
    insérez la description de l'image ici
  • Créer un graphique de tendance de service Web (à l'aide d'un camembert)
    insérez la description de l'image ici
  • Affichez le graphique de tendance ci-dessus sur un seul écran :

    Détection - Graphique agrégé - Créer un graphique agrégé
    insérez la description de l'image ici
  • Afficher la liste des graphiques agrégés et les configurer
    insérez la description de l'image ici
  • ajouter des graphiques
    insérez la description de l'image ici
  • Ajouter quatre graphiques pour agréger le graphique en séquence
    insérez la description de l'image ici
  • Voir l'effet
    insérez la description de l'image ici

Configurez le modèle d'hôte (Template) :

C'est très similaire à la création d'un hôte et à la configuration des éléments de surveillance de l'hôte, des déclencheurs, des graphiques, etc., donc je ne le présenterai pas en détail ici\color{red}{C'est très similaire à la création d'un hôte et à la configuration des éléments de surveillance de l'hôte, déclencheurs, graphiques, etc., donc ici Introduction pas trop détaillée}C'est très similaire à la création d'un hôte et à la configuration des éléments de surveillance de l'hôte , des déclencheurs , des graphiques, etc. , donc je ne vais pas le présenter en détail ici
insérez la description de l'image ici

  • créer un modèle
    insérez la description de l'image ici
  • Filtrer la liste des modèles sous le groupe test-templates-group
    insérez la description de l'image ici
  • Allez dans le modèle et créez un ensemble d'applications pour ce modèle
    insérez la description de l'image ici
  • Créer un élément de surveillance de modèle - le nombre d'octets entrants et sortants de la carte réseau
    insérez la description de l'image ici
  • Modèle de vue - Liste des éléments de surveillance
    insérez la description de l'image ici
  • Créer un modèle – Graphique
    insérez la description de l'image ici
  • Afficher la liste des graphiques sous le modèle de modèles de test
    insérez la description de l'image ici
  • Méthode de modèle de lien d'hôte
    insérez la description de l'image ici
  • Méthode de modèle de dissociation de l'hôte
    insérez la description de l'image ici
  • Afficher les graphiques de tendance de surveillance pour les hôtes de modèles liés
    insérez la description de l'image ici
  • Liez/agrégez d'autres modèles à ce modèle et appliquez leur contenu de configuration de modèle.
    Par exemple : liez les modèles Linux du système d'exploitation de modèle dans le modèle de modèles de test, qui sont tous applicables au système d'exploitation linux

    insérez la description de l'image ici
  • Après avoir lié le modèle Template OS Linux, vérifiez à nouveau le contenu du modèle test-templates, qui a
    évidemment beaucoup augmenté : ensembles d'applications/éléments de surveillance/triggers/graphiques...etc.

    insérez la description de l'image ici
  • Importation/exportation de modèles - il est pratique de partager des modèles entre différents serveurs zabbix
    insérez la description de l'image ici
  • Créez un nouveau service Web d'élément de surveillance de l'hôte, appelez la macro "{$HTTP_PORT}"
    insérez la description de l'image ici
  • Afficher les éléments de surveillance que vous venez de configurer
    insérez la description de l'image ici
  • Ajouter des macros globales
    insérez la description de l'image ici
  • Afficher à nouveau les éléments de surveillance que vous venez de configurer
    insérez la description de l'image ici
  • Ajouter une macro de modèle
    insérez la description de l'image ici
  • Afficher à nouveau les éléments de surveillance que vous venez de configurer
    insérez la description de l'image ici
  • Ajouter une macro hôte
    insérez la description de l'image ici
  • Afficher à nouveau les éléments de surveillance que vous venez de configurer
    insérez la description de l'image ici
    Résumé : \color{red}{Résumé :}Résumé :
由此断定,范围越小,优先级越高;
宏的依次查找次序为:
全局宏 -- 模板宏 -- 主机宏
宏类型:
	内建:{
    
    MACRO_NAME}
	自定义:{
    
    $MACRO_NAME}
命名方式:大写字母、数字和下划线组成;

Ajoutez des éléments de surveillance de la mémoire libre pour le client en créant une clé personnalisée :

	创建自定义Key方法,上面在创建主机组的时候已经讲过,也做了示范;

insérez la description de l'image ici

  • Afficher les derniers éléments de surveillance sans mémoire de données
    insérez la description de l'image ici
  • Lors de la visualisation du graphique de tendance et de l'affichage
    insérez la description de l'image ici
    du déclencheur pour définir cet élément de surveillance en unités Mb, il doit être inférieur à une certaine valeur, déclenchant Action (action) pour alarme − − ne pas faire de démonstration Lors de la définition du déclencheur pour cet élément de surveillance, il doit be Lorsqu'il est inférieur à une certaine valeur, déclencher une Action (action) pour donner une alarme − - pas de démonstration \color{red}{Lors de la définition du déclencheur de cet élément de surveillance, il doit déclencher une Action (action) lorsqu'il est inférieur supérieure à une certaine valeur Alarme -- pas de démonstration Lors de la définition du déclencheur de cet élément de surveillance, il doit être inférieur à une certaine valeur, déclencheur Action (action) pour alarme -- pas de démonstration}Lors de la définition du déclenchement de cet élément de surveillance , lorsqu'il est inférieur à une certaine valeur , déclenchez Act i o n ( action ) pour donner une alarme−Aucune démonstration Lors de la définition du déclenchement de cet élément de surveillance , lorsqu'il est inférieur à une certaine valeur , déclenchez Act i o n ( action ) pour donner une alarmepas de présentation

Le client installe le service Nginx et configure la surveillance :

  • Remarque : \color{rouge}{Remarque :}Remarque :
上面安装了httpd服务,端口会被占用,因此先把httpd服务停掉;
systemctl stop httpd.service
将zabbix中httpd的80端口监控项也禁用掉。
  • Le client installe le service nginx :

# 先下载nginx的rpm包
cd /usr/local/src/
wget http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.10.0-1.el7.ngx.x86_64.rpm

insérez la description de l'image ici

# 安装nginx服务
yum install -y nginx-1.10.0-1.el7.ngx.x86_64.rpm

insérez la description de l'image ici

  • Modifiez le fichier de configuration "/etc/nginx/conf.d/default.conf" et ajoutez la section location
    insérez la description de l'image ici
  • Démarrer le service nginx
nginx -t		#查看配置文件语法是否存在错误
systemctl start nginx.service		#启动服务
ps -ef |grep nginx			#查看进程
netstat -anpl |grep pid	#查看占用端口号
curl http://127.0.0.1/ngxstatus		#网页查看nginx的活动连接数

insérez la description de l'image ici

  • Ajoutez une clé personnalisée pour obtenir le nombre de connexions actives nginx
# 修改zabbix-agent配置文件"/etc/zabbix/zabbix_agentd.conf" 添加:
UserParameter=nginx.status.active,curl -s http://127.0.0.1/ngxstatus | awk '/^Active/{print $3}'
  • Ajoutez une clé personnalisée pour obtenir le nombre de visites que nginx accepte
UserParameter=nginx.status.active,curl -s http://127.0.0.1/ngxstatus | awk 'NR==3{print $3}'
# 重启服务
systemctl restart zabbix-agent.service

insérez la description de l'image ici

# zabbix-server端命令获取自定义key的结果(nginx活动连接数)
zabbix_get -s 192.168.137.139 -k "nginx.status.active"
# zabbix-server端命令获取自定义key的结果(nginx接收访问的数量)
zabbix_get -s 192.168.137.139 -k "nginx.status.accepts"

insérez la description de l'image ici

  • Afin de faciliter la lecture des valeurs des paramètres et de faire correspondre automatiquement les paramètres qui doivent être lus, un script doit être écrit \color{red}{Afin de faciliter la lecture des valeurs des paramètres et de faire correspondre automatiquement les paramètres qui ont besoin pour être lu, un script doit être écrit}Afin de faciliter la lecture des valeurs des paramètres et de faire correspondre automatiquement les paramètres à lire , un script doit être écrit
cat /usr/bin/ngxstatus.sh

insérez la description de l'image ici

# 赋予脚本执行权限
chmod +x /usr/local/ngxstatus.sh
# 依次执行脚本获取各个值
/usr/bin/ngxstatus.sh active

insérez la description de l'image ici

# 修改zabbix-agent配置文件自定义key参数的变量值
UserParameter=nginx.status.[*],/usr/bin/ngxstatus.sh $1
# 重启服务
systemctl restart zabbix-agent.service

insérez la description de l'image ici

  • Le serveur exécute la commande et vérifie à nouveau la valeur obtenue
zabbix_get -s 192.168.137.139 -k "nginx.status.[active/accepts/...]"

insérez la description de l'image ici

  • Résumé : \color{red}{Résumé :}Résumé :
    Combinez la clé personnalisée dans le script d'appel pour créer l'élément de surveillance de zabbix-agent. Je ne l'expliquerai pas en détail ici, mais cela peut être réalisé en combinant la clé de mémoire libre personnalisée ci-dessus.
    Exemple:
    • Configurer les éléments de surveillance nginx-active
      insérez la description de l'image ici
    • Créer des déclencheurs, lier aux éléments de surveillance (élément)
      insérez la description de l'image ici
    • Vérifiez le graphique de tendance de surveillance.
      insérez la description de l'image ici
      Si l'état est zéro, le déclencheur déclenchera un événement, et l'événement exécutera une action, puis enverra une alarme.
      Voici une brève introduction à ceux-ci, et le reste sera ajouté par vous-même, et ces indicateurs obtenus par nginx seront mis dans un graphique agrégé.

Fonction d'alarme Zabbix du robot cloueur Python :

Ajoutez d'abord un robot personnalisé dans le chat de groupe DingTalk :
创建群聊 -- 群设置 -- 添加机器人 -- 选择自定义机器人

insérez la description de l'image ici

  • cliquez pour ajouter
    insérez la description de l'image ici

  • Nom de bot personnalisé ; ajout terminé
    insérez la description de l'image ici

  • Copier le contenu du webhook
    insérez la description de l'image ici

  • Après l'ajout, il y aura un message de chat de groupe
    insérez la description de l'image ici

  • Créer un scénario :

# 在zabbix服务端的alertscripts目录下新建一个python脚本
cd /usr/lib/zabbix/alertscripts/
# 脚本内容可以直接克隆我的Git:
git --version		#查看是否安装又git
yum -y install git	#安装git工具

insérez la description de l'image ici

git clone https://github.com/Linux-Chiron/zabbix-dingding.git		#克隆zabbix-dingding代码到本地
mv zabbix-dingding/zabbix_dingding.py .		#移动zabbix_dingding.py脚本到当前目录

insérez la description de l'image ici

  • Modifiez la valeur URL (webhook) du paramètre "api_url" dans le script :
    insérez la description de l'image ici
# 为脚本赋予执行权限
chmod +x zabbix_dingding.py
# 查看Python版本,使用Python2.x
进入:python
退出:quit()
# 手动调试脚本
python zabbix_dingding.py 123

insérez la description de l'image ici

  • Lorsque vous voyez le script de débogage manuel, une erreur est signalée ; solution : − − aucune démonstration de capture d'écran\color{rouge}{lorsque vous voyez le script de débogage manuel, une erreur est signalée ; solution : -- aucune démonstration de capture d'écran}Lorsque j'ai vu le script de débogage manuel , une erreur a été signalée ;Solutions : _−Pas de démo de capture d'écran _
yum -y install epel-release	#安装epel扩展源
yum -y install python-pip		#安装python-pip
pip install --upgrade pip		#升级pip
pip install requests			#安装requests包
  • Déboguez à nouveau manuellement le script :
    insérez la description de l'image ici
Créer un support d'alerte :

insérez la description de l'image ici

  • Lier le support d'alarme au support d'alarme de l'utilisateur admin
    insérez la description de l'image ici

  • Afficher la liste des médias d'alarme de l'utilisateur administrateur, ajoutée avec succès
    insérez la description de l'image ici

  • ajouter une action
    insérez la description de l'image ici

  • Onglet Conditions pour ajouter des conditions de déclenchement associées
    insérez la description de l'image ici

  • Onglet Configurer les actions – envoyer DingTalk uniquement
    insérez la description de l'image ici

  • Consulter la liste des actions
    insérez la description de l'image ici

  • Valeur d'expression de déclenchement qui modifie le nombre de paquets entrants
    insérez la description de l'image ici

  • Voir détection - événement
    insérez la description de l'image ici

  • Vérifiez s'il y a une alarme sur DingTalk - Notification de panne/récupération

    • Avis d'échec :
      insérez la description de l'image ici

    • Avis de récupération :
      insérez la description de l'image ici

Supplément : − − Informations sur le titre et le contenu dans l'onglet d'action : \color{red}{Supplément : -- Informations sur le titre et le contenu dans l'onglet d'action :}Supplément :−Informations sur le titre et le contenu dans l' onglet action : _

  • Contenu de la notification d'erreur :
服务器:{
    
    HOST.NAME}发生: {
    
    TRIGGER.NAME}故障!
{
    
    
告警主机:{
    
    HOST.NAME}
告警地址:{
    
    HOST.IP}
监控项目:{
    
    ITEM.NAME}
监控取值:{
    
    ITEM.LASTVALUE}
告警等级:{
    
    TRIGGER.SEVERITY}
当前状态:{
    
    TRIGGER.STATUS}
告警信息:{
    
    TRIGGER.NAME}
告警时间:{
    
    EVENT.DATE} {
    
    EVENT.TIME}
事件ID:{
    
    EVENT.ID}
}
  • Restaurer le contenu des notifications :
服务器:{
    
    HOST.NAME}: {
    
    TRIGGER.NAME}已恢复!
{
    
    
告警主机:{
    
    HOST.NAME}
告警地址:{
    
    HOST.IP}
监控项目:{
    
    ITEM.NAME}
监控取值:{
    
    ITEM.LASTVALUE}
告警等级:{
    
    TRIGGER.SEVERITY}
当前状态:{
    
    TRIGGER.STATUS}
告警信息:{
    
    TRIGGER.NAME}
告警时间:{
    
    EVENT.DATE} {
    
    EVENT.TIME}
恢复时间:{
    
    EVENT.RECOVERY.DATE} {
    
    EVENT.RECOVERY.TIME}
持续时间:{
    
    EVENT.AGE}
事件ID:{
    
    EVENT.ID}
}

Je suppose que tu aimes

Origine blog.csdn.net/wkl1007/article/details/108325357
conseillé
Classement