Line 23: |
Line 23: |
| === Versions === | | === Versions === |
| Voici des informations sur la dernière version de chaque composant : | | Voici des informations sur la dernière version de chaque composant : |
− | {{ #smeversion: smeserver-zabbix-server }} | + | {{#smeversion: smeserver-zabbix-server }} |
− | {{ #smeversion: zabbix-server }} | + | {{#smeversion: smeserver-zabbix-server-z50 }} |
− | {{ #smeversion: smeserver-zabbix-agent }} | + | {| class="wikitable" |
− | {{ #smeversion: zabbix-agent }}
| + | !Nom de la version |
− | {{ #smeversion: smeserver-zabbix-proxy }}
| + | !Date de la version |
− | {{ #smeversion: zabbix-proxy }}
| + | !Fin du support complet* |
| + | !Fin du support limité** |
| + | !SME9 |
| + | !SME10 |
| + | |- |
| + | |Zabbix 6.2 |
| + | |5juill. 2022 |
| + | |31 janv. 2023 |
| + | |28 fév. 2023 |
| + | |X |
| + | |X |
| + | |- |
| + | |Zabbix 6.0 LTS |
| + | |8 fév. 2022 |
| + | |28 fév. 2025 |
| + | |28 fév. 2027 |
| + | |X |
| + | |X |
| + | |- |
| + | |Zabbix 5.0 '''LTS''' |
| + | |12 mai 2020 |
| + | |31 mai 2023 |
| + | |31 mai 2025 |
| + | |X |
| + | |oui |
| + | |- |
| + | |4.4 (EOL) |
| + | | |
| + | | |
| + | | |
| + | |oui |
| + | |oui |
| + | |- |
| + | |Zabbix 4.0 '''LTS''' |
| + | |1er octobre 2018 |
| + | |31 octobre 2021 |
| + | |31 octobre 2023 |
| + | |oui |
| + | |X |
| + | |} |
| + | |
| | | |
| === Description === | | === Description === |
Line 233: |
Line 273: |
| *'''JabberTLS''' (enabled|disabled) : est-ce que votre serveur Jabber nécessite des sécurités TLS ? | | *'''JabberTLS''' (enabled|disabled) : est-ce que votre serveur Jabber nécessite des sécurités TLS ? |
| | | |
− | {{Note box|type=Note : |les différents paramètres Jabber ci-dessus ne sont pas pour la fonction de notification Jabber native à Zabbix (parce que je n'ai pas pu le faire fonctionner car mon serveur nécessite TLS etque la fonction intégrée ne supporte pas les connexions TLS). Mais j'ai inclus un script externe utilisant sendxmpp pour envoyer la notification. Vous devez avoir un média appelé "xmpp" dans Zabbix administration.}} | + | {{Note box|type=Note : |les différents paramètres Jabber ci-dessus ne sont pas utilisés par la fonction native de notification Jabber (parce que je n'ai pas pu le faire fonctionner car mon serveur nécessite TLS et que la fonction intégrée ne supporte pas les connexions TLS). Mais j'ai inclus un script externe utilisant sendxmpp pour envoyer la notification. Vous devez avoir un média appelé « xmpp » dans l'administration de Zabbix.}} |
| | | |
| *'''NodeID''': l'ID du nœud de votre serveur ; si vous n'utilisez pas de surveillance distribuée (un seul serveur central Zabbix), il faut le laisser à 0 ; | | *'''NodeID''': l'ID du nœud de votre serveur ; si vous n'utilisez pas de surveillance distribuée (un seul serveur central Zabbix), il faut le laisser à 0 ; |
| *'''TCPPort''': port utilisé pour la communication agent <-> serveur (et proxy <-> serveur) ; la valeur par défaut est 10051 ; | | *'''TCPPort''': port utilisé pour la communication agent <-> serveur (et proxy <-> serveur) ; la valeur par défaut est 10051 ; |
− | *'''TimeZone''': le serveur Zabbix doit connaître votre fuseau horaire (paramètre PHP TimeZone) ;.malheureusement, SME ne le configure pas par défaut ; vous pouvez préciser votre fuseau horaire ;.cCe paramètre affecte uniquement Zabbix ; | + | *'''TimeZone''': il est très important que le serveur Zabbix connaisse votre fuseau horaire (paramètre PHP TimeZone) ; malheureusement, SME ne le configure pas par défaut ; vous pouvez préciser votre fuseau horaire ; ce paramètre affectera uniquement Zabbix ; |
− | *'''WebAccess''' (local|public|disabled) : contrôle l'accès à l'interface web ; vous pouvez le régler sur '''disabled''' si vous souhaitez désactiver l'interface Web (par exemple, si votre serveur est un nœud d'un environnement distribué) ; | + | *'''WebAccess''' (local|public|disabled) : contrôle d'où vous pouvez accéder à l'interface web ; vous pouvez le régler sur '''disabled''' si vous souhaitez désactiver l'interface Web (par exemple, si votre serveur est un nœud d'un environnement distribué) ; |
− | *'''access''': (public|local) d'où le port Zabbix sera disponible (TCPPort) ; vous pouvez restreindre l'accès à une liste d'hôtes avec la clé AllowHosts si vous définissez 'public' ici ; | + | *'''access''': (public|local) d'où le port Zabbix sera accessible (TCPPort) ; vous pouvez restreindre l'accès à une liste d'hôtes avec la clé AllowHosts si vous réglez ce paramètre à 'public' ; |
| *'''status''': le service doit-il pouvoir être lancé automatiquement ? | | *'''status''': le service doit-il pouvoir être lancé automatiquement ? |
− |
| |
| | | |
| Une fois que vous avez tout configuré comme vous voulez, il suffit de faire : | | Une fois que vous avez tout configuré comme vous voulez, il suffit de faire : |
Line 250: |
Line 289: |
| ===== Interface Web ===== | | ===== Interface Web ===== |
| | | |
− | L'interface web est disponible (si elle n'est pas désactivée avec la clé WebAccess) sur https://server.domain.tld/zabbix. | + | L'interface Web est disponible (si elle n'est pas désactivée avec la clé WebAccess) sur https://server.domain.tld/zabbix. |
− | L'utilisateur par défaut est '''admin''', avec mot de passe '''zabbix''' (vous devez changer ce mot de passe aussi rapidement que possible) | + | L'utilisateur par défaut est '''Admin''' (avec un A majuscule), avec un mot de passe fort trouvé dans la propriété de configuration AdminPasswd à partir de la version smeserver-zabbix-server 0.1-29. Si vous le modifiez, il ne sera pas écrasé lors de la mise à jour. (Avant cette version, la valeur par défaut était '''zabbix''', dans ce cas, vous devez changer ce mot de passe aussi rapidement que posssible.)<syntaxhighlight lang="bash"> |
| + | config getprop zabbix-server AdminPassword |
| + | </syntaxhighlight> |
| | | |
− | Voici quelques captures d'écran de ce que vous pouvez obtenir avec Zabbix | + | Voici quelques captures d'écran de ce que vous pouvez obtenir avec Zabbix : |
| [[File:Zabbix_graph_cpu.png|768px|thumb|center|Utilisation du CPU]] | | [[File:Zabbix_graph_cpu.png|768px|thumb|center|Utilisation du CPU]] |
| [[File:Zabbix_graph_mem.png|768px|thumb|center|Utilisation de la mémoire]] | | [[File:Zabbix_graph_mem.png|768px|thumb|center|Utilisation de la mémoire]] |
| [[File:Zabbix_graph_network.png|768px|thumb|center|Utilisation du réseau]] | | [[File:Zabbix_graph_network.png|768px|thumb|center|Utilisation du réseau]] |
− | {{Note box|Vous pouvez choisir une période sur un graphique. Grâce à cette fonction, vous pouvez facilement zoomer sur une période de temps pour analyser les choses avec précision}} | + | {{Note box|type=Note : |vous pouvez choisir une période sur un graphique. Grâce à cette fonction, vous pouvez facilement zoomer sur une période de temps pour analyser les choses avec précision.}} |
| [[File:Zabbix_graph_mail_in.png|768px|thumb|center|Statistique des courriels entrants]] | | [[File:Zabbix_graph_mail_in.png|768px|thumb|center|Statistique des courriels entrants]] |
| [[File:Zabbix_screen.png|768px|thumb|center|Écran]] | | [[File:Zabbix_screen.png|768px|thumb|center|Écran]] |
− | {{Note box|Vous pouvez afficher autant de graphiques que vous voulez dans un seul et même écran. Un écran peut s'actualiser automatiquement, et changer les graphiques (affichage des graphiques réseau de l'hôte 1 pendant 2 minutes, puis affichage du graphique des températures de l'hôte 2 pendant 3 minutes etc ..)}} | + | {{Note box|type=Note : |vous pouvez afficher autant de graphiques que vous voulez dans un seul et même écran. Un écran peut s'actualiser automatiquement, et changer les graphiques (affichage des graphiques réseau de l'hôte 1 pendant 2 minutes, puis affichage du graphique des températures de l'hôte 2 pendant 3 minutes, etc.).}} |
− | [[File:Zabbix_overview.png|768px|thumb|center|Aperçu de Déclencheurs]] | + | [[File:Zabbix_overview.png|768px|thumb|center|Aperçu de déclencheurs]] |
− | [[File:Zabbix_map.png|768px|thumb|center|Carte des Hôtes]] | + | [[File:Zabbix_map.png|768px|thumb|center|Carte des hôtes]] |
− | {{Note box|il s'agit d'une carte très simple, vous pouvez en faire des bien plus jolies}} | + | {{Note box|type=Note : |il s'agit d'une carte très simple, vous pouvez en faire de bien plus jolies.}} |
| | | |
| | | |
− | Pour plus de captures d'écran, vous pouvez jeter un œil sur le site Web du projet [http://www.zabbix.com/screenshots.php ici] | + | Pour plus de captures d'écran, vous pouvez jeter un œil sur le site Web du projet [http://www.zabbix.com/screenshots.php ici]. |
| | | |
| ==== Agent ==== | | ==== Agent ==== |
| + | Voir la page en anglais [[zabbix-agent]]. |
| | | |
− | l'Agent Zabbix est un petit démon qui va rassembler des informations sur l'hôte à surveiller, et les renvoyer à un ou plusieurs serveur (s) (ou proxy (s)).
| + | ==== Proxy ==== |
− | Les agents peuvent fonctionner en mode actif ou passif (ou les deux):
| + | Voir la page en anglais [[zabbix-proxy]]. |
− | *En mode actif, l'agent fera une connexion sortante vers le serveur (port 10051 par défaut).
| |
− | *En mode passif, le serveur va se connecter à l'agent (sur le port 10050 par défaut).
| |
− |
| |
− | Lisez le Chap. Agent 2.3.4.ZABBIX page 39 et chap. 3.3.ZABBIX Agent (UNIX, standalone daemon) du manuel pour plus d'informations sur les agents Zabbix.
| |
| | | |
− | ===== Installation =====
| |
| | | |
− | Pour installer Zabbix agent , il suffit d'utiliser yum:
| + | === Surveillance de serveurs SME === |
− | yum --enablerepo=smecontribs install smeserver-zabbix-agent
| |
| | | |
| + | Si vous voulez surveiller des serveurs SME avec Zabbix, vous devez d'abord installer l'agent, comme expliqué précédemment, puis configurer l'agent pour qu'il accepte les connexions depuis votre serveur. Par exemple, pour surveiller votre serveur local (celui qui exécute le serveur Zabbix) : |
| | | |
− | Ce paquet sera téléchargé avec au moins les dépendances suivantes:
| + | db configuration setprop zabbix-agent Servers localhost active disabled passive enabled |
− | *zabbix (tout petit paquet avec les répertoires communs utilisés par tous les composants de Zabbix)
| + | signal-event zabbix-agent-update |
− | *zabbix-agent (l'agent)
| |
− | *smeserver-remoteuseraccess: cette contrib est nécessaire car elle fournit des modèles de métadonnées nécessaires pour le fichier /etc/sudoers.
| |
| | | |
− | ===== Paramètres BD ===== | + | {{Note box|type=Note : |après l'installation, l'agent est configuré en mode actif. Ici, nous désactivons le mode actif, et permettons seulement le mode passif.}} |
| | | |
− | Voici la liste des paramètres BD du service Zabbix-agent sur SME:
| + | Ensuite, il suffit d'ajouter un hôte dans Zabbix, pointant sur localhost. |
− | *'''RemoteCommands''': (enabled|disabled). Si vous souhaitez activer à distance des commandes sur l'agent Zabbix (vous devriez lire la documentation Zabbix). Il faut savoir qu'il y a des répercussions sur la sécurité si vous l'activez. Cette fonction est désactivée par défaut
| |
− | *'''ServerPort''': port pour contacter le serveur lors de l'exécution en mode actif. Par défaut à 10051
| |
− | *'''Servers''': Liste de serveurs (ou proxy), séparés par des virgules, à qui envoyer les informations. Le premier sera utilisé pour le mode actif, les autres sont seulement pour le mode passif
| |
− | *'''TCPPort''': Le port TCP sur lequel l'agent sera à l'écoute, si le mode passif est activé
| |
− | *'''access''': (public|private) Si vous souhaitez ouvrir l'agent sur l'interface publique (ne sera utile que si passive est activé). Si vous réglez cela sur «public», vous devez utiliser la clé AllowHosts pour limiter l'accès
| |
− | *'''active''': (enabled|disabled) Voulez-vous activé le mode actif
| |
− | *'''passive''': (enabled|disabled) Voulez-vous activé le mode passif
| |
− | *'''status''': (enabled|disabled) Si le service est lancé automatiquement
| |
| | | |
| + | Maintenant, vous pouvez commencer à ajouter des items (type agent, actif ou passif, selon le mode que vous utilisez sur l'agent) à ce nouvel hôte. |
| | | |
| + | Si vous voulez surveiller des serveurs SME sur Internet et utiliser le mode passif, le serveur va initier des connexions vers l'agent. Vous avez besoin de rediriger le port, si vous utilisez le mode serveur seul (serveronly) (la valeur par défaut est le port TCP 10050), ou d'ouvrir ce port dans le pare-feu si vous utilisez le mode serveur et passerelle (server&gateway) : |
| | | |
− | Une fois que vous avez tout configuré comme vous voulez, il suffit de faire
| + | db configuration setprop zabbix-agent Servers w.x.y.z active disabled passive enabled access public AllowHosts w.x.y.z |
| signal-event zabbix-agent-update | | signal-event zabbix-agent-update |
| | | |
− | pour appliquer les modifications et redémarrer les services nécessaires.
| + | {{Warning box|type=Attention : |si vous utilisez le mode actif, vous avez besoin d'utiliser le nom exact de l'hôte dans le serveur Zabbix 'NomHote.NomDomaine.tld' (vérifiez le fichier /etc/Zabbix/zabbix_agentd.conf, la directive NomHote). Si vous ne le faites pas, les contrôles ne fonctionneront pas.}} |
− | | |
− | ===== Items supplémentaires ===== | |
− | | |
− |
| |
− | Même si l'agent Zabbix supporte nativement un grand nombre d'items, certains étaient manquants pour mon utilisation, j'ai ajouté quelques entrés "UserParameters" dans le fichier de configuration. Pour chacun de ces items, vous devez ajouter un nouvel élément avec le nom de l'item comme clé.
| |
− | Configurer les items sur le serveur peut être assez long. Vous pouvez jeter un œil sur les [http://sme.firewall-services.com/downloads/zabbix/zabbix_SME.zip modèles] je les utilise pour surveiller des serveurs de SME. Cette archive contient quelques templates/items/graphes/déclencheurs au format XML (exportés de Zabbix). Vous pouvez utiliser la fonctionnalité d'import / export de Zabbix (Manuel Chap. 8.XML IMPORTATION ET EXPORTATION page 154) pour l'importer sur votre serveur.
| |
− | | |
− | Vous pouvez aussi jeter un œil sur le fichier de configuration /etc/zabbix/zabbix_agentd.conf pour voir les commandes utilisées pour retourner les valeurs correspondantes. Vous trouverez également pour chaque UserParameter des informations sur la manière de créer l'item correspondant sur le serveur.
| |
− | | |
− | Merci de lire le chapitre 4.11.User Paramètres de la page 119 du manuel pour avoir plus d'informations sur la façon dont fonctionne UserParameters.
| |
− | | |
− | *IP externe:
| |
− | **'''ip.external''': Retourne la véritable adresse IP externe.
| |
− | *Incoming mails statistics:
| |
− | | |
− | {{Note box|Depuis la version 0.1-28 smeserver-zabbix-agent, les clés pour récupérer les statistiques des e-mails ont changé. La valeur renvoyées sont pour les 10 dernières minutes (les statistiques sont mises à jour avec un cron toutes les 10 minutes), vous devrez donc configurer ces item pour se rafraîchir toutes les 600 secondes}}
| |
− | | |
− | **'''mail.in[dnsbl]''': nombre d'e-mails rejetés par DNSBL
| |
− | **'''mail.in[rhsbl]''': nombre d'e-mails rejetés par RHSBL
| |
− | **'''mail.in[clamav]''': nombre d'e-mails rejetés par CLAMAV
| |
− | **'''mail.in[check_earlytalker]''': nombre d'e-mails rejetés par EARLYTALKER
| |
− | **'''mail.in[check_basicheaders]''': nombre d'e-mails rejetés par BASICHEADERS
| |
− | **'''mail.in[check_goodrcptto]''': nombre d'e-mails rejetés par GOODRCPTTO
| |
− | **'''mail.in[check_spamhelo]''': nombre d'e-mails rejetés par SPAMHELO
| |
− | **'''mail.in[total_denied]''': somme d'e-mails rejetés (somme des vérifications ci-dessus)
| |
− | **'''mail.in[spam_denied]''': nombre d'e-mails rejetés par SPAMASSASSIN
| |
− | **'''mail.in[other_denied]''': nombre d'e-mails rejetés par d'autres contrôles
| |
− | **'''mail.in[spam_queued]''': nombre d'e-mails acceptés, mais marqués comme spam par SpamAssassin
| |
− | **'''mail.in[queued]''': nombre d'emails acceptés (HAM)
| |
− | **'''mail.in[total]''': nombre d'emails reçus (acceptés + refusés)
| |
− | | |
− | *Statistiques de l'envoi de mails
| |
− | **'''mail.out[total]''': somme de courrier sortant
| |
− | **'''mail.out[success]''': nombre d'e-mails transmis
| |
− | **'''mail.out[deferral]''': nombre d'e-mails différés
| |
− | **'''mail.out[failure]''': nombre d'échecs
| |
− | | |
− | *utilisation de Mémoire / Swap
| |
− | **'''vm.memory.size.used''': Mémoire utilisée en octets
| |
− | **'''vm.memory.size.pused''': Mémoire utilisée en %
| |
− | **'''system.swap.size.used''': Espace swap utilisée en octets
| |
− | | |
− | * Informations MySQL
| |
− | **'''mysql.uptime''': temps de fonctionnement du serveur MySQL en secondes
| |
− | **'''mysql.threads''': nombre de threads
| |
− | **'''mysql.questions''': nombre de requêtes depuis que mysql a été lancé
| |
− | **'''mysql.slowqueries''': nombre de requêtes lentes (slow queries)
| |
− | **'''mysql.qps''': moyenne des requêtes par secondes
| |
− | **'''mysql.size''': espace total utilisé par les bases de données mysql
| |
− | | |
− | *Utilisation du réseau. Ces items sont utiles si vous voulez surveiller plusieurs serveurs SME en utilisant un modèle (mêmes items), mais ces serveurs utilisent différentes interfaces (eth0, eth1, br0, bond0, ppp0 etc ..)
| |
− | **'''net.if.in.internal''': Équivalent à net.if.in [ethX, octets], mais est indépendant du nom de l'interface interne (eth0, bond0, br0 etc ...)
| |
− | **'''net.if.out.internal''': Équivalent à net.if.out[ethX,bytes]
| |
− | **'''net.if.in.external''': Équivalent à net.if.in [ethX, octets], mais est indépendant du nom de l'interface externe (eth0, eth1, ppp0 etc ..)
| |
− | **'''net.if.out.external''': Équivalent à net.if.out[ethX,bytes]
| |
− | | |
− | *statut de l'onduleur (UPS)
| |
− | **'''ups.load''': Charge (en %) de votre UPS
| |
− | **'''ups.battery.charge''': Charge (en %) de la batterie
| |
− | **'''ups.status''': État actuel de l'onduleur (OL, OB, OL CHRG etc ..)
| |
− | **'''ups.model''': Modèle de l'onduleur
| |
− | | |
− | *Raid Array Monitoring
| |
− | **'''raid.sw.status''': État actuel de votre raid logiciel (tout les volumes raid logiciel sont surveillés)
| |
− | **'''raid.mega.status''': État actuel de vos volumes raid basés sur un chipset MegaRaid (par exemple, les cartes perc5/5(i) sont basées sur un chipset MegaRaid). Nécessite le paquet MegaCli disponible ici: [http://www.lsi.com/storage_home/products_home/internal_raid/megaraid_sas/]
| |
− | | |
− | ==== Proxy ====
| |
| | | |
− | Le proxy Zabbix est un démon léger. Il agira comme un serveur pour les agents, mettra en cache localement (dans une base de données mysql) les informations et les enverra au serveur à qui il appartient. C'est utile pour surveiller des éléments derrière un pare-feu.
| + | Vous pouvez télécharger [http://sme.firewall-services.com/downloads/zabbix/zabbix_SME.zip ici] (lien cassé) une archive avec plusieurs modèles (template) d'exports XML que j'utilise pour surveiller mes serveurs. Extrayez l'archive et importez les modèles (template) que vous souhaitez dans Zabbix (en utilisant l'Import / Export Zabbix dans le menu de configuration). |
| | | |
− | ===== Installation =====
| + | Chaque fichier XML représente un modèle (template) dans Zabbix. |
| | | |
− | Pour installer Zabbix proxy , il suffit d'utiliser yum:
| + | *'''Template_SME''' est le modèle principal. Il va ajouter beaucoup d'items de surveillance globale, de déclencheurs si la charge est trop élevée, s'il n'y a plus de mémoire libre, si httpd ne fonctionne plus, si les mots de passe changent, etc. et aussi des graphiques, comme l'utilisation de l'UC, mémoire, espace disque, utilisation du réseau etc.. Ce modèle exige les modèles '''Template_icmp''' et '''Template_app_MySQL'''. |
− | yum --enablerepo=smecontribs install smeserver-zabbix-proxy | |
| | | |
− | ===== DB Parameters =====
| + | *'''Template_SME_coovaChilli''' ajoutera les statistiques pour tun0 (utile si vous utilisez la contrib [[CoovaChilli]]). Il va également créer un graphique à partir des statistiques de tun0. |
− | *'''DbName''': le nom de la base de données utilisée par le proxy. La valeur par défaut est zabbixproxydb | |
− | *'''DbPassword''': le mot de passe pour accéder à la base de données
| |
− | *'''DbUser''': l'utilisateur pour accéder à la base de données
| |
− | *'''Servers''': Liste de serveurs (séparés par des virgules) à qui envoyer les informations
| |
− | *'''TCPPort''': Le port TCP sur lequel le proxy écoute. Les clients pourront se connecter sur le proxy comme sur un serveur Zabbix. La valeur par défaut est 10051
| |
− | *'''access''': (private|public) Si vous souhaitez ouvrir Zabbix-proxy sur l'interface externe. Si vous définissez l'accès à public, vous devez utiliser la touche AllowHosts pour limiter l'accès
| |
− | *'''status''': (enabled|disabled) Si le service est lancé automatiquement
| |
| | | |
− | === Surveillance des serveurs SME ===
| + | *'''Template_SME_softRaid''' va ajouter des items et des déclencheurs pour la surveillance du raid logiciel. Si vous liez un serveur SME avec ce modèle, vous serez prévenu si l'un des volumes est dégradé ou en court de reconstruction. |
| | | |
− | Si vous voulez surveiller des serveurs SME avec Zabbix, vous devez d'abord installer l'agent, comme expliqué précédemment, puis configurer l'agent pour qu'il accepte les connexions depuis votre serveur. Par exemple, pour surveiller votre serveur local (celui qui exécute le serveur Zabbix):
| + | *'''Template_SME_megaRaid''' fera de même pour les cartes MegaRAID. Elle nécessite également l'utilitaire MegaCli du site web [http://www.lsi.com/storage_home/products_home/internal_raid/megaraid_sas/ LSI]. NB : LSI a éré racheté par BROADCOM. |
| | | |
− | db configuration setprop zabbix-agent Servers localhost active disabled passive enabled
| + | *'''Template_SME_nutUPS''': ajoutera des items et des déclencheurs pour être prévenus si votre onduleur fonctionne sur la batterie, ou est en surcharge. |
− | signal-event zabbix-agent-update
| |
| | | |
− | {{Note box|Après l'installation, l'agent est configuré en mode actif. Ici, nous désactivons le mode actif, et permettons seulement le mode passif.}}
| + | *'''Template_icmp''': crée deux items pour vérifier si le serveur est en vie, et mesure le temps de latence. Il ajoute également un graphique de latence et certains déclencheurs (si la latence est trop élevée, si l'hôte est injoignable depuis plus de 5 minutes ou plus de 1 heure). |
| | | |
− | Ensuite, il suffit d'ajouter un hôte dans Zabbix, pointant sur localhost.
| + | === Ressources pour la surveillance=== |
| | | |
− | Maintenant, vous pouvez commencer à ajouter des items (type agent, actif ou passif, selon le mode que vous utilisez sur l'agent) à ce nouvel hôte.
| + | * https://github.com/zabbix/community-templates |
| + | * https://git.lapiole.org/rpms/zabbix-agent-addons |
| | | |
− | Si vous voulez surveiller des serveurs SME sur Internet et utiliser le mode passif, le serveur va initier des connexions vers l'agent. Vous avez besoin de rediriger le port, si vous utilisez le mode serveur seul (serveronly) (la valeur par défaut est le port TCP 10050), ou d'ouvrir ce port dans le pare-feu si vous utilisez le mode serveur et passerelle (server&gateway):
| + | === Mise à jour de la version 4.4 à 5.0 === |
| + | Voir cette [[https://www.zabbix.com/documentation/5.0/en/manual/installation/upgrade_notes_500 page en anglais]]. La plupart du temps, vous devrez : |
| | | |
− | db configuration setprop zabbix-agent Servers w.x.y.z active disabled passive enabled access public AllowHosts w.x.y.z | + | * migrer votre base de données de mariadb 5.5 vers mariadb 10.5 avec son utilisateur, si ce n'est pas déjà fait ; |
− | signal-event zabbix-agent-update
| + | * passer le format de ligne en dynamique<syntaxhighlight lang="bash"> |
| + | echo "USE $(config getprop zabbix-server DbName); alter table hosts row_format = dynamic; "|mysql105 |
| + | </syntaxhighlight> |
| + | * réparer ENGINE en cas d'oubli auparavant (vous feriez mieux de le faire avant de l'importer), la conversion de la table d'historique pourrait prendre des jours (oui, des jours, pas des heures) ; |
| + | <syntaxhighlight lang="bash"> |
| + | echo "SELECT CONCAT('ALTER TABLE ',TABLE_NAME,' ENGINE=InnoDB;') FROM INFORMATION_SCHEMA.TABLES WHERE ENGINE='MyISAM' AND table_schema = 'zabbixdb';" |mysql105 -s|mysql105 zabbixdb |
| + | </syntaxhighlight> |
| + | * corriger le classement, pour le problème "[Z3005] query failed: [1071] Specified key was too long; max key length is 3072 bytes [create index items_1 on items (hostid,key_(1021))]" [https://www.zabbix.com/forum/zabbix-troubleshooting-and-problems/401826-database-upgrade-failed-specified-key-was-too-long-max-key-length-is-3072-bytes voir ici.]<syntaxhighlight lang="bash"> |
| + | echo "SELECT CONCAT('ALTER TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;') FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'zabbixdb';" |mysql105 -s |mysql10 |
| + | </syntaxhighlight> |
| + | * réparer la table avec database/mysql/double.sql<syntaxhighlight lang="mysql"> |
| + | cat /usr/share/doc/zabbix-server-mysql-5.0.30/double.sql |mysql105 `config getprop zabbix-server DbName` |
| + | </syntaxhighlight> |
| + | * corriger la clé étrangère pour le problème "[Z3005] query failed: [1091] Can't DROP FOREIGN KEY `c_items_1`; check that it exists [alter table items drop foreign key c_items_1]" [https://www.zabbix.com/forum/zabbix-troubleshooting-and-problems/402412-zabbix-4-4-8-to-5-0-upgrade-failure voir ici.]<syntaxhighlight lang="bash"> |
| + | echo "ALTER TABLE items ADD CONSTRAINT c_items_1 FOREIGN KEY (hostid) REFERENCES hosts (hostid) ON DELETE CASCADE; |
| + | CREATE INDEX items_1 ON items (hostid);" |mysql105 zabbixdb |
| + | </syntaxhighlight> |
| | | |
− | {{Warning box|Si vous utilisez le mode actif, vous avez besoin d'utiliser le nom exact de l'hôte dans le serveur Zabbix 'hostname.domainname.tld' (vérifiez le fichier /etc/Zabbix/zabbix_agentd.conf, la directive Hostname). Si vous ne le faites pas, les contrôles ne fonctionneront pas}}
| + | * installer 5.0 en tilisant les paquets :<syntaxhighlight lang="bash"> |
| + | db yum_repositories setprop zabbix44 status disabled |
| + | db yum_repositories setprop zabbix50 status enabled |
| + | db yum_repositories setprop zabbix50-frontend status enabled |
| + | expand-template /etc/yum.smerepos.d/sme-base.repo |
| + | rpm -e --nodeps zabbix-web-mysql zabbix-web smeserver-zabbix-server |
| + | yum install smeserver-zabbix-server-z50 --enablerepo=smecontribs,smetest,smedev |
| + | </syntaxhighlight> |
| + | * réparer le classement après l'installation |
| + | <syntaxhighlight lang="bash"> |
| + | echo "alter database $(config getprop zabbix-server DbName) character set utf8mb4 collate utf8mb4_bin;" |mysql105 |
| + | wget https://www.zabbix.com/documentation/current/assets/en/manual/appendix/install/utf8mb4_convert.sql |
| + | cat utf8mb4_convert.sql |mysql105 `config getprop zabbix-server DbName` |
| + | echo "SET @ZABBIX_DATABASE = '$(config getprop zabbix-server DbName)'; \ |
| + | set innodb_strict_mode = OFF; \ |
| + | CALL zbx_convert_utf8(); \ |
| + | set innodb_strict_mode = ON; \ |
| + | drop procedure zbx_convert_utf8;"|mysql105 `config getprop zabbix-server DbName` |
| + | </syntaxhighlight> |
| | | |
− | Vous pouvez télécharger [http://sme.firewall-services.com/downloads/zabbix/zabbix_SME.zip ici] une archive avec plusieurs modèles (template) d'exports XML que j'utilise pour surveiller mes serveurs. Extrayez l'archive et importez les modèles (template) que vous souhaitez dans Zabbix (en utilisant l'Import / Export Zabbix dans le menu de configuration)
| + | === Migrer la base de données de mariadb 5.5 à mariadb 10.5 === |
| + | Le script vérifiera si zabbixdb est présent dans le répertoire de mariadb 5.5 ; tant qu'il l'est, il continuera à utiliser cette base de données, même si elle est présente dans mariadb 10.5.<syntaxhighlight lang="bash"> |
| + | # test nécessaire, écrire faite à partir de la page de la contribution de Nextcloud. |
| + | mysqldump `config getprop zabbix-server DbName` > zabbixdb.sql |
| + | echo "CREATE DATABASE IF NOT EXISTS `config getprop zabbix-server DbName` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;"| mysql105 |
| + | cat zabbixdb.sql |sed 's/ENGINE=MyISAM/ENGINE=InnoDB/g'|mysql105 `config getprop zabbix-server DbName` |
| | | |
− | Chaque fichier XML représente un modèle (template) dans Zabbix
| + | echo "CREATE USER IF NOT EXISTS `config getprop zabbix-server DbUser`@localhost IDENTIFIED BY '`config getprop zabbix-server DbPassword`';"| mysql105 |
| + | echo "GRANT ALL PRIVILEGES ON `config getprop zabbix-server DbName`.* TO `config getprop zabbix-server DbUser`@localhost; FLUSH PRIVILEGES;" | mysql105 |
| | | |
− | *'''Template_SME''' est le principal template. Il va ajouter beaucoup d'items de surveillance globale, de déclencheurs si la charge est trop élevée, s'il n'y a plus de mémoire libre, si httpd ne fonctionne plus, si les mots de passe changent etc .. et aussi des graphiques, comme l'utilisation de l'UC, mémoire, espace disque, utilisation du réseau etc .. Ce modèle exige les templates '''Template_icmp''' et '''Template_app_MySQL'''
| + | echo "drop database `config getprop zabbix-server DbName`;" |mysql |
| + | signal-event smeserver-zabbix-server-update |
| + | </syntaxhighlight> |
| + | {{Warning box|type=Attention : |ces lignes de code nécessitent d'être testées au préalable ; essayez sur un environment de test et soyez prêt(e) à restaurer une sauvegarde de votre base de données.}} |
| | | |
− | *'''Template_SME_coovaChilli''' ajoutera les statistiques pour tun0 (utile si vous utilisez la contrib [[CoovaChilli]]). Il va également créer un graphique à partir de ces statistiques.
| + | === Bogues === |
| + | Veuillez ouvrir les bogues dans la section SME-Contribs de [http://bugs.contribs.org/enter_bug.cgi bugzilla] et sélectionner le composant smeserver-zabbix-server ou utiliser {{BugzillaFileBug|product=SME%20Contribs|component=smeserver-zabbix-server|title=ce lien.}} |
| | | |
− | *'''Template_SME_softRaid''' va ajouter des items et des déclencheurs pour la surveillance du raid logiciel. Si vous liez un serveur SME avec ce modèle, vous serez prévenu si l'un des volumes est dégradé ou en court de reconstruction
| + | Un aperçu des problèmes actuels de cette contribution figure ci-dessous :{{#bugzilla:columns=id,product,version,status,summary|sort=id|order=desc|component=smeserver-zabbix-server |noresultsmessage=Pas trouvé de bogues ouverts.}} |
| | | |
− | *'''Template_SME_megaRaid''' fera de même pour les cartes MegaRAID. Elle nécessite également l'utilitaire MegaCli du site web [http://www.lsi.com/storage_home/products_home/internal_raid/megaraid_sas/ LSI]
| + | ===Journal des modifications=== |
| + | Seules les versions publiées dans le dépôt smecontrib sont listées ici. |
| | | |
− | *'''Template_SME_nutUPS''': Ajoutera des items et des déclencheurs pour être prévenues si votre onduleur est sur batterie, ou surchargé.
| + | {{#smechangelog: smeserver-zabbix-server }} |
| | | |
− | *'''Template_icmp''': crée deux items pour vérifier si le serveur est en vie, et mesure le temps de latence. Il ajoute également un graphique de latence et certains déclencheurs (si la latence est trop élevée, si l'hôte est in-joignable depuis plus de 5 minutes ou plus de 1 heure)
| |
| | | |
− | === Bugs ===
| |
− | Merci de faire parvenir les problèmes à SME-Contribs sur [http://bugs.contribs.org/enter_bug.cgi bugzilla]
| |
− | en sélectionnant le logiciel smeserver-zabbix ou en utilisant un de ces liens :
| |
| | | |
− | {{BugzillaFileBug|product=SME%20Contribs|component=smeserver-zabbix-server|title=server}}{{BugzillaFileBug|product=SME%20Contribs|component=smeserver-zabbix-agent|title=agent}}{{BugzillaFileBug|product=SME%20Contribs|component=smeserver-zabbix-proxy|title=proxy}}
| |
| | | |
| ---- | | ---- |
| [[Category: Contrib/fr]] [[Category: Administration:Monitoring]] | | [[Category: Contrib/fr]] [[Category: Administration:Monitoring]] |