Before you begin, the following monitored cluster project files must be correctly configured and available on the MM server machine.
Summary of Configuration Tasks
The configuration tasks with detailed procedures are listed below.
1. Install TIBCO Hawk and TIBCO Rendezvous software on the MM server machine, and on all client machines in the TIBCO BusinessEvents cluster whose machine-level metrics you want to monitor.
2. Configure a Hawk domain. A Hawk domain specifies a group of TIBCO Hawk agents that acts as a monitoring set. Each machine has a Hawk agent and various micro agents (HMA) that provide useful machine-level metrics to the enterprise monitor. Use the same Hawk domain name and Rendezvous transport for all the monitored engines and for the emonitor application.
3. Import the BE_HOME/MM/project/emonitor project into your workspace and edit the MM.cdd. If you copy files into the workspace, remember to copy the MM.cdd file to the above location. In the mm-class agent properties list, add the following property to specify the Hawk domain:
TIBCO.clientVar.Domain=TIBCO Hawk Domain
4. If you use non-default values for the Hawk transport properties, you must specify them, also in the mm-class agent properties list in the MM.cdd. The properties are as follows:
TIBCO.clientVar.TIBHawkDaemon=Rendezvous daemon used by Hawk
TIBCO.clientVar.TIBHawkNetWork=Rendezvous network used by Hawk
TIBCO.clientVar.TIBHawkService=Rendezvous service used by Hawk
To use the default client socket, omit the daemon argument. Default service is7474, and daemon
5. Add the same properties you added to the MM.cdd file in step 3 and step 4 to the monitored project's CDD file, in the Cluster tab properties sheet.
<property-group comment="" name="hawk">
<property name="TIBCO.clientVar.Domain" value="test_dev"/>
<property name="TIBCO.clientVar.TIBHawkService" value="7474"/>
<property name="TIBCO.clientVar.TIBHawkDaemon" value="tcp:7474"/>
<property name="TIBCO.clientVar.TIBHawkNetwork" value=""/>
</property-group>
6. In the BE_HOME\mm\bin\be-mm.tra file, set the TIBCO.env.HAWK_HOMEproperty and the TIBCO.env.RV_HOME to point to the TIBCO Hawk and TIBCO Rendezvous installation root directories.
7. In the TRA files of all monitored cluster engines, set the properties shown in step 6
Configure JMX Properties in To-Be-Monitored Engine TRA Files
After the TIBCO BusinessEvents cluster engines are started, they use JMX MBeans to expose monitoring and management information to the MM server, and to allow remote method invocation. The JMX port number must be specified before the engine’s JVM starts. A variable for the port number is provided in the TRA file so that the actual value can be specified before the engine starts. Note that in the current release, JMX with SSL is not supported.
To Configure JMX Properties
JMX properties are provided in the shipped BE_HOME/bin/be-engine.tra file but are commented:
#java.property.be.engine.jmx.connector.port=%jmx_port%
#java.property.be.engine.jmx.connector.authenticate=false
Do the following for all TRA files for all monitored TIBCO BusinessEventsengines as needed.
To Enable Monitoring and Management
To expose JMX for monitoring and management (without authentication), uncomment this property:
java.property.be.engine.jmx.connector.port=%jmx_port%
Ensure that the value of the port property is set to this literal value: %jmx_port%.
The actual value is substituted at runtime.
When more than one PU (engine) is deployed on the same host, ensure that a different JMX port is used for each of the PUs, in the site topology file.
How the JMX Remote Port Number is Set at Runtime
When you use the MM UI to start TIBCO BusinessEvents engines remotely, MM reads the port number from the PU configuration setting in the site topology file.
MM passes this value to the TRA file’s jmx_port variable, in the command line it composes when starting a TIBCO BusinessEvents engine: --propVar jmx_port=portnum.
If you start an engine manually from the command line, provide the port number in the same way, that is, using the option --propVar jmx_port=portnum. If the port number is not specified, the default port 5555 is used.
Use the same JMX port number as specified in the PUC so that MM treats the engine as a predefined engine. If you use a different number, the engine starts as an undefined engine.
Configure User Authorization for Administrator and User Roles
MM authorization uses two preconfigured roles. These roles are specified in the provided passwords file that is used for file-based authentication:
BE_HOME/mm/config/users.pwd
The file as shipped contains the following entries:
jdoe:A31405D272B94E5D12E9A52A665D3BFE:MM_ADMINISTRATOR;
mm_user:11b2016b63c99ef7ab6d6d716be7b78e:MM_USER;
admin:21232f297a57a5a743894a0e4a801fc3:MM_ADMINISTRATOR;
If you add more users ensure that they have the appropriate role. Note that role names are case sensitive:
MM_ADMINISTRATOR Users with this role can execute methods, for example, to deploy, start, and stop engines, and invoke method operations.
MM_USER Users with this role can view MM Console, but cannot deploy, start, or stop engines, or invoke method operations.
To use LDAP authentication, you must add these roles in the LDAP directory for the relevant users.
Site Topology Overview
The site topology file contains deploy-time information such as what processing units to deploy to specific machines in your environment. You need to know information about the machines that will host the agents you plan to deploy, for example, information about the machines’ operating system and IP address.
You also need to know what remote invocation software you'll use to start remote processes on these machines: TIBCO Hawk, PSTools, or SSH.
• Changes to the EAR file do not affect the topology configuration. However if the cluster, processing unit, or agent definitions in the CDD file change, you must recreate the site topology file using the updated CDD.
• If you change the site topology, you must restart the MM server
Basic MM Settings in MM.cdd
The MM server uses the MM.cdd file to perform basic configuration and also to configure alerts, health metric rules, and actions.
Configurations for alerts, health metric rules, and actions are uniform across all the clusters monitored by the MM server. Note that these configurations cannot be customized for each cluster individually.
In order to edit the CDD using the CDD editor, import the eMonitor project into TIBCO BusinessEvents Studio. Expert users can also edit the XML file using a text editor, but using the UI protects you from editing errors. Back up the file before editing it.
To run the MM server with the installation defaults, the MM.cdd file must remain in the installed location.
Within the CDD file change only the settings for the mm-class agent. The mm-class agent is defined using an internal type of agent class (Monitoring &Management) used only in the MM.cdd file. Whenever you change the MM.cdd file you must restart the BEMM server so that it uses the updated values.
Import the emonitor Project for CDD Editing
It is not possible to edit this file in TIBCO BusinessEvents Studio outside of its project context. In order to edit the CDD in TIBCO BusinessEvents Studio, you must import the project into your workspace.
1. In TIBCO BusinessEvents Studio, choose File >Import > Existing Projects into Workspace and select the following project:
BE_HOME/mm/project/emonitor
2. To edit the CDD file in its original location, uncheck the Copy the projects into workspace checkbox. (If you do copy the emonitor project into your workspace, remember to copy the edited CDD file to its original location.)
3. In Studio Explorer, double-click MM.cdd to open it in the CDD editor.
Configuring the Basic Settings in the MM CDD File
1. Import the emonitor project into your workspace and open the CDD file for editing.
2. In the CDD editor, click the Agent Classes tab and select mm-class agent.
3. In the properties sheet, complete the values as explained in MM Agent Basic Configuration Reference.
To monitor engines running in memory mode, add the property, be.mm.monitor.in.mem, to the properties and set its value to true. To monitor engines running in cluster mode, set the value of the property to false. Alternately, you can remove the property from the properties sheet. You must also specify the host address in the TIBCO.clientVar.HTTPHostproperty, and specify the port as needed.
4. The monitored cluster’s topology file must be located on the MM server under BE_HOME/mm/config. (see Site Topology Overview). You can copy the file from its design-time location as needed. To monitor and manage other projects, ensure that the property be.mm.topology.file is either deleted from the MM.cdd file, or the property is set to “â€(empty string).
5. Save the CDD. If you imported it to your workspace, copy it toBE_HOME/mm/project/emonitor and to BE_HOME/mm/bin
Whenever you change the MM.cdd file you must restart the BEMM server so that it uses the updated values.
Configure MM Console Properties
Properties dealing with the Console are configured in the following file:
BE_HOME/MM/web-root/app_config.xml
Update the file as needed to set values for the following properties.
Starting MM Server and Logging On to the Console
After you have completed all the configuration steps explained below,
Basic MM Configuration, you are ready to use MM.
To Start MM Server
At a command prompt, navigate to BE_HOME/mm/bin, and type:
be-mm.exe -c MM.cdd -u default -n mm MM.ear
Type be-mm.exe /help to view usage information.
[[email protected] bin]$ ./be-mm -c MM.cdd -u default -n mm MM.ear &
[2] 31851
Or on Windows you can select the following:
Start > All Programs > TIBCO >TIBCO Env > TIBCO BusinessEvents 5.x > Start Monitoring and Management Server.
To Log On to MM Console
After the Monitoring and Management Server has started, users can log on to MMConsole.
1. In a web browser, enter the URL for the console. By default the URL is:
http://localhost:9000/index.html
The hostname and port are configured in the MM.cdd. See Global Variable Overrides — HTTP for details.
2. Log on using the user credentials that were configured in the password file or other authentication mechanism you configured for TIBCO BusinessEvents.
As shipped, the default credentials are admin/admin, Configuring User Authentication. Only users with the role also see Configure User Authorization for Administrator and User Roles. You see Cluster Explorer in the left panel, and the Cluster Overview on the right. See Cluster Explorer for an introduction to the MM console user interface.
2015 Jul 01 16:00:01:696 GMT -4 mm Error [main] - [util.config] No site topology file found! At least one site topology file must exist in the directory '/opt/TIBCO/be/5.1/mm/config'
2015 Jul 01 16:00:01:721 GMT -4 mm Fatal [main] - [container.standalone] java.lang.ExceptionInInitializerError
java.lang.Exception: java.lang.ExceptionInInitializerError
at com.TIBCO.cep.query.stream.impl.Master.initAndStartComponents(Master.java:123)
at com.TIBCO.cep.query.stream.impl.Master.start(Master.java:50)
at com.TIBCO.cep.query.service.impl.MasterHelper.start(MasterHelper.java:104)
at com.TIBCO.cep.bemm.service.cluster.MMAgentFactory.createQueryAgent(SourceFile:73)
at com.TIBCO.cep.bemm.service.cluster.MMAgentFactory.createAgents(SourceFile:91)
at com.TIBCO.cep.runtime.service.cluster.agent.AgentBuilder.build(AgentBuilder.java:97)
at com.TIBCO.cep.runtime.service.cluster.agent.DefaultAgentManager.<init>(DefaultAgentManager.java:65)
at com.TIBCO.cep.runtime.service.cluster.MultiAgentCluster.<init>(MultiAgentCluster.java:92)
at com.TIBCO.cep.runtime.service.cluster.CacheClusterProvider.createCluster(CacheClusterProvider.java:68)
at com.TIBCO.cep.runtime.session.impl.RuleServiceProviderImpl.initCluster(RuleServiceProviderImpl.java:700)
at com.TIBCO.cep.runtime.session.impl.RuleServiceProviderImpl.configure(RuleServiceProviderImpl.java:261)
at com.TIBCO.cep.container.standalone.BEMain.jumpStart(SourceFile:152)
at com.TIBCO.cep.container.standalone.BEMain.main(SourceFile:70)
Caused by: java.lang.ExceptionInInitializerError
at com.TIBCO.be.util.config.topology.MMStMasterCddPathFinder.getMasterCddsPathInAllStFiles(MMStMasterCddPathFinder.java:83)
at com.TIBCO.cep.runtime.management.impl.cluster.RemoteClusterMaster.connect(SourceFile:66)
at com.TIBCO.cep.query.stream.impl.rete.integ.metrics.ASMetricDataListener.start(ASMetricDataListener.java:164)
at com.TIBCO.cep.query.stream.impl.rete.integ.RegionManagerImpl.start(RegionManagerImpl.java:234)
at com.TIBCO.cep.query.stream.impl.rete.integ.Manager.start(Manager.java:93)
at com.TIBCO.cep.query.stream.impl.Master.initAndStartComponents(Master.java:113)
... 12 more
Caused by: java.lang.RuntimeException: No site topology file found!
at com.TIBCO.be.util.config.topology.MMStFilesFinder.findStFiles(MMStFilesFinder.java:68)
at com.TIBCO.be.util.config.topology.MMStFilesFinder.<clinit>(MMStFilesFinder.java:40)
... 18 more
2015 Jul 01 16:35:07:847 GMT -4 mm Info [AgentMgr.Thread.1] - [runtime.service] Attempting to unlock the cluster [repl-unlimited-be_internal_mm--Master]
2015 Jul 01 16:35:07:847 GMT -4 mm Info [AgentMgr.Thread.1] - [runtime.service] Cluster unlocked successfully [repl-unlimited-be_internal_mm--Master]
2015 Jul 01 16:35:07:851 GMT -4 mm Info [main] - [runtime.service] Registering all BE-Engine level Group MBeans...
2015 Jul 01 16:35:07:857 GMT -4 mm Info [main] - [runtime.service] All BE-Engine level Group MBeans SUCCESSFULLY registered
2015 Jul 01 16:35:07:857 GMT -4 mm None [main] - [runtime.session] BE Engine mm started