ManageEngine® Applications Manager Prerequisites for Applications Manager | ||
Discussed below are the prerequisites for managing the various monitors:
Application Servers
Database Servers
Servers
Services
Mail Servers
Java / Transactions
Middleware / Portal
Virtualization
Glassfish
While monitoring Glassfish application servers, make the following changes in the domain.xml file and then restart it:
Change the "accept-all" property to "true" for the "jmx-connector" node : <jmx-connector accept-all="true"
The configuration line should look like this :
<jmx-connector accept-all="true" address="0.0.0.0" auth-realm-name="admin-realm" enabled="true" name="system" port="8686" protocol="rmi_jrmp" security-enabled="false"/>
JBoss
The prerequisites for managing the various versions of JBoss server are:
JBoss Version 7.x and above (EAP version 6 and above, WildFly 8 and above)
To monitor JBoss, the http-invoker.sar should be deployed in the JBoss Server. The application (http-invoker.sar) is by default deployed in the JBoss server.
If the http port of the JBoss server is changed then the port number in the attribute InvokerURLSuffix should also be modified in JBOSS_HOME/server/default/deploy/http-invoker.sar/META-INF/jboss-service.xml file.
To monitor JBoss 5.x version and above jbossagent.sar should be deployed in JBoss server. To deploy, follow the steps below:
Copy jbossagent.sar from location <Applications Manager home>/working/resources and paste under <JBOSS_HOME>/server/default/deploy.
If you are running JBoss in different domain like all, then deployment target folder would be <JBOSS_HOME>/server/all/deploy.
To monitor JBoss 6.x version and above jbossagent.sar should be deployed in JBoss server. To deploy, follow the steps below:
Copy jbossagent.sar from location <Applications Manager home>/working/resources and paste under <JBOSS_HOME>/server/default/deploy.
If you are running JBoss in different domain like all, then deployment target folder would be <JBOSS_HOME>/server/all/deploy.
Provide the rmiRegistryPort which is available in <JBOSS_HOME>/server/<domainname>/conf/bindingservice.beans/META-INF/bindings-jboss-beans.xml file. The default port is 1090.
Example:
<bean class="org.jboss.services.binding.ServiceBindingMetadata">
<property name="serviceName">
jboss.remoting:service=JMXConnectorServer,protocol=rmi
</property>
<property name="port">1090</property>
<property name="description">RMI/JRMP socket for connecting to the JMX MBeanServer</property>
</bean>
To add a new monitor for JBoss Version 7.x and above you must provide a management port. The default port is 9990.
To add MBean attributes or operations for JBoss version 7 and above:
Copy the jboss-client.jar from <JBoss Home>/bin/client/ and place it under <Applications Manager Home>/working/classes/jboss/as7 directory.
Oracle Application Server
Applications Manager uses the Dynamic Monitoring Service (DMS) provided by Oracle Application Server to monitor the same. For this reason, the DMS Servlet has to be made accessible to the system where the Applications Manager is running.
To enable the access, please follow the instructions provided below
[The instructions are referred from the Oracle website :http://docs.oracle.com/cd/B14099_19/core.1012/b14001/monitor.htm]
By default, the dms0/AggreSpy URL is redirected and the redirect location is protected, allowing only the localhost (127.0.0.1) to access the AggreSpy Servlet.
To view metrics from a system other than the localhost you need to change the DMS configuration for the system that is running the Oracle Application Server that you want to monitor by modifying the file $ORACLE_HOME/Apache/Apache/conf/dms.conf on UNIX, or %ORACLE_HOME%\Apache\Apache\conf\dms.conf on Windows systems.
The following example shows a sample default configuration from dms.conf. This configuration limits AggreSpy to access metrics on the localhost (127.0.0.1). The port shown, 7200, may differ on your installation.
Example: Sample dms.conf File for localhost Access for DMS Metrics
# proxy to DMS AggreSpy
Redirect /dms0/AggreSpy http://localhost:7200/dmsoc4j/AggreSpy
#DMS VirtualHost for access and logging control
Listen 127.0.0.1:7200
OpmnHostPort http://localhost:7200
<VirtualHost 127.0.0.1:7200>
ServerName 127.0.0.1
By changing the dms.conf configuration to specify the host that provides, or serves DMS metrics, you can allow users on systems other than the localhost to access the DMS metrics from the location http://host:port/dms0/AggreSpy.
Caution: Modifying dms.conf has security implications. Only modify this file if you understand the security implications for your site. By exposing metrics to systems other than the localhost, you allow other sites to potentially view critical Oracle Application Server internal status and runtime information.
To view metrics from a system other than the localhost (127.0.0.1), do the following:
Modify dms.conf by changing the entries with the value for localhost "127.0.0.1" shown in Example to the name of the server providing the metrics (obtain the server name from the ServerName directive in the httpd.conf file, for example tv.us.oracle.com).
Find below a sample updated dms.conf that allows access from a system other than the localhost (127.0.0.1).
Example: Sample dms.conf File for Remote Host Access for DMS Metrics
# proxy to DMS AggreSpy
Redirect /dms0/AggreSpy http://tv.us.oracle.com:7200/dmsoc4j/AggreSpy
#DMS VirtualHost for access and logging control
Listen tv.us.oracle.com:7200
OpmnHostPort http://tv.us.oracle.com:7200
<VirtualHost tv.us.oracle.com:7200>
ServerName tv.us.oracle.com
Restart, or stop and start the Oracle HTTP Server using Application Server Control Console or using the Oracle Process Manager and Notification Server opmnctl command.
For example,
%opmnctl restartproc process-type=HTTP_Server
or
%opmnctl stopproc process-type=HTTP_Server
%opmnctl startproc process-type=HTTP_ServerAfter performing the above steps, please ensure that you are able to access the URL http://<host>:7200/dmsoc4j/AggreSpy from the Applications Manager system.
To check if a user has select privilege:
We suggest you to execute the below query directly in your Oracle machine and check if a connected user has select privilege or not :
select TABLE_NAME,PRIVILEGE from user_tab_privs_recd where table_name in ('ALL_SCHEDULER_JOB_RUN_DETAILS','V_$RMAN_BACKUP_JOB_DETAILS','ALL_SCHEDULER_JOBS','ALL_SCHEDULER_RUNNING_JOBS');
If there is no row selected or privilege column does not have select value for the above table_name columns, then the user doesn't have privilege to access the table.
To grant Privilege:
Use the following query:
grant select on tablename to username;
Example: grant select on V_$RMAN_BACKUP_JOB_DETAILS to monitoruser; Note : As above, you have to give grant permission on all the tables mentioned in the above query.
Tomcat
AdventNet agent has to be deployed in Tomcat Servers 3.x and 4.x. More
In case of Tomcat 5.x and 6.x, an application named Manager must be running in it for Applications Manager to monitor the Tomcat server. By default, this application will be running in the server. Moreover, the user role to access the server must also be manager. To add a role as "manager" for any of the users such as tomcat, role1, or both, you need to make changes in tomcat-users.xml file located in the /conf directory.
Click the link to view an example tomcat-users.xml, which has user tomcat with role as manager
WebLogic
To monitor WebLogic 6.1 ,
Follow the steps given below:
1) Provide only Admin user name.
2) Copy Weblogic.jar from folder <Weblogic Home>/weblogic61/server/lib in Remote WebLogic server version 6. Copy to <AppManager Home >\working\classes\weblogic\version6 folder in the machine where Applications Manager is runningTo monitor WebLogic 7.x:
You should set the weblogic.disableMBeanAuthorization and weblogic.management.anonymousAdminLookupEnabled variables to true for enabling data collection.
Follow the steps given below:1) Edit startWLS.cmdsh present in the <WLS_HOME>/server/bin directory and add the following arguments
-Dweblogic.disableMBeanAuthorization=true
-Dweblogic.management.anonymousAdminLookupEnabled=true Click here for Sample startWLS.cmd/sh
2) Restart the WebLogic Server for the changes to take effect
3) Copy Weblogic.jar from folder <Weblogic Home>/weblogic70/server/lib in Remote WebLogic server version 7. Copy to <AppManager Home>\working\classes\weblogic\version7 folder in the machine where Applications Manager is runningTo monitor WebLogic 8.x
You should set the weblogic.disableMBeanAuthorization and weblogic.management.anonymousAdminLookupEnabled variables to true for enabling data collection.
Follow the steps given below:
1) Edit startWLS.cmdsh present in the <WLS_HOME>/server/bin directory and add the following arguments
-Dweblogic.disableMBeanAuthorization=true
-Dweblogic.management.anonymousAdminLookupEnabled=true Click here for Sample startWLS.cmd/sh
2) Restart the WebLogic Server for the changes to take effect
3) Copy Weblogic.jar from folder <Weblogic Home>/weblogic81/server/lib in Remote WebLogic server version 8 Copy to <AppManager Home>\working\classes\weblogic\version8 folder in the machine where Applications Manager is running.To monitor WebLogic 9.x,
Copy Weblogic.jar from folder <Weblogic Home>/weblogic92/server/lib in Remote WebLogic server version 9 . Copy to <AppManager Home>\working\classes\weblogic\version9 folder in the machine where Applications Manager is running.
To monitor WebLogic 10.x , 11g , 12C ,Copy Weblogic.jar, wlclient.jar, wljmsclient.jar, wlthint3client.jar from folder <Weblogic Home>/wlserver/server/lib in Remote WebLogic server. Copy to <AppManager Home>\working\classes\weblogic\version10 folder in machine where Applications Manager is running.
For SSL support over Weblogic:
Weblogic certificate has to be imported to Appmanager12/working/jre/lib/security/cacerts file.
This certificate can be imported through Appmanager12/bin/WeblogicCertificate.bat/sh files.
Syntax:
WeblogicCertificate.bat [import] [Full path of weblogic server certificate] [alias name]
Example:
D:\ManageEngine\APM\jun26_2_t3s\AppManager12\bin> WeblogicCertificate.bat import "G:\Oracle\Middleware\Oracle_Home\user_projects\domains\MyDomain\root.cer" mykey
Note
- If customer is monitoring all three versions of weblogic (10.x, 11g, 12C), then get the jars from latest version of WebLogic (Version 12c).
- SSL option is enabled in the UI only for version 9 and above.
The ports that need to be opened when the Weblogic Monitor is behind the firewall: Two-way communication between WebLogic listening port (default : 7001) and Applications Manager web server port (default : 9090).
WebSphere Application Server
For base deployment:
You have to modify the Performance Monitor Interface (PMI) Specification Level from "None" to "Standard". Then deploy the perfServletApp.ear file, which uses the PMI infrastructure to retrieve the performance information from WebSphere Application Server, in the WebSphere. Restart WebSphere Application Server.
For Network deployment:
You have to modify the PMI Sepcifictaion Level from "None"to "Standard" in all the WebSphere Servers in Network Deployment. Then deploy the perfServletApp.ear file, which uses the PMI infrastructure to retrieve the performance information from WebSphere Application Server, in any one of the WebSphere Servers in the Network Deployment. Restart WebSphere Application Server.
Note: Steps to check whether WebSphere monitor has been correctly set. |
To modify PMI specification level:
Connect to the Admin console - http://<Host>:<Port>/admin/
On the left-side tree, expand the Servers node.
Click on Application Servers link. This will display the list of servers running in the node.
Click on the server for which data collection has to be enabled.
In the Additional Properties table, click on Performance Monitoring Service.
Change the Initial specification level to "Standard" and then apply the changes. Also enable (select) Startup.
In the Admin console, on the left-side tree, click Applications node.
Click on Enterprise Applications.
The right-side table lists all the installed applications. Check if perfServletApp is already available. If not, click 'Install' to install the perfServletApp.ear file (which is available by default under WebSphere installation directory).
Restart WebSphere Server.
Steps to Check whether Websphere monitor has been correctly set
For Base Deployment
To ensure whether the PMI & perfServletApp are configured properly in WebSphere, invoke the below URL & check whether the data is returned in XML format.
http://WebSphereHost:Port/wasPerfTool/servlet/perfservlet?connector=SOAP&port=SOAP-PORT
where
WebSphere Host -> Host in which WebSphere Application Server is running
WebSphere Port -> HTTP Transport port of the WebSphere Application server [How to locate HTTP Port]
SOAP Port -> SOAP Port of WebSphere [How to locate SOAP Port]
For Network Deployment
To ensure whether the PMI & perfServletApp are configured properly in WebSphere, invoke the below URL & check whether the data is returned in XML format.
http://WebSphereHost:Port/wasPerfTool/servlet/perfservlet?connector=SOAP&port=NetworkDeployerSOAP-PORT&HOST=NetworkDeployerHost
WebSphere Host -> The host of the websphere application server in which the perf servlet application is installed
Websphere Port -> HTTP Transport port of the Websphere server in which the perf servlet application is installed [How to locate HTTP Port]
NetworkDeployer SOAP PORT -> The SOAP port of the domain manager (DMGR) [How to locate SOAP Port]
Network Deployer Host -> The host in which the domain manager is running.
Note: Also check whether WebSphere admin user is added to the monitor group of the perfservletApp.
1. Login to Admin console
2. Expand the server link on left side tree. Click on Application Servers
3. In Base mode, various WebSpheres will be listed down. Click on the WebSphere's name- > Under Additional Properties, click on End Points link -> click on SOAP connector address. You can get the SOAP port from there.
4. In Network Deployment mode, Click DMGR - > Under Additional Properties, click on End Points link -> click on SOAP connector address - You can get the SOAP port from there.
How to find the HTTP Transport port?
1. Login to Admin console
2. Expand the Server link on left side tree, Click on Application Servers
3. Various WebSpheres will be listed down. Click on the WebSphere's name- > Under Additional Properties, click on Web Container link -> click on HTTP Transports link. You can get the HTTP port from there.
JMX MBeans are used to monitor Resin Application server's activity. To enable JMX, open Resin.XML and add the below JVM arguments or start Resin.exe with the below JVM arguments
-Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
Replace 1099 with the actual port number of the JMX agent
JMX MBeans are used to monitor Jetty server's performance. To enable JMX,
1) Add the below JVM arguments on Jetty start up:
-Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
Replace 9999 with the actual port number of the JMX agent
2)Add the following line in start.ini file --module=jmx
MS SQL Database Server
For monitoring a MS SQL database server the user should be permitted to access the MASTER and MSDB databases. He must log in using either the Public and Db_datareader roles for both MASTER and MSDB databases.
For SQL 2005, 2008 and 2012 servers the 'View Server State' permission should be also present. If you would like to monitor SQL Server using SQL named instance, you need to ensure that the 'SQL Browser Service' is running in the system.
To grant View Server State, you can use any of the following methods :
1) Execute the following query
GRANT VIEW SERVER STATE TO username;
2) In SQL management studio for user choose Properties -> Securables -> Click Add ( under securables ) -> choose "All objects of the Types..." -> choose Servers -> choose Grant for "View server state" permission.
Note:
The collation option for Applications Manager's backend MS SQL Database is case-insensitive.
MySQL Database Server
While monitoring a MySQL database server ensure that you assign a user name that has permission to access the MySQL database from the host where Applications Manager is running. An alternate way is to add a relevant user who has the privileges to do the same.
The user should have privileges to execute SELECT, SHOW DATABASES, REPLICATION commands in the MySQL server.
For enabling these privileges, execute the following commands in the remote MySQL Server:
INSERT INTO user (Host,User) VALUES('<host>','<user>');
GRANT SELECT,SHOW DATABASES,REPLICATION CLIENT ON *.* TO '<user>'@'<host>';
FLUSH PRIVILEGES; (Use the host name - Applications Manager machine).PostgreSQL
The PostgreSQL installers include the database server, pgAdmin and StackBuilder.
The 8.x installers are supported on:
Ubuntu 6.06 and above
Fedora 6 and above
openSUSE 10 and above
SLES 9 and above, CentOS/RHEL 4 and above
Mac OS X 10.4 and above (Intel and PPC)
Windows XP and above.
The 9.x installers are supported on:
Ubuntu 8.04 and above
Fedora 10 and above
openSUSE 11 and above
SLES 11 and above
CentOS/RHEL 5 and above
Mac OS X 10.5 and above (Intel 32 and 64 bit)
Windows XP and above.
Applications Manager uses PostgreSQL's subsystem statistics collector to monitor PostgreSQL server activity. By default, the statistics collector is accessible. If you have problems in adding a new PostgreSQL server, follow the steps given below:
Open postgresql.conf under <postgres home>/data
Check value of configuration parameter listen address it has to be "*", if not change it to "*". Click here for more details on configuring postgresql.conf
Open pg_hba.conf under /data
Add a new line host all all 0.0.0.0/0 md5 to allow all machines with proper password authentication to access PostgreSQL DB server. Click here for more details on configuring pg_hba.conf
IBM Informix
JDBC Driver:
To monitor IBM Informix DB, make sure that the ifxjdbc.jar file is present in the location:<ProductHome>\working\classes directory. The jar file can be copied from the IBM Informix installation location, <IBM Informix Home>\jdbc\lib\jar. Restart Applications Manager after copying the file.
User Privileges:
To add an Informix DB monitor, a user requires Connect database-level privileges and he should be able to access sysmaster database.
Amazon CloudWatch
The Amazon CloudWatch Monitoring scripts for Microsoft Windows Server are sample scripts for monitoring memory, disk and performance counters on Amazon EC2 Windows instances.
Please refer the following pages and use the scripts found there: http://aws.amazon.com/code/7932034889155460 and http://aws.amazon.com/code/8720044071969977. Applications Manager supports mon-put-metrics-disk.ps1(disk stats) and mon-put-metrics-mem.ps1 (memory stats).
For windows scripts -
In Line no 352, Change $monputrequest.namespace = "System/windows" to $monputrequest.namespace = "APM/EC2"
In Line no 277, Change $dims.Name = "InstanceID" to $dims.Name = "InstanceId".
For Linux scripts -
In Line no 364, change $params{'Namespace'} = 'System/Linux' to $params{'Namespace'} = ' APM/EC2'.
Note:
Refer the following Document for Scheduler Configuration for Windows and Linux.
Windows Azure
To add Windows Azure in Applications Manager, you must first export file of your Windows Azure Managed Certificates (eg., testcertificate.pfx) and password of the pfx file.
To monitor Windows Azure in Applications Manager, invoke the batch script exportCertificateToAppManager.bat in the <Applications Manager Home>\bin directory.
Oracle EBS
Applications Manager uses the Dynamic Monitoring Service (DMS) to monitor performance and availability of Oracle E-Business Suite. You can access performance metrics using servlets from the following URLs for different versions of EBS from Applications Managers:
EBS R11 - http://<host>:<port>/dms0/AggreSpy
EBS R12.0 - http://<host>:<port>/dms0/Spy
EBS R12.2.0 - http://<host>:<port>/dms/Spy
For Oracle E-Business Suite Version R11i, the DMS Servlet has to be made accessible to the system where Applications Manager is running. For Versions R12.0 and R12.2.0, the DMS Servlet should be accessible by default. It is recommended that you test to ensure that the Servlet is accessible to the Applications Manager system. [The instructions given below are referred from the Oracle website.]
For Oracle E-Business Suite R11i:
By default, the dms0/AggreSpy URL is protected, allowing only the localhost (127.0.0.1) to access the AggreSpy Servlet. To view metrics from a system other than the localhost, you need to change the DMS configuration for the system running the Oracle EBS that you want to monitor by modifying the trusted.conf file. This can be done as follows:
Open the trusted.conf file under $ORACLE_HOME/Apache/Apache/conf on a UNIX system, or %ORACLE_HOME%\Apache\Apache\conf\ on a Windows system.
Add the Applications Manager Hostname and IPaddress in the Allow from list as shown in the following example:
<Location ~ "/(dms0|DMS|Spy|AggreSpy)">
Order deny,allow
Deny from all
Allow from localhost
Allow from <list of TRUSTED IPs>
</Location>
Now open the httpd.conf and httpd_pls.conf files and check if the trusted.conf file is included. The Files are present under $ORACLE_HOME/Apache/Apache/conf on a UNIX system, or %ORACLE_HOME%\Apache\Apache\conf\ on a Windows system. If the trusted.conf file is not included, add the following lines in both the files and save:
# Include the trusted.conf file
include $ORACLE_HOME/Apache/Apache/conf/trusted.conf
Restart Oracle E-Business Suite and ensure that you are able to access the URL http://<host>:<port>/dms0/AggreSpy from the Applications Manager system.
For Oracle E-Business Suite R12.0:
Ensure that you are able to access the URL http://<host>:<port>/dms0/Spy (Hostname = Hostname with domain name, Port number = OAS listening port) from the Applications Manager system.
For Oracle E-Business Suite R12.2.0:
Ensure that you are able to access the URL http://<host>:<port>/dms/Spy (Hostname = Hostname with domain name, Port number = Weblogic Admin Server listening port) from the Applications Manager system. Users must enter the credentials of their Weblogic Admin server in their Oracle E-Business Suite to access the URL.
Caution:
Modifying trusted.conf has security implications. Modify this file only if you understand the security implications for your site. By exposing metrics to systems other than the localhost, you allow other sites to potentially view critical Oracle EBS Server internal status and runtime information.
SAP Server, SAP CCMS
SAP Server Monitoring and SAP CCMS Monitoring requires SAP JavaConnector ( JCo) to be present in Applications Manager's classpath.
For Windows:
Download and unzip the SAP JavaConnector [SAP JCo 3.0.12] from here. Depending on the hardware architecture of host machine where Applications Manager is running, make sure you download the respective zip file.
In the machine, where Applications Manager is running, copy sapjco3.jar and sapjco3.dll and sapjco3.pdb under AppManager_home/working/lib directory.
Microsoft Visual Studio C/C++ runtime libraries need to be installed in Applications Manager's host machine. To verify, check for the presence of "Microsoft redistributable runtime DLLs VS2005 SP1" in ControlPanel -> Program and Features. if not, follow the instructions in SAP note 684106 to install the Microsoft Visual Studio 2005 C/C++ runtime libraries in Applications Manager's host machine.
Restart Applications Manager.
Note
Do not copy the sapjco3.dll neither into the {windows-dir}system32 nor into the {windows-dir}SysWOW64 directory. This will break the operability of other JCo versions that are already installed on the same system. Furthermore you would risk that the current installation also would not work anymore, if the sapjco3.dll gets replaced in the respective Windows system directory in the future.
For Linux:
Download and unzip SAP JavaConnector[SAP JCo 3.0.12] from here. Depending on the hardware processor of the host machine where Applications Manager is installed. make sure you download the respective zip file.
In the machine, where Applications Manager is running, copy sapjco3.jar and libsapjco3.so under AppManager_home/working/lib directory.
Restart Applications Manager.
Note
The user name provided while adding SAP monitor should have sufficient privileges to access CCMS and Background job metrics. To check this, the user can execute RZ20 transaction in the SAP GUI and see if the CCMS monitor sets can be displayed.
Microsoft Dynamics CRM
To monitor a Microsoft Dynamics CRM application, use Administrator user account which has the permission to excute WMI queries on 'root\CIMV2' namespace of the CRM Server.
Firewall access for monitoring:
Ports required for monitoring via WMI.
Windows Management Instrumentation (WMI) (default : TCP 445)
Remote Procedure Call (RPC) (default :TCP 135)
Target server uses random port above 1024 by default to respond back for remote communication (DCOM) (default : TCP 1025 to 1030)
Windows
Currently windows hardware performance monitoring is supported in SNMP and WMI monitoring mode:
SNMP Mode of monitoring:
Monitoring Dell hardware status:
Dell OpenManage Server Administrator and make sure SNMP agent is enabled.
Installation steps http://www.dell.com/downloads/global/power/ps2q06-20050112-Lou-OE.pdf.
Monitoring HP hardware status:
HP System Insight Manager (SIM v6.2 or higher is recommended) and make sure SNMP agent is enabled
Installation steps http://h20000.www2.hp.com/bc/docs/support/SupportManual/c00293378/c00293378.pdf
Determine if SNMP responds for the OID properly. Below are the correct OID'S for each vendor:
For HP: 1.3.6.1.4.1.232.2.2.2.1.0
For Dell: 1.3.6.1.4.1.674.10892.1.300.10.1.8.1
WMI mode of monitoring:
The following conditions must be met before you can proceed troubleshooting WMI nodes:
The node has successfully been added via WMI.
WMI is working properly on the remote server.
HP System Insight Manager (SIM v6.2 or higher is recommended) is installed on the remote server and running.
Dell OpenManage Server Administrator is installed on the remote server and running.
JMX Applications
To monitor a JMX Applications, the following java runtime options are to be added to your application
Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099
Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
Replace 1099 with the actual port number of the agent
Example:
To enable JMX Applications in JBoss:
Edit the run.sh/bat under JBoss home/bin.
Append the following command to JAVA_OPTS,
JAVA_OPTS =-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false %JAVA_OPTS%
To enable JMX Applications in JBoss 7 and above:
Copy the jboss-client.jar from <JBoss Home>/bin/client/ and place it under <Applications Manager Home>/working/classes/jboss/as7 directory.
To enable JMX Applications in Tomcat:
JAVA_OPTS =-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false %JAVA_OPTS%
Note To know more about monitoring a JMX Application if your application is behind a firewall, check out this blog post. Also please note that the ping/telnet/nslookup should be working for the remote JMX:
|
Ceph status command is used to collect performance stats of Ceph Storage Monitor. The user given, should have read privileage to ceph.keyring file. Ensure the ceph.keyring file has appropriate permissions set (e.g., chmod 644) on your client machine.
1. To monitor Hadoop via REST API:
No Authentication:
URL http://<host>:<port>/jmx should be able to accessed from the Applications Manager machine for both Namenode and Jobtracker/ResourceManager
Simple Authentication:
URL http://<host>:<port>/jmx?user.name=<Hadoop host username> should be able to access from the Applications Manager machine for both Namenode and Jobtracker/ResourceManager
2. To monitor Hadoop via JMX:
Add the following java runtime options to 'HADOOP_NAMENODE_OPTS'; 'HADOOP_JOBTRACKER_OPTS' in Hadoop-env.sh with unique port.
-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=8004
APM Insight
APM Insight includes a remote monitoring agent which has to be deployed in your application instances. Know more about APM Insight Agent.
Java Runtime Monitor
To monitor a JDK1.5 JVM and above, add the following JVM arguments to your application :
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
To monitor IBM JDK1.5 JVM and above, add the following JVM arguments to your application:
-Djavax.management.builder.initial= -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
Note: Port number '1099' can be replaced with the actual port number of the JMX agent..
To enable Java Runtime Monitor in JBoss:
Edit the run.sh/bat under JBoss home/bin. Append the following
command to JAVA_OPTS
JAVA_OPTS =-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
%JAVA_OPTS%
To enable Java Runtime Monitor in JBoss 7 and above:
Copy the jboss-client.jar from <JBoss Home>/bin/client/ and place it under <Applications Manager Home>/working/classes/jboss/as7 directory.
To enable Java Runtime Monitor in Tomcat do the following
Edit the catalina.sh/bat under Tomcat home/bin. Append the
following command to JAVA_OPTS
JAVA_OPTS =-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
%JAVA_OPTS%
In the Tomcat Environment:
Make sure the catalina-jmx-remote.jar file is present in the $TOMCAT_HOME/lib location. This jar file can be downloaded for your version of Tomcat from the Apache website from the extras section (sample link: http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.55/bin/extras/catalina-jmx-remote.jar).
Monitoring of Exchange Server is possible only if Applications Manager is running in a Windows System. Exchange Monitoring supports two Modes of Monitoring -
Using WMI - if WMI is enabled in the remote machine in which Exchange Server is running and
Using Windows PowerShell technology - To use Powershell for data collection, make sure the proper steps have been followed to enable and use remote commands in Windows PowerShell both in the Applications Manager server and the remote server.
Creating User Accounts, adding users and assigning roles
User Account Used for Monitoring
The User Account used to add the monitor should be a member of View-Only Organization Management group. Make sure that the group has the following Roles assigned - Mailbox Search & Monitoring.
For Exchange View-Only Administrators:
This role allows read access only to Exchange organization container and containers with Exchange recipients in AD. They can verify settings, but can not change or add any settings. Only Powershell "Get-<cmdlet>" can be executed.
Adding Users and Assigning Roles
Adding Users to the View-Only Organization Management group and assigning roles in:
Exchange 2010/2013
Open Exchange Mangement Console in the Exchange Server.
To check if the user is already under View-Only Organization Management role group: Get-RoleGroupMember "View-Only Organization Management" | where-object {$_.Name -eq "<Username>"}
If the user is not under the specified role group,execute the below cmdlet to add the user: Add-RoleGroupMember "View-Only Organization Management" -Member <Username>
Next Add the two roles for View-Only Organization Management role group
New-ManagementRoleAssignment -SecurityGroup "View-Only Organization Management" -Role "Monitoring"
New-ManagementRoleAssignment -SecurityGroup "View-Only Organization Management" -Role "Mailbox Search"Exchange 2007:
Open Exchange Management Shell.
Execute the following cmdlet: Add-ExchangeAdministrator –Identity <Username> –Role ViewOnlyAdmin
Configuring ConnectionURI for Powershell Remoting
The ConnectionURI is used to establish a connection to a remote computer using the URI address of the related HTTP or HTTPS endpoint.These connections are made over TCP port 80 for HTTP and TCP port 443 for HTTPS. By default,the connection URI is of the form http://<Hostname/IPaddress>/powershell and uses Kerberos authentication.
With Kerberos Authentication: When the machine running Exchange Server is joined to the same domain as the machine running Applications Manager, either HTTP or HTTPS can be used with Kerberos Authentication.
If Kerberos Authentication is not supported , or the machine is in another domain, the other option is to configure Basic Authentication for powershell virtual directory. To configure basic authentication in Exchange 2013, 2010 or 2007 using IIS Manager:
Open IIS Manager.
In the Connections pane, expand Default Web Site, and then click PowerShell.
Click Authentication in the results pane and enable Basic Authentication.
Note
If you decide to use Basic Authentication, HTTPS should be used as mode of connection for connectionURI. If the connectionURI should be customized it can be done so by clicking the "Customize ConnectionURI" option in new monitor page. To provide a different port for the connectionUri provide it in the following format: <https://<hostname>/Powershell:<portnumber> (or) <http://<hostname>/Powershell:<portnumber>
For Example : http://win-exchange13/Powershell:4444
IBM WebSphere MQ Monitor
To monitor IBM Websphere MQ Series, the following jar files must be added to the respective locations:
For IBM Websphere MQ Series version Jar files to be added Location in Websphere MQ Location in Applications Manager Version 5.x/6.x
- com.ibm.mq.jar
- com.ibm.mq.pcf-6.x.jar
- connector.jar
Download the supportpac MS0B WebSphere MQ Java classes for PCF from this link. The com.ibm.mq.pcf-6.1.jar file for version 6 and older versions is available in this support pac.
The two other jar files can be found under <Websphere MQ Home Directory>\Java\lib directory.
Copy the jar files to <ProductHome> \working\jre\lib\ext directory. Version 7
- connector.jar
- com.ibm.mq.jar
- com.ibm.mq.pcf.jar
- com.ibm.mq.jmqi.jar
- com.ibm.mq.headers.jar
- com.ibm.mq.commonservices.jar
All the jar files can be found under <Websphere MQ Home Directory>\Java\lib directory. Copy the jar files to <ProductHome> \working\jre\lib\ext directory. Version 8
- com.ibm.mq.jar
- com.ibm.mq.pcf.jar
- com.ibm.mq.jmqi.jar
- com.ibm.mq.headers.jar and
- com.ibm.mq.commonservices.jar
- com.ibm.mq.allclient.jar
All the jar files can be found under <Websphere MQ Home Directory>\Java\lib directory. Copy the jar files to <ProductHome> \working\jre\lib\ext directory. IBM WebSphere Message Broker
To discover Message Broker, the following jars are required:
ConfigManagerProxy.jar located at <Broker Home Directory> \classes directory.
ibmjsseprovider2.jar located at <Broker Home Directory>\jre\lib directory.
Copy the two jar files to <AppManager Installation>\working\jre\lib\ext directory.
Note
Copy these jar files to <JavaHome>\jre\lib\ext directory if external JDK is configured for AppManager. Restart Applications Manager and try adding the monitor.
WebLogic Integration Server
Note: WebLogic Integration Server needs some additional configuration and conditions to be followed for monitoring.
For monitoring WebLogic Integration Server 8.x, you should set the weblogic.disableMBeanAuthorization and weblogic.management.anonymousAdminLookup system variable to true for enabling data collection.
Follow the steps given below:
Edit startWLS.cmd\sh present in the <WLS_HOME>/server/bin directory and add the following argument -Dweblogic.disableMBeanAuthorization=true and -Dweblogic.management.anonymousAdminLookupEnabled=true (click on the link to view the sample startWLS.cmd\sh file)
Restart the WebLogic Integration Server for the changes to take effect.
Copy weblogic.jar from folder
/weblogic81/server/lib in Remote WebLogic server version 8 and place it under <AppManager Home >\working\classes\weblogic\version8 folder in the machine where Applications Manager is running.
Microsoft Office SharePoint Server
For SharePoint Standalone Server:
WMI Mode:
WMI access to remote server is required.
PowerShell Mode:
PowerShell remoting should be enabled. For more information, check enable and use remote commands in Windows PowerShell.
For SharePoint Farm Server:
Enable PowerShell remoting on both, AppManager and Remote Server.
Perform the following steps on the SharePoint Server(s).
In the Server Manager, add the user account used for adding the Sharepoint to the following Groups:
Remote Desktop Users
WinRMRemoteWMIUsers__
WSS_ADMIN_WPG
Open the Sharepoint Management shell as an administrator and execute the below commands one by one:
Enable-PSRemoting -Force
Enable-WSManCredSSP –Role Server
winrm set winrm/config/winrs '@{MaxShellsPerUser="25"}'
[This is Optional].winrm set winrm/config/winrs '@{MaxMemoryPerShellMB="600"}'
[This is Optional].Get-SPShellAdmin
[This command will return all the users who have the SharePoint_Shell_Access role].Get-SPDatabase | Add-SPShellAdmin DOMAIN\UserName
[Replace Domain\Username with the user used to add the SharePoint Server].Get-SPShellAdmin
[The added user should be listed.]Set-PSSessionConfiguration -Name Microsoft.PowerShell32 –ShowSecurityDescriptorUI
[This command will open up a dialog box. Add the user(s) with Read and Execute permissions then click OK].
Run the above command again to ensure the permissions were applied correctly.
Perform the following steps on the Applications Manager Server.
Open Windows PowerShell as Administrator.
Execute the below commands in the Administrator PowerShell:
Enable-WSManCredSSP -Role client -DelegateComputer “SharePointServerName”
[Replace SharePointServerName with the FQDN of the SharePoint server].
$cred=get-Credential
$s=new-PSsession “SharePointServerName” -authentication credssp -credential $cred
[Replace SharePointServerName with the FQDN of the SharePoint server].
Invoke-Command -Session $s -ScriptBlock {Add-PSSnapin Microsoft.SharePoint.PowerShell;}
Invoke-Command -Session $s -ScriptBlock {get-SPContentDatabase}
[This will return all the content databases in your SharePoint farm and ensure you have access].
Invoke-Command -Session $s -ScriptBlock {get-spserviceinstance}
[This will return the SharePoint service instances and ensure you have access].
Enter-PSSession -session $s
[You will now see the servers name in [ ] PS: c:\users\\documents].
Exit-PSSession
If there are any errors related to permissions issue while executing the above commands, resolve the same.
For any issues related to Add-SPShellAdmin, check the following link :https://technet.microsoft.com/en-us/library/ff607596.aspx
Microsoft BizTalk Monitoring
To monitor a Microsoft BizTalk Server, the user must have Administrator privileges. To use Powershell for data collection, make sure the proper steps have been followed to enable powershell remoting.
VMware Horizon View Connection Broker
Prerequisite for adding the Connection Broker monitor in the Applications Manager host:
VMware Horizon View Connection Broker monitor uses Windows PowerShell technology. Follow these steps to enable Windows PowerShell Remoting in the Applications Manager server and the remotely monitored Horizon View server:
Horizon View's Domain Server and its components should be accessible (able to ping ) from the Applications Manager server.
Enable and Use Remote Commands in Windows PowerShell in Applications Manager server and remote server:
For using PowerShell in Applications Manager, you need Windows Management Framework (Windows PowerShell 2.0 and WinRM 2.0) on both Applications Manager server and the remote Windows server. For more details refer http://support.microsoft.com/kb/968929. Also ensure that Windows PowerShell is enabled in both servers (Open Control Panel. Select Programs and Features. In the Tasks list, click Turn Windows features on or off. When the Server Manager console opens, check if Windows PowerShell is enabled)
You can verify the availability of Windows Remote Management (WinRM) service and configure PowerShell for remoting by following these steps:
Start Windows PowerShell as an administrator by right-clicking the Windows PowerShell shortcut and selecting Run As Administrator.
To configure Windows PowerShell for remoting, type the following command:
Enable-PSRemoting –forceConfigure the TrustedHosts setting on both computers, so that computers will trust each other:
On Remote Monitored Server:
Set-Item wsman:\localhost\client\trustedhosts <Applications Manager hostname>On Applications Manager Sever:
Set-Item wsman:\localhost\client\trustedhosts *On both computers, restart the Windows Remote Management (WinRM) so the new settings will take effect:
Restart-Service WinRMYou can test the configuration and connection from Applications Manager using the Test-WSMan -ComputerName <remote server> command. This command tests whether the WinRM service is running on the remote computer and if Applications Manager can communicate with the remote server.
Docker
Docker and Docker Container metrics are collected via their REST API, so Docker's REST API should be enabled to add a Docker Monitor.
To enable remote API:
1. Open etc\default\docker file
2. Add the below option
DOCKER OPTS='-H tcp://0.0.0.0:4243-H=unix:///var/run/docker.sock'
3. Save the file.
4. Restart Docker.
NTLM Authenticated URLs
To monitor NTLM authenticated URLs,
Download cryptix-jce-20050328-snap.zip file from http://www.cryptix.org/cryptix-jce-20050328-snap.zip
Extract the contents of the cryptix-jce-20050328-snap.zip file to any location and copy the cryptix-jce-provider.jar file under ..\bin\ folder to Applications Manager Home\lib\ext.
Restart Applications Manager.
PHP
Place the phpstats.php file in the webserver's document root. The phpstats.php can be found in <Applications Manager Home>/working/resources directory.
Apache
Enabling the Server status and the Extended-status will give additional information for the Apache server.
To enable the Server Status, follow the steps given below:
In Apache's httpd.conf file, locate "Location /server-status" tag.
Remove the comment in the Location/Server-status tag, to Enable SetHandler server-status.
Change the attribute "deny from all" to "Allow from all".
Remove the comment in "LoadModule status_module modules/mod_status.so".
Save the conf file and restart the Apache Server.
To enable the Extended-status, follow the steps given below:
Locate "ExtendedStatus" Attribute in httpd.conf file.
Remove the comment to enable the status.
Save the conf file and restart the Apache Server.
Nginx
To Enable the Nginx Server Status, follow the steps given below:
Configure the location /server_status method in <NGINX_HOME>/conf/nginx.conf file, to enable server_status.
The value of stub_status attribute should be "on".
Change the attribute "deny all" to "Allow all".
Save the conf file and restart the Nginx Server.
Real Browser Monitoring (RBM)
RBM requires network connectivity between the RBM agent and the Applications Manager server. This network connectivity can be ensured with the help of the VPN or NAT or by assigning an direct IP Address to the Applications Manager server. In the case where an agent is deployed within the local network and another one in a remote site, a dual NIC or any one of the above means would be required to ensure this connectivity.
For any further support please contact appmanager-support@manageengine.com. You can visit Troubleshooting details. |
Understanding Applications Manager |
Working with Applications Manager |