Moviri Integrator for BMC Helix Capacity Optimization - Entuity


“Moviri Integrator for BMC Helix Continuous Optimization – Entuity” allows extracting data from the Entuity network monitoring tool into BMC Helix Continuous Optimization for relevant capacity metrics.

The integration supports the extraction of both performance and configuration data across network components monitored by Entuity (also marketed as “Entuity Network Monitoring and Analytics for BMC ProactiveNet Performance Management” by BMC). Furthermore the connector is able to replicate relationships and logical dependencies among entities defined in Entuity into BMC Helix Continuous Optimization, thus enabling grouping and multiple perspectives.

The connector supports configuration parameters that allow devices filtering, metrics filtering, historical recovery, limiting data volume processed in a single run and many other settings.

The documentation is targeted at BMC Helix Continuous Optimization administrators, in charge of configuring and monitoring the integration between BMC Helix Continuous Optimization and Entuity.

Requirements

Official name of data source software

“Entuity” (product marketed by Entuity company)

or

“Entuity Network Monitoring and Analytics for BMC ProactiveNet Performance Management” (product marketed by BMC through Market Zone program)

or

“Entuity for TrueSight Operations Management” (product marketed by BMC through Market Zone program)

Supported versions of data source software

  • Entuity Network Monitoring and Analytics Version 9.0.00 to 14.0.00
  • Entuity for TrueSight Operations Management 14.5.00 to 17.00
  • Entuity 12.5 to 17.0

Supported configurations of data source software

Moviri – Entuity Extractor requires the configuration of the Data Export component. The supported DBMS is MySQL.

Datasource Check and Configuration

Preparing to connect to the data source software

In order to make data available to third party solutions, Entuity provide a data export module, which can export different (configurable) datasets to an external MySQL database.

The integration between BMC Helix Continuous Optimization and Entuity takes advantage of this feature. If there are active export jobs already in place, the BMC Helix Continuous Optimization-job can re-use the existing database instance; otherwise a MySQL database instance has to be identified in order to host a database schema in which Entuity job will write.

9.jpg

 

This is the step-by-step procedure to enable the daily data export:

  1. Create an empty MySQL Database (default name is eye_bco) that is reachable from Entuity server and BMC Helix Continuous Optimization ETL Engine
  2. Check which version of Entuity is installed: from Entuity menu choose Help → About Entuity

    Ent version.png

  • Open the package: 
    “Moviri Integrator Version 2.5.00 for Helix Capacity Optimization.zip”
    and extract the file  “sw_data_export_def_bco_*****.cfg “ according to your Entuity version and installed modules:
    - Use sw_data_export_def_bco_165_QoS.cfg for Entuity version>=16.5 and QoS module enabled
    - Use sw_data_export_def_bco_165_noQoS.cfg for Entuity version>=16.5 and QoS module disabled
    - Use sw_data_export_def_bco_16orLess_QoS.cfg for Entuity version<=16.0 and QoS module enabled
    - Use sw_data_export_def_bco_16orLess_noQoS.cfg for Entuity version<=16.0 and QoS module disabled
  1. The extracted cfg file contains Entuity data export configuration (datasets and job), which enable the daily data export for BMC Helix Continuous Optimization. Open it, edit the job connection parameters (see below) and rename the file to sw_data_export_def_bco_Entuity.cfg

    # BMC Helix Continuous Optimization Export Job configuration 

    [DataExportJob ~BCO Export Job]
    Description=BCO Export Job

    DbName=eye_bco                      #Enter here the name of MySQL export DB
    DbUser=<username>                 #Enter here username of MySQL export DB
    DbPassword=<password>          #Enter here password of MySQL export DB
    DbServer=<hostname>:<port>   #Enter here hostname and port of MySQL export DB

    ViewName=All Views

    Backfill= 604800                         #Enter time period (in seconds) of how far data
    #export should go to get data

    Ageout=1209600                       #Enter time period (in seconds) of how long data 
                                                      #should be retained

    Schedule=Daily

    Datasets=~BCO Devices,~BCO Modules,~BCO Processors,~BCO Processor Utilization,~BCO Processor Utilization Avg,~BCO Device Memory Utilization,~BCO Ports,~BCO Port Traffic,~BCO Port Fault,~BCO Router Resources,~BCO Switch Resources,~BCO Device View Membership,~BCO Memories,~BCO Memory,~BCO View,~BCO Latency,~BCO SNMP RespTime,~BCO MonitoredDevice,~BCO ClassMap,~BCO PolicyMap,~BCO QoS Class Map,~BCO Root

    IsEnabled=0

    For more details please see Entuity Data Export guide
  2. Place configuration file “sw_data_export_def_bco.cfg” file into the ‘etc’ folder under Entuity/ENMA installation folder (e.g. /opt/entuity/etc).
  3.  Edit the ‘etc/sw_data_export_def_site_specific.cfg’ file to add the following line: 
    !sw_data_export_def_bco.cfg
  4. Shut the Entuity/ENMA package/service down if it is not already down.
  5. Run the ‘install/configure’ utility making sure that the Data Export module is enabled.
  6. Start the Entuity/ENMA package running.
  7. Log into the web interface using the ‘’admin” user (default password is “admin”). Display the list of default Data Export jobs using Administration > Data Export > Jobs . This list should look as follows:

    11.png

    The configuration of the “~BCO Export Job” can be viewed and should look as follows:

    12.png

  8. Go back to the Jobs page. An export can be initiated manually by clicking the “Run” for the “~BCO Export Job”. Check the status of the job by clicking “History”. If the job hasn’t finished try again in a minute or so.
  9. The data will have been written to tables the export database.
  10. The automatic daily scheduled running of the ~BCO Export Job can be enabled by checking the appropriate box on the Jobs page. It is preconfigured to maintain a 2 weeks rolling window of statistics and the first time the export is run it will export the previous 7 days. In a multi EYE-Server deployment the procedure needs to be applied on all EYE-Severs whose monitored devices have to be imported into BMC Helix Continuous Optimization. In this case, each EYE-Server deployment needs to target a different database. Multiple databases can be hosted by the same server. 

    image2020-4-30_17-34-50.png


Connector configuration

Connection parameters configuration

The Entuity ETL needs to be configured in order to successfully connect to MySQL export database. Select the following properties under the ETL run configuration, Connection parameters panel:

  • Database type: “Other database”
  • JDBC driver: your MySQL JDBC driver of choice, that must be present on the ETL engine in the following path: <<

    BMC Helix Continuous Optimization

     installation directory>>/etl/libext  (e.g. /opt/bmc/BCO/etl/libext)

Entuity_10_7_connection_parameters.jpg

Multiple data export job configuration

Entuity supports environments with different Entuity server instances, in order to manage them in BMC Helix Continuous Optimization, it must be performed the same data export configuration procedure (see par. 3.6) in all the Entuity instances and all the instances are properly configured through the Entuity page Administration -> Multi-Server Administration (for detail see Entuity documentation).

The BMC Helix Continuous Optimization export jobs (one on each Entuity server) can write data

  • in the same MySQL database (the ETL consider each Job as a different source) -> one ETL instance is enough to read all data

    15.png
  • in different  MySQL database -> is needed one ETL instance for each MySQL database (different configurations in the connection parameters panel, see par. 3.6.7) and different configurations in Entuity export file (see par 3.6.4)
  • Is NOT supported to configure export jobs of two different Entuity schema versions (Entuity 12.5-14.5 and EYE 2012) in the same MySQL database.

Connector configuration attributes

 

Property Name

Value Type

Required?

Default

Description

Filters on Entuity servers/Devices to import

Entuity server White List (separator ;)

String

No

 

Semicolon-separated list of Entuity servers whose data is going to be imported, SQL wildcard “%” and “_”  can be used .
Empty list means all servers.

Entuity server Black List (separator ;)

String

No

 

Semicolon-separated list of Entuity servers whose data is not going to be imported, SQL wildcard “%” and “_”  can be used. 
Empty list means none.

Devices White List (separator ;)

String

No

 

Semicolon-separated list of Devices whose data is going to be imported, SQL wildcard “%” and “_”  can be used. 
Empty list means all servers.

Devices Black List (separator ;)

String

No

 

Semicolon-separated list of Devices whose data is not going to be imported, SQL wildcard “%” and “_”  can be used. 
Empty list means none.

Interfaces White List (sep ;)

String

No

 

Semicolon-separated list of devicename:interface (name or description) whose data is going to be imported, SQL wildcard “%” and “_”  can be used .
Empty list means all interface.

Interfaces Black List (sep ;)

String

No

 

Semicolon-separated list of devicename:interface (name or description) whose data is not going to be imported, SQL wildcard “%” and “_”  can be used .
Empty list means none.

QoS class White List (sep ;)

String

No

 

Semicolon-separated list of QoS class whose data is going to be imported, SQL wildcard “%” and “_”  can be used. 
Empty list means all classes.

QoS class Black List (sep ;)

String

No

 

Semicolon-separated list of QoS classes whose data is not going to be imported, SQL wildcard “%” and “_”  can be used. 
Empty list means none.

Folder White List (sep ;)

String

No

 

Semicolon-separated list of Folders whose data is going to be imported, SQL wildcard “%” and “_”  can be used. 
Empty list means all folders.

Folder Black List (sep ;)

String

No

 

Semicolon-separated list of Folders whose data is not going to be imported, SQL wildcard “%” and “_”  can be used. 
Empty list means none.

Filters on metric to import

Collect devices system resources utilization metrics

Boolean

Yes

Yes

Collect system metrics like CPU, memory, backplane utilization and memory largest free

Collect interfaces traffic metrics

Boolean

Yes

Yes

Collect for each interface metrics like inbound and outbound traffic in bps and utilization in %

Collect interfaces error metrics (basic)

Boolean

Yes

Yes

Collect for each interface one aggregated errors metric that summarize errors and discards

Collect interfaces error metrics (detail)

Boolean

Yes

No

Collect for each interface the following errors metrics inbound discards and errors % and outbound discards and errors %

Collect virtual interfaces (Traffic metrics)

Boolean

Yes

No

Collect also traffic metrics on virtual interfaces (error metrics are not imported)

Collect loopback interfaces

Boolean

Yes

No

Collect data also for loopback interfaces

Collect latency and response time

Boolean

Yes

No

Collect devices SNMP response time and ICMP latency

Collect interfaces QoS bitrate and drops

Boolean

Yes

No

Collect interfaces QoS metrics (Pre-policy and post-policy bitrate and drop %)

List of CO metric to import (separator ; -  empty= all metrics)

String

No

 

Fine-grain metric filter: if not empty collect only CO metric specified in the list

Filters on device type to import

Extract device of category "Managed Host"

Boolean

Yes

No

Import devices type: “Managed host”

Extract device of category "VM Platform"

Boolean

Yes

No

Import devices type: “VM Platform”

Extract device of category "Unclassified"

Boolean

Yes

No

Import devices type: “Unclassified”

 

 

 

Property Name

Value Type

Required?

Default

Description

Entity naming

Use hostname as sysname instead of Entuity device name               

Boolean

Yes

No

Map BMC Helix Continuous Optimization system name to Entuity Stream Attribute “System Name” (in Entuity interface under Explorer > Managed Host: %selected_device% >  Advanced) instead of Entuity device name

Entity relationships

Ignore Entuity views relationships - attach all devices to root domain

Boolean

Yes

No

Attach all systems to ETL root domain, by default the ETL extracts the Entuity relationships information

Time management

Extract hour data (do not load 5min detail)

Boolean

Yes

false

Import 1 hour as maximum time detail and collect different statistics (avg, max, min, sum, count), compared to 5 min detail, it save disk space.

Max days to extract (0=no limits)

Number

No

0

Limit max number of days extracted in a single execution

Hours to extract in a single query

Number

No

24

To prevent overloading Entuity export db, the extraction query can be split in many small query on the basis of this parameter

Default value for lastcounter

String

No

 

If lastcounter for a specific Entuity server is not set, use this entry. Please insert a date subsequent to the start of the export job

Time management: Recovery mode

Recovery mode active

Boolean

Yes

false

When recovery is active, ETL extracts data in the time window specified by the next two properties and lastcounters are not updated

Recovery from date (yyyy-mm-dd hh24:mi:ss)

String

No

 

“From” timestamp when recovery mode is active. Date format is specified between the brackets

Recovery to date (yyyy-mm-dd hh24:mi:ss)

String

No

 

“To” timestamp when recovery mode is active. Date format is specified between the brackets

ent props.png

Guidelines to choose the right ETL configuration

In order to set the ETL configuration that match your needs, in this paragraph some common use cases are presented.

Scenario 1: “Typical” network capacity analysis and planning

Goal: ensure the right network capacity (traffic and device resource utilization)
Environment size: medium/big
Environment peculiarity: quite steady
Planning time period:  long (6-12 months)
Data resolution: hour
 Outputs:
Analyses and forecast on network traffic growth and threshold violation date

ent10.jpg

Scenario 2: “in-depth” network capacity analysis and planning for particular services/applications/devices

Goal: react on short-term growth (traffic and device resource utilization)
Environment size: small
Environment peculiarity:   new service introduction / across a change of application or devices
Planning time period:  short (weeks)

Data resolution: detail
Outputs: Growth trend, short-term forecast, correlation between resource utilization and service business drivers (users, transactions)

ent11.jpg

Scenario 3: Quality network capacity analysis and planning

Goal: ensure the right network capacity and quality
Environment size: medium
Environment peculiarity: quite steady
Planning time period:  medium-long (3-12 months)

Data resolution: hour
Outputs: Analyses and forecast on network traffic and errors on interfaces, correlation between errors and device usage metrics

 

ent12.jpg

The choice of correct configuration brings you benefits also in terms of shorter execution time and saved disk space on database.

Every Entuity ETL instance configuration applies to all jobs/devices selected, if there are different scenario needs for different jobs/devices, is recommended to create many ETL instances with different configuration which filters on particular jobs/devices (e.g. There are both a big and stable environment (scenario 1) and the introduction of a new service (scenario2))

Data volume considerations

The following table is a reference to estimate the data volume produced daily by Entuity  ETL for each device, interface and module based on which metric filter in ETL configuration is active (see “Filters on metric to import” in par. 5.3)

 

Metric type

Component

ETL filters on metric to import

Daily detail samples

Daily hour samples

Performance

Device

System resources utilization metrics

2880

240

Device

no filter

3

3

Device

Latency and response time

576

48

Interface

Interfaces traffic metrics

1152

96

Interface

Interfaces error metrics (detail)

1152

96

Interface

Interfaces error metrics (basic)

288

24

Interface

Interfaces QoS bitrate and drops

1152

96

Configuration

Device

no filter

13

13

Module

no filter

2

2

Interface

no filter

5

5

 

As a reference, it has been chosen a device with 24 active interfaces

 

Device with 24 active interfaces

ETL filters on metric to import

Daily detail samples

Daily hour samples

System

3594

474

System+traffic

30666

2682

System+traffic+errors basic

37578

3258

System+traffic+errors detail

58314

4986

System+traffic+QoS (5 CoS)

138714

11994

 

In a data center with 3 network interfaces for each server and devices with 24 interfaces, the volume of samples collected using System+ traffic filter (as in par 5.3.1 – scenario 1) is approximately :

 

Server number

Network interfaces needed

Network devices  needed

Daily detail samples (Millions)

Daily hour samples (Millions)

100

300

12,5

0,4

0,0

1000

3000

125

3,8

0,3

10000

30000

1250

38,3

3,4

100000

300000

12500

383,3

33,5

Historical data extraction

In order to perform a historical recovery of data, please use “recovery mode properties” settings:
 Recovery mode active= true and filling the two properties “from date” and “to date” in order to specify the time window. When recovery mode is active, the lastcounter will not be updated.

If the ETL is newly created and has no lastcounter defined, the “default lastcounter” is used.

The pre-condition for an historical extraction is the presence of data inside the Entuity export DB.

Entuity_10_7_time_management.JPG

Supported Platforms

For all metrics imported by the ETL and described below in this section, the following apply:

  • Supported 

    BMC Helix Continuous Optimization

     Entity Type: Network device, Router, Switch, Firewall

Troubleshooting

For ETL troubleshooting, please refer to official BMC documentation available here.

Configuration and Performance Metrics Mapping

The ETL connects to the Entuity data export DB and extracts data from a set of defined tables. The metrics supported by the ETL are stored in tables populated by the job “~BCO Export Job”.

There are some differences in the data model between Entuity 12.5 or later versions and EYE 2012, in the following tables are present two columns that specify which metrics belongs to which version

 Performance metrics

 

Entuity  component

Entuity Stream

Entuity Metric

CO Dataset

CO Metric

Factor

 

 

PortEx

portTrafficRateChain

inTrafficRate/inSpeed

SYSNET

BYIF_IN_UTIL

1

 

PortEx

portTrafficRateChain

outTrafficRate/outSpeed

SYSNET

BYIF_OUT_UTIL

1

 

PortEx

portTrafficRateChain

inTrafficRate

SYSNET

BYIF_IN_BIT_RATE

1

 

PortEx

portTrafficRateChain

outTrafficRate

SYSNET

BYIF_OUT_BIT_RATE

1

 

PortEx

portFaultChain

inDiscards

SYSNET

BYIF_IN_PKT_DISC_PCT

0,01

 

PortEx

portFaultChain

inFault

SYSNET

BYIF_IN_PKT_ERR_PCT

0,01

 

PortEx

portFaultChain

outDiscards

SYSNET

BYIF_OUT_PKT_DISC_PCT

0,01

 

PortEx

portFaultChain

outFault

SYSNET

BYIF_OUT_PKT_ERR_PCT

0,01

 

PortEx

portFaultChain

greatest(swc_inFault,swc_outFault,swc_inDiscards,swc_outDiscards)

SYSNET

BYIF_PKT_ERR_PCT

0,01

 

PortEx

classMapStream

classMapPrePolicyBitRate

SYSNET

BYIFCLASS_PREPOLICY_BIT_RATE

 

 

PortEx

classMapStream

classMapPostPolicyBitRate

SYSNET

BYIFCLASS_POSTPOLICY_BIT_RATE

 

 

PortEx

classMapStream

classMapDropPkt64/ classMapPrePolicyPkt64

SYSNET

BYIFCLASS_DROP_PCT

 

 

PortEx

classMapStream

classMapNoBufDropPkt64/classMapPrePolicyPkt64

SYSNET

BYIFCLASS_DROP_NOBUFFER_PCT

 

 

Processor

processorUtilChain

CPUUtil

SYSGEN

BYCPU_CPU_UTIL

0,01

 

DeviceEx

unifiedDeviceCPU_5min

averageDeviceProcessorUtilPercent

SYSGEN

CPU_UTIL

0,01

 

DeviceEx

unifiedDeviceMemory_5min

averageDeviceMemoryUsedPercent

SYSGEN

MEM_UTIL

0,01

 

DeviceEx

ICMPLatency5MinuteRollup

averageLatency5Minute

NETDEV

ICMP_LATENCY

 

 

DeviceEx

devResponseTime

snmpResponseTimeAverage

NETDEV

SNMP_RESPONSE_TIME

 

 

DeviceEx

devResponseTime

snmpFailureRate

NETDEV

SNMP_FAILURE_RATE

 

 

memory

memoryStatusChain

memoryFreeContig (I/O)

NETDEV

MEM_IOALLOCATED_LARGEST_FREE

1

 

memory

memoryStatusChain

memoryFree (I/O)

NETDEV

MEM_IOALLOCATED_FREE

1

 

memory

memoryStatusChain

memoryFreeContig

NETDEV

MEM_CPUALLOCATED_LARGEST_FREE

1

 

memory

memoryStatusChain

memoryFree (PROCESSOR)

NETDEV

MEM_CPUALLOCATED_FREE

1

 

memory

memoryStatusChain

memoryUsed (I/O)

NETDEV

MEM_IOALLOCATED_USED

1

 

memory

memoryStatusChain

memoryUsed (PROCESSOR)

NETDEV

MEM_CPUALLOCATED_USED

1

 

Switch Device

switchBusUtilClientChain

systemBusUtil

NETDEV

BACKPLANE_UTIL

0,01

 

PortEx

 

Physical ports with operational status UP

NETDEV

NETIF_UP_NUM

 

 

PortEx

 

Physical ports with operational status DOWN

NETDEV

NETIF_DOWN_NUM

 

 

PortEx

 

Physical ports with operational status OTHER 

NETDEV

NETIF_OTHER_NUM

 

 

PortEx

 

Ports (physical+virtual) with operational status UP

NETDEV

NETIF_PV_UP_NUM_C

 

 

PortEx

 

Ports (physical+virtual) with operational status DOWN

NETDEV

NETIF_PV_DOWN_NUM_C

 

 

PortEx

 

ports(physical+virtual)  with operational status OTHER 

NETDEV

NETIF_PV_OTHER_NUM_C

 

 

 

Configuration metrics

 

Entuity  component

Entuity Stream

Entuity Metric

CO Dataset

CO Metric

 

 

DeviceEx

chassisInventory

sysLocation

SYSGLB

LOCATION_SITE

 

DeviceEx

chassisInventory

sysDescr

SYSGLB

DESCRIPTION

 

DeviceEx

 

devicePowerConsumption

SYSGLB

PWR_CONSUMPTION

 

DeviceEx

 

device type

SYSGLB

NETDEV_CATEGORY

 

DeviceEx

 

devManufacturer

SYSGLB

HW_VENDOR

 

DeviceEx

 

devModel

SYSGLB

HW_MODEL

 

DeviceEx

 

softwareVersion

SYSGLB

SW_VER

 

DeviceEx

 

dev polled ip addr

SYSGLB

NET_IP_ADDRESS

 

DeviceEx

chassisInventory

chassis sysname

SYSGLB

HOST_NAME

 

memory

 

memorySize

SYSGLB

TOTAL_REAL_MEM

 

Module

 

moduleName

NETDEV

BYSLOT_MODULE_NAME

 

Module

 

moduleDescr

NETDEV

BYSLOT_MODULE_DESCR

 

Port

 

Physical/Virtual interface

SYSNET

BYIF_VIRTUAL_INDICATOR

 

Port

 

Administrative status

SYSNET

BYIF_ADMIN_STATUS

 

Port

 

Duplex status

SYSNET

BYIF_DUPLEX_STATUS

 

Port

 

Spare

SYSNET

BYIF_SPARE_STATUS

 

Port

 

portOperationalStatus

SYSNET

BYIF_STATUS

 

Port

 

ifDescr

SYSNET

BYIF_DESC

 

Port

 

count (physical)

SYSNET

NETIF_NUM

 

Port

 

count(virtual)

SYSNET

NETVIF_NUM

 

Port

 

max(swc_portInSpeed,swc_portOutSpeed)

NETDEV

BYIF_BANDWIDTH

 

Port

classMapStream

swc_classMapBandwidth

NETDEV

BYIFCLASS_BANDWIDTH

 

 

Lookup Fields

The ETL for Entuity supports the multiple lookup methodology available in BMC Helix Continuous Optimization. This means that, for each BMC Helix Continuous Optimization entity, more than one lookup values is stored.

Lookup values for Systems

Considering a system named hq01 with Entuity internal identifier 1-730, the lookup table is filled-up by the ETL with the following fields:

 

Lookup field

Lookup Value

System

ENTTYPE

net:rtr

hq01

ENTUITY_ID

1-730

hq01

HOSTNAME

hq01

hq01

_COMPATIBILITY_

hq01

hq01

Lookup values for Domains

Considering a domain named “FW & VPN” with Entuity internal identifier “Firewalls & VPN”, the lookup table is filled-up by the ETL with the following fields:

 

Lookup field

Lookup Value

System

ENTUITY_ID

Firewalls & VPN

FW & VPN

HOSTNAME

Firewalls & VPN

FW & VPN

_COMPATIBILITY_

Firewalls & VPN

FW & VPN

 

Entuity “My network” view (Regional in EYE 2012) became “All networks” in BMC Helix Continuous Optimization and all Entuity user-defined views are placed into the folder “Entuity views”

ent04.jpg