Step 9: Install MapR Monitoring

After you install the cluster and ecosystem components, you can install MapR Monitoring. MapR Monitoring components are available as part of the MapR Expansion Pack (MEP) that you selected for the cluster.

Complete the steps to install MapR Monitoring as the root user or using sudo.

  1. For metric monitoring, install the following packages:
    Component Requirements
    collectd Install the mapr-collectd package on each node in the MapR cluster.
    OpenTSDB and AsyncHBase Install the mapr-opentsdb on one or more nodes. To allow failover of metric storage in the event that one OpenTSDB node is unavailable, install OpenTSDB on at least three nodes in the cluster.
    Note: mapr-opentsdb is dependent on mapr-asynchbase and mapr-asynchbase is automatically installed on the node where you install mapr-opentsdb.
    Grafana Install the mapr-grafana package on at least one node in the MapR cluster.
    On a three node cluster, you could run the following commands to install metric packages:
    • For CentOS/RedHat:
      • Node A: yum install mapr-collectd mapr-grafana
      • Node B: yum install mapr-collectd mapr-opentsdb
      • Node C: yum install mapr-collectd
    • For Ubuntu:
      • Node A: apt-get install mapr-collectd mapr-grafana
      • Node B: apt-get install mapr-collectd mapr-opentsdb
      • Node C: apt-get install mapr-collectd
    • For SUSE:
      • Node A: zypper install mapr-collectd mapr-grafana
      • Node B: zypper install mapr-collectd mapr-opentsdb
      • Node C: zypper install mapr-collectd
  2. For log monitoring, install the following packages:
    Component Requirements
    fluentd Install the mapr-fluentd package on each node in the cluster.
    Elasticsearch Install the mapr-elasticsearch package on one or more nodes. Install it on at least 3 nodes in the cluster to allow failover of log storage in the event that one Elasticsearch node is unavailable.
    Kibana Install the mapr-kibana package on at least one node in the cluster.
    For example, on a three node MapR cluster, you can run the following commands to install log packages:
    • For CentOS/RedHat:
      • Node A: yum install mapr-fluentd mapr-elasticsearch
      • Node B: yum install mapr-fluentd mapr-elasticsearch
      • Node C: yum install mapr-fluentd mapr-elasticsearch mapr-kibana
    • For Ubuntu:
      • Node A: apt-get install mapr-fluentd mapr-elasticsearch
      • Node B: apt-get install mapr-fluentd mapr-elasticsearch
      • Node C: apt-get install mapr-fluentd mapr-elasticsearch mapr-kibana
    • For SUSE:
      • Node A: zypper install mapr-fluentd mapr-elasticsearch
      • Node B: zypper install mapr-fluentd mapr-elasticsearch
      • Node C: zypper install mapr-fluentd mapr-elasticsearch mapr-kibana
  3. For secure clusters: Run maprlogin print to verify that you have a MapR user ticket for the mapr user and the root user. These user tickets are required for a successful installation.
    If you need to generate a MapR user ticket, run maprlogin password. For more information, see Generating a MapR User Ticket
  4. Run configure.sh on each node in the MapR cluster with the -R, -ES, and -OT parameters. Optionally, you can include the -ESDB parameter.
    /opt/mapr/server/configure.sh -R -ES <comma-separate list of Elasticsearch nodes> -OT <comma-separate list of OpenTSDB nodes> [-ESDB <filepath>]
    Parameter Description
    -R After initial node configuration, specifies that configure.sh should use the previously configured ZooKeeper and CLDB nodes.
    -ES Specifies a comma-separated list of host names or IP addresses that identify the Elasticsearch nodes. The Elasticsearch nodes can be part of the current MapR cluster or part of a different MapR cluster. The list is in the following format:
    • hostname/IPaddress[:port_no] [,hostname/IPaddress[:port_no]...]
    Note: The default Elasticsearch port is 9200. If you want to use a different port, specify the port number when you list the Elasticsearch nodes.
    -OT Specifies a comma-separated list of host names or IP addresses that identify the OpenTSDB nodes. The OpenTSDB nodes can be part of the current MapR cluster or part of a different MapR cluster. The list is in the following format:
    • hostname/IP address[:port_no] [,hostname/IP address[:port_no]...]
    Note: The default OpenTSDB port is 4242. If you want to use a different port, specify the port number when you list the OpenTSDB nodes.
    -ESDB Specifies a non-default location for writing index data on Elasticsearch nodes. In order to configure a index location, you only need to include this parameter on Elasticsearch nodes. By default, the Elasticsearch index is written to /opt/mapr/elasticsearch/elasticsearch-<version>/var/lib/MaprMonitoring/.
    Note: Elasticsearch requires a lot of disk space. Therefore, a separate file system for the index is recommend. It is not recommended to store index data under the / or the /var file system.
    For example, to configure MapR Monitoring components you can run one of the following commands:
    • In this example, a location is specified for the Elasticsearch index directory, and default ports are used for Elasticsearch and OpenTSDB nodes.
      /opt/mapr/server/configure.sh -R -ES NodeA,NodeB,NodeC -OT NodeB -ESDB /opt/mapr/myindexlocation
    • In this example, non-default ports are specified for Elasticsearch and OpenTSDB nodes, and the default location is used for the Elasticsearch index directory.
      /opt/mapr/server/configure.sh -R -ES NodeA:9595,NodeB:9595,NodeC:9595 -OT NodeB:4040
    After you run configure.sh -R , the following errors may display, but they can be ignored:
    Running config for package opentsdb
    <Date> <Time>,9654 ERROR Client fs/client/fileclient/cc/client.cc:6966 Thread: 20820
          CheckImpersonation: The directory /opt/mapr/conf/proxy is not owned by root
    <Date> <Time>,9342 ERROR Client fs/client/fileclient/cc/client.cc:6966 Thread: 23478
          CheckImpersonation: The directory /opt/mapr/conf/proxy is not owned by root
    <Date> <Time> INFO Configuration.deprecation: io.bytes.per.checksum is deprecated.
          Instead, use dfs.bytes-per-checksum
    <Date> <Time> INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval
          = 0 minutes, Emptier interval = 0 minutes.

    If a different error displays, see Troubleshoot MapR Monitoring Installation Errors.

  5. To start collecting metrics for the NodeManager, ResourceManager, HBaseMaster, or HBaseRegionServer services, restart these services on each node where they are installed.
    maprcli node services -name nodemanager -nodes <space separated list of hostname/IPaddresses> -action restart
    
    maprcli node services -name resourcemanager -nodes <space separated list of hostname/IPaddresses> -action restart 
    maprcli node services -name hbmaster -nodes <space separated list of hostname/IPaddresses> -action restart
    maprcli node services -name hbregionserver -nodes <space separated list of hostname/IPaddresses> -action restart 
    
  6. If you installed Kibana with the MEP 1.x or MEP 2.x, perform the following steps::
    1. Use one of the following methods to load the Kibana URL:
      • From the MCS, select the Kibana view. After you select the Kibana view, you may also need to select the Pop-out page into a tab option.
      • From a web browser, launch the following URL: http://<IPaddressOfKibanaNode>:5601
    2. When the Kibana page loads, it displays a Configure an index pattern screen. Provide the following values:
      Note: The Index contains time-based events option is selected by default and should remain selected.
      Field Value
      Index name or pattern mapr_monitoring-*
      Time-field @timestamp
    3. Click Create.
    This steps is not required as of MEP 3.0.0.