Integrating with Zabbix


Zabbixis an open-source monitoring solution that monitors various parameters of a network and the health and integrity of servers, virtual machines, applications, services, databases, websites, the cloud, and so on.

Configure an integration with Zabbix, to view the event, metric, and topology data from Zabbix in the following products and derive actionable insights:

  • BMC Helix Operations Management
  • BMC Helix Discovery
  • BMC Helix AIOps


As a tenant administrator, perform the following steps to integrate with Zabbix, verify the integration, and view the collected data in various BMC products.

Connector steps.png


Supported versions

This connector supports the following versions of Zabbixf or data collection:

  • 6.4 (non-containerized)
  • 6.2 (containerized, non-containerized)
  • 6.0 (non-containerized)
  • 5.4 (non-containerized)
  • 5.0 (non-containerized)
  • 4.0 (non-containerized)

Planning for the connection

  • Depending on the location (SaaS, on-premises) of the third-party product, choose one or more BMC Helix Intelligent Integrations deployment modes and review the corresponding port requirements. For information about various deployment modes and port requirements, see Deployment-scenarios.
  • Based on the deployment modes, use the BMC Helix Intelligent Integrations SaaS deployment or the BMC Helix Intelligent Integrations on-premises gateway or both. For more information about the gateway, see Deploying-the-BMC-Helix-Intelligent-Integrations-on-premises-gateway.
  • The on-premises gateway must be able to reach the third-party product on the required port (default is 80).

In the preceding list, third-party product refers to Zabbix 

Configuring the connection with Zabbix

  1. Access BMC Helix Intelligent Integrations:
    • BMC Helix Intelligent Integrations SaaS – Log on to BMC Helix Portal, and click Launch on BMC Helix Intelligent Integrations.
    • BMC Helix Intelligent Integrationson-premises gateway – Use the following URL to access BMC Helix Intelligent Integrations:
      https://<hostName>:<portNumber>/swpui
  2. On the CONNECTORS tab, clickadd_icon.pngin the SOURCES panel.
  3. Click the 

    Zabbix

     tile.

  4. Specify the source connection details:
    1. Specify a unique instance name.

      Best practice

      We recommend that you specify the instance name in the following format: 

      <sourceType>_<sourceControllerServerName>{_<InstanceQualifier>}                    

      The instance qualifier helps you to distinguish among the multiple instances configured from the same source server; for example, Zabbix_Host_PROD and Zabbix_Host_TEST.


    2. Specify the Zabbix host name. 
    3. Specify the Zabbix HTTP or HTTPS port number depending on the connection protocol (default value is 80).
    4. Select the HTTPS option to use an HTTPS connection to the Zabbix  host.

      Warning

      We recommend that you do not select the Allow Unsigned Certificate option in a production environment.  You might want to select this option to allow unsigned certificates in a test environment. See the Zabbix  documentation to learn how to install SSL certificates.

    5. Specify the number of maximum concurrent REST API requests that should be executed during a data collection schedule (default value is 5).
    6. Do one of following depending on the Zabbix deployment you are using (containerized or non-containerized) and whether you have customized the Zabbix URL:
      • If you are using containerized deployment of Zabbix and you have not customized the URL, select the Customized Zabbix URL option and leave the Custom Path Segment text box blank.
      • If you have customized the frontend URL that you use to access Zabbix (containerized or non-containerized), select the Customized Zabbix URL option and specify the custom path segment in the Custom Path Segment text box.
        For example, if the frontend URL is h ttp://pun-aus-us/share/my_zabbix/api_jsonrpc.php, enter share/my_zabbix .
    7. Specify the user name and password. Ensure that the specified user can access the Zabbix  REST API.
  5. Click VALIDATE AND CREATE.
    The specified connection details are validated and the source connection is created in the Source Connection list.
  6. Select the source connection that you created from the list if it is not selected already.

    Important

    The destination host connection is created and configured automatically for each tenant when the source connection is created.

  7. Ensure that the options for the datatypes for which you want to collect data are selected.
  8. Click a data type and specify the configuration parameters in the Collectors section as described in the following table.

    Important

    In addition to the parameters described in the following table, you can use some more parameters to tailor the amount of data you want to collect from Zabbix. For more information, see Handling metrics data from Zabbix by using additional collection parameters.

    The [confluence_table-plus] macro is a standalone macro and it cannot be used inline. Click on this message for details.

  9. Click CREATE COLLECTORS to create the required collector streams for the selected data types
  10. Click a data type and specify the configuration parameters in the Distributors section as described in the following table:
    Parameter name
    Description
    Max Batching Size
    Specify the maximum number of data items to send in a single POST request to the destination API.
    The batch size 
    depends on the destination’s ability to buffer the incoming data.Default: 250
    Max Batching Delay
    Specify the maximum time (in seconds) to wait before building a batch and processing.Default: 3 seconds 
    Base Retry Delay
    Specify the initial time (in seconds) for which to wait before retrying to build a batch and processing.
    The waiting time increases in the following sequence: n1, n2, n3, and so on, where n indicates the number of seconds.Default: 2 secondsExample:Base Retry Delay is set to 2 seconds.Retry is performed after 2, 4, 8, 16, ... seconds.
    Max Intra-Retry Delay

    Specify the maximum limit for the base retry delay. Default: 60 secondsExample:Max Intra-Retry Delay is set to 60 seconds.
    Base Retry Delay is set to 2 seconds.Retries are performed 2, 4, 8, 16, 32,... seconds later.
    Max Retry Duration
    Specify the total time for retrying a delivery. For REST destinations, a delivery is a batch of data items in one POST request. Default: 5 minutesExample:Max Retry Duration is set to 8 hours.
    Base Retry Delay is set to 2 seconds.Requests are sent for 2+4+8+16+32+64+132... until 8 hours in total duration is reached. After that, no subsequent attempts are made to retry the delivery.The assumption here is that if there is an outage or other issue with the destination tool, recovery should take less than the value of the Max Retry Duration parameter to be completed.
    Attributes To Be Dropped When Updating Events
    Specify the event attributes that you do not want to be updated in BMC Helix Operations Managementwhen events are updated. For example, if you do not want an event's severity, source address, source category, and subcategory to be updated in BMC Helix Operations Management , you need to specify those attributes in a comma-separated format: severity,source_address,source_category,source_subcategory .Important:You can obtain the event attribute names in BMC Helix Operations Management, by exporting any event data in JSON, BAROC, XML, or CSV format . The exported file contains all attributes of the event data, and from there you can identify the attributes to be dropped. 
  1. Click CREATE DISTRIBUTORS to create the required distributor streams for the selected data types.
  2. Click one of the following buttons:

    • SAVE STREAM : Click this button if you want to edit the integration details before creating the instance. After you save the stream, the instance that you just created is listed in the SOURCES panel. Move the slider to the right to start the data stream.
    • SAVE AND START STREAM : Click this button if you want to save the integration details and start receiving data immediately.

    ImportantFor a data stream, the Run Latency (max/avg), Items (Avg per Run), and Last Run Status columns on the Streams page might show No Runs as the status during the data collection process. After the completion of the process, these columns are updated with an appropriate status.

    For more information about data streams, see Starting-or-stopping-data-streams.


Handling metrics data from Zabbix by using additional collection parameters

Use the following parameters to tailor the amount of data you want to collect from Zabbix:

Parameter 

Default value

Description

storeMetadata

false

Fetches hosts and its related data and stores it in metadata if the value is set to true.

For example: “storeMetadata”:true

Setting this parameter to true is not recommended for large data.

querySize

25

Fetches data in batches. Each batch contains the number of data items that you set for this parameter.

For example, if there are 5 hosts and each host has 100 data items, the total number of data items to be fetched would be 500. If you set queysize to 50, the data is fetched in 10 batches, each batch containing 50 data items.

Depending upon the Zabbix server configuration, you can increase or decrease the value of the parameter.

monitoredItems

true

Fetches only the actively monitored items of hosts from Zabbix if the value is set to true.

For example, “monitoredItems”:true

includeItemsWithoutGraph 

true

Fetches only the items that have live graphs in Zabbix if the value is set to false.

For example, “includeItemsWithoutGraph”:false

hostsLimit

50

Fetches data for hosts in batches. Each batch contains the number of hosts that you set for this parameter. 

Data is fetched for one batch of host and then for another batch until processing for all the hosts is completed.

For example, if there are 5 host groups and each host group in Zabbix has 100 hosts. the total number of hosts would be 500.

If you set hostsLimit to 50, the hosts will be processed in 10 batches, each containing 50 hosts.

Depending upon the Zabbix server configuration, you can increase or decrease the value of the parameter.

monitoredHosts

true

Fetches data only for the actively monitored hosts if the value is set to true.

For example, “monitoredHosts”:true

To modify the value of the metrics parameters, perform the following steps:

  1. Click icon_gear.png Configure Mediator adjacent to Zabbix.
  2. Scroll down and expand the Zabbix Metrics section.
  3. Enable the Edit JSON option under the Collector Configuration tab.
    You can see the JSON format of collector configuration parameters.
  4. Search and edit the parameters you want to modify. 
  5. Click SAVE.
  6. Disable the Edit JSON option and ensure that the Zabbix parameters are not getting displayed. 
  7. Click SAVE & CLOSE.


Verifying the integration

In BMC Helix Intelligent Integrations , on the SOURCES panel, confirm that the data streams for the integration you created are running. Data streaming is indicated by moving colored arrows.

Zabbix_AllStreams.png

  • A moving dark blue arrow (EventsStream_Icon.png) indicates that the event stream is running. Event data will be pushed according to the configured Collection Schedule interval.
  • A moving red arrow (MetricsStream_Icon.png) indicates that the metric stream is running. Metric data will be pushed according to the configured Collection Schedule interval.
  • A moving light blue arrow ( TopologyStream_Icon.png) indicates the topology stream is running. Topology data will be pushed according to the configured Collection Schedule interval.

Updating an existing Zabbix connector for the metric data type

  1. On the SOURCES panel, select the existing Zabbix connector, and then click the dot icon in the center of the metric stream, and  select  Delete .
  1. Clickadd_icon.pngon the SOURCES panel.
  2. From the Source Connection list, select the existing Zabbix source.
  3. In the Data Types section, clear the Zabbix Events and Zabbix Topology check boxes if selected.
  4. In the Collectors section, expand Zabbix Metrics.
  5. Configure the parameters as required.
  6. Click CREATE COLLECTORS to create the required collector metric stream.
  7. In the Distributors section, expand Zabbix Metrics.
  8. Configure the parameters as required.
  9. Click CREATE DISTRIBUTORS to create the required distributor stream for the metric data type.
  10. Click one of the following buttons:
    • SAVE STREAM : Click this button if you want to edit the integration details before creating the instance. After you save the stream, the instance that you just created is listed in the SOURCES panel. Move the slider to the right to start the data stream.
    • SAVE AND START STREAM : Click this button if you want to save the integration details and start receiving data immediately.

Viewing data in BMC Helix applications

Important

If the event or metric data is ingested by using BMC Helix Intelligent Integrations, and the topology data is ingested through some other means, all the use cases in BMC Helix AIOps might not work as expected because the external IDs generated by BMC Helix Intelligent Integrations and BMC Helix Discovery differ. In addition, host name might differ in both the products. 

To view events in BMC Helix Operations Management

  1. In BMC Helix Operations Management, select Monitoring > Events.
  2.  Filter the events by the ZabbixEvent class.

Important

If an event does not include the source's host name from which the event has been received, the  Host  column on the Events page shows the name of the computer where Zabbix   is installed.

Incoming events from Zabbix are processed in BMC Helix Operations Management   through a set of deduplication rules to determine whether the incoming event is a duplicate event or a new event. For more information, see Event-deduplication-suppression-and-closure-for-reducing-event-noise.

For information about events, see Monitoring and managing events .

To view metrics in BMC Helix Operations Management

  1. In BMC Helix Operations Management, select Monitoring > Devices.
  2. Click the links for the required device.
  3. On the Monitors tab, click the required monitor.
    The Performance Overview tab shows the metrics graph. For information about metrics, see Viewing collected data .

To view the topology data in BMC Helix Discovery

In BMC Helix Discovery, select Explore > Data, and click <count> Import Records in the Miscellaneous section. The Import Record List page shows the CI records received from Zabbix. For information about records, see Managing your IT infrastructure .

To view services and situations in BMC Helix AIOps

Before you view services and situations in BMC Helix AIOps, create a Business Service model in BMC Helix Discovery. For information about creating models, see Managing models .  

In BMC Helix AIOps, on the Overview page, view the services and situations for the event and topology data received from Zabbix.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*