Ad Widget

Collapse

Opinions on Zabbix implementations(migrating from nagios)

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Achmo
    Junior Member
    • Jan 2020
    • 3

    #1

    Opinions on Zabbix implementations(migrating from nagios)

    Hello all. Firstly, I don't know if this is the correct category to write this post, so if the mods think it needs to be moved, please do so.
    We are taking the step from migrating from nagios to zabbix. Generally, this is a long process, because most people say "same checks, same alerts, as Nagios" so you need to dive into nagios, understand the checks and then implement them onto Zabbix. Also I read quite a lot of forums post relating to this topic, and I found the most interesting this one: https://www.zabbix.com/forum/zabbix-...ecks-in-zabbix
    especially the answer from aib, describing the result of a nrpe check:
    Code:
    Example:
    GPING OK – rtt min/avg/max/mdev = 0.021/0.541/0.598/0.541 ms|time=0.541344ms pl=0%
    CPU Usage 98%|c[cpu]=98%;80;95;0;100
    Since we are limited on time, because a new project is starting and we need the checks, I was thinking doing the following:
    1) Use Zabbix itself for all the regular checks(disk, ram, cpu, ping etc.)
    2) In place of nrpe plugins, I was thinking using user parameter with nagios plugins, i.e something like
    Code:
    UserParameter=mail.queue,/usr/lib64/nagios/plugins/check_mailq -w 200 -c 500
    3) Since the returned value will be similar to what I quoted from aib, create a trigger that evaluates this string, and raise an alert if the word "OK" is not in the returned result(or maybe if the word "CRITICAL" is in the string"
    4) When this project is done and we have more time, come back to other projects that we are going to migrate, and rewrite the scripts(or write new ones) so the results are more zabbix friendly.

    So I was wondering if you could give me some opinions on this thought process, especially on points 2) and 3). I know it's not perfect, but I am thinking this is gonna work. Maybe it will be a little difficult to differentiate between warning and critical alerts, but even if we have 1 trigger(so 1 alert which let's say is always high) is enough.

    Sorry for the long post, and I am all open to suggestions.

    Thank you!
  • Achmo
    Junior Member
    • Jan 2020
    • 3

    #2
    Originally posted by splitek
    This may interest you:
    https://www.zabbix.com/documentation...ependent_items
    https://blog.zabbix.com/deep-dive-in...ocessing/8288/
    https://www.zabbix.com/documentation..._preprocessing
    and others...
    https://blog.zabbix.com/javascript-s...ocessing/6901/
    https://blog.zabbix.com/zabbix-3-4-m...-example/5784/

    In short:
    Your can get data from output like in the example, next split it into group of items (dependent items) and use preprocessing to catch only data that you want to assign to particular item.

    Other way I see. If you are only interested in this "OK" string. Use preprocessing to find out if the string have "OK" or not. You can also think about converting string to number - I mean - for OK store 0, for ERROR - 1, for WARNING - 2 and more if you want. That's because from numbers we can plot graph and from strings not.
    Thank you very much for your suggestions. I thought about using depended items but I think I need to give it a better read because I think you can do much more things than I thought.
    Also thank you for your suggestion of converting the string to a number for the graphs. Even though it may sounds simple, it never crossed my mind.
    Thank you!

    Comment

    Working...