Ad Widget

Collapse

Zabbix for large environment setups

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • jix
    Member
    • Feb 2011
    • 73

    #31
    Originally posted by lukemacneil
    I use zabbix in a large environment.

    Number of hosts (monitored/not monitored/templates) 7718
    Number of items (monitored/disabled/not supported) 365383
    Number of triggers (enabled/disabled)[problem/unknown/ok] 288473
    Required server performance, new values per second 861.46

    I use 1 zabbix server and 3 proxies. All blades in the same chassis.
    All running mysql 5.5 for the backend.

    I modified the agent startup script with my own logic for discovery.

    This generally works very well, with the exception of the Availability Report.
    That chokes to death.
    Would you please share your backup solution and if you have any load balance in your database?

    Comment

    • ksb
      Junior Member
      • May 2012
      • 9

      #32
      Hi!
      Which will be the best solution for splitting PostgreSQL database on two raid10 arrays in performance point of view?

      Comment

      • innocent
        Junior Member
        • Dec 2012
        • 12

        #33
        Can somebody share an example/module/script on how to automatically add a new kickstarted proxy (for example with puppet) to the zabbix server with the zabbix api?

        Comment

        • Colttt
          Senior Member
          Zabbix Certified Specialist
          • Mar 2009
          • 878

          #34
          @innocent: you can use autodiscovery!

          @ksb: what do you mean?
          Debian-User

          Sorry for my bad english

          Comment

          • heaje
            Senior Member
            Zabbix Certified Specialist
            • Sep 2009
            • 325

            #35
            Correct me if I'm wrong, but auto discovery won't add a new proxy into the administration-> DM section. I actually need to do this myself and will be writing a script to do it in the somewhat near future. I'd be happy to share it hear when I'm done (it will be in PHP using the API).

            Comment

            • innocent
              Junior Member
              • Dec 2012
              • 12

              #36
              @Colttt, thanks, I will have a look at that.

              I do use auto discovery for detecting new agents in our environment.
              Will try to make a rule for proxies as well.

              Comment

              • innocent
                Junior Member
                • Dec 2012
                • 12

                #37
                @heaje,

                Thats what I also thought. If I'm right In an earlier post in this topic somebody altered the proxy init scripts. And used the api to add the proxies to the zabbix server.

                As we use puppet to configure/manage our servers in our environment, I want to try to do this with puppet in combination with the zabbix api.

                Comment

                • ksb
                  Junior Member
                  • May 2012
                  • 9

                  #38
                  @Colttt
                  I mean, we have 8 x SSD for Zabbix DB server and thinking the best way to utilise these disks. For now we decided:
                  1) softraid
                  2) system on mirror + 2 spares
                  3) pg data on raid1+0 (16K chunks, as said by Intel and shows best perf. with pgbench)
                  4) pg xlog on raid1 + 2 spares
                  It seems okay?

                  Comment

                  • natalia
                    Senior Member
                    • Apr 2013
                    • 159

                    #39
                    Originally posted by justinc
                    I use a lot of external scripts that capture data so I utilize Zabbix sender.(if you can collect a number of values at once, Zabbix sender is very efficient at doing bulk updates)
                    I have modified the frontend to show more than the last 20 issues on the dashboard.
                    I have modified the frontend to reduced the time a trigger stays on the trigger status page when it has returned to an Okay state.
                    Hi,

                    Which zabbix version do you have ?
                    Could you share how your changes for the above ?

                    Thanks a lot !

                    Comment

                    • lukemacneil
                      Junior Member
                      • Jun 2011
                      • 12

                      #40
                      Originally posted by jix
                      Would you please share your backup solution and if you have any load balance in your database?
                      I don't back up the databases (server or proxies), just the templates. If it croaks, then it will have to be rebuild it. I made sure that was well known to management, though I'm sure they'll forget by the day it fails.

                      Comment

                      • lukemacneil
                        Junior Member
                        • Jun 2011
                        • 12

                        #41
                        Originally posted by qix
                        @ lukemacneil : Thanks for the info! Sounds like a great way to do proxy management.
                        You mentioned something about the API creating the host if it doesn't exist yet.
                        I assume that is handled by the PHP script you've mentioned?
                        Correct. The the init script curls a php script, which is what creates the host and assigns the templates based on the environment (test/prod).

                        Here's the function I use to do that:

                        PHP Code:
                        function AddHost($host,$ip,$env){
                                
                        /*
                                        This function will add a host to the zabbix database
                                        based on hostname and IP address. It uses the default 
                                        group "Production Servers" and "Linux" as the template.
                                */

                                
                        try{
                                        
                        $api = new ZabbixApi('http://my_webserver/api_jsonrpc.php''myuser','mypass');
                                }catch(
                        Exception $e){
                                        echo 
                        $e->getMessage();
                                        exit;
                                }
                        //end try

                                
                        $port='10050';
                                
                        $useip='1';
                                if(
                        $env =='p'){
                                        
                        $groups=array(array("groupid"=>7));
                                }else{
                                        
                        $groups=array(array("groupid"=>6));
                                }
                                
                        $templates=array(
                                        
                        "templateid"=>10021
                                
                        );

                                
                        $result=$api->hostCreate(
                                        array(
                                                
                        "host"=>$host,
                                                
                        "interfaces"=>array(
                                                        
                        'type'=>1,
                                                        
                        'main'=>1,
                                                        
                        'useip'=>1,
                                                        
                        'ip'=>"$ip",
                                                        
                        'dns'=>"$host",
                                                        
                        'port'=>'10050'
                                                
                        ),
                                                
                        "groups"=>$groups,
                                                
                        "templates"=>$templates
                                        
                        )
                                );

                        }
                        //end function 

                        Comment

                        • emz
                          Junior Member
                          • Mar 2014
                          • 20

                          #42
                          Is using Zabbix Proxy beneficial for the performance of the main Zabbix database?
                          Last edited by emz; 09-05-2018, 20:17.

                          Comment

                          • kloczek
                            Senior Member
                            • Jun 2006
                            • 1771

                            #43
                            Originally posted by emz
                            Is using Zabbix Proxy beneficial for the performance of the main Zabbix database?
                            No
                            Using proxies is about scaling up process of collecting monitoring data from monitored hosts.
                            Database queries speed/latency impacts process of processing those data on server (evaluating those data against trigger.definitions, processing alarms data, storing monitoring data in history tables, create trends data and few more which are done only on the zabbix server).
                            http://uk.linkedin.com/pub/tomasz-k%...zko/6/940/430/
                            https://kloczek.wordpress.com/
                            zapish - Zabbix API SHell binding https://github.com/kloczek/zapish
                            My zabbix templates https://github.com/kloczek/zabbix-templates

                            Comment

                            • ik_zelf
                              Member
                              • Feb 2015
                              • 60

                              #44
                              Originally posted by kloczek

                              No
                              Using proxies is about scaling up process of collecting monitoring data from monitored hosts.
                              Database queries speed/latency impacts process of processing those data on server (evaluating those data against trigger.definitions, processing alarms data, storing monitoring data in history tables, create trends data and few more which are done only on the zabbix server).
                              With current version (v5) it does help. Now you can do high frequency monitoring of items and -for example- filter values so only changes are passed to the server (optionally with a heartbeat)
                              This allows for quick responses and offloads quite a lot of work to the proxies.

                              Comment

                              • kloczek
                                Senior Member
                                • Jun 2006
                                • 1771

                                #45
                                Originally posted by ik_zelf
                                With current version (v5) it does help. Now you can do high frequency monitoring of items and -for example- filter values so only changes are passed to the server (optionally with a heartbeat)
                                This allows for quick responses and offloads quite a lot of work to the proxies.
                                That type of filters are available since 4.8.x.
                                http://uk.linkedin.com/pub/tomasz-k%...zko/6/940/430/
                                https://kloczek.wordpress.com/
                                zapish - Zabbix API SHell binding https://github.com/kloczek/zapish
                                My zabbix templates https://github.com/kloczek/zabbix-templates

                                Comment

                                Working...