Home

User interface

Custom banner

You can define a custom banner that appears below Unravel's title bar; it remains open until the user closes it. The banner is displayed until com.unraveldata.custom.banner.end.date. In this example, the banner is used to notify users of upcoming maintenance.

CustomBanner_Note.png

The following properties define the banner.

Defining a custom web UI port

Tip

These instructions apply to any platform.

Note

Port numbers under 1024 are restricted to root or setuid programs. An alternative technique to use low port numbers is to enable iptables and essentially do port mapping of 443 to a higher port.

  1. Edit /usr/local/unravel/etc/unravel.ext.sh on the Unravel server (all hosts, for multi-host installs) and add this environment variable. Replace 18080 with your chosen port number.

    export NGUI_PORT=18080 
  2. After making this change, restart the affected daemon.

    # sudo /etc/init.d/unravel_ngui restart
Disabling browser telemetry

By default, Unravel Web UI collects data about your use of Unravel. You can disable this functionality by the following steps. If you have a multi-host Unravel install, you must use logical host1.

Disable Mixpanel
  1. On Unravel Server, open /usr/local/unravel/etc/unravel.properties.

    sudo vi /usr/local/unravel/etc/unravel.properties
  2. Set com.unraveldata.do.not.track to true.

    If this property isn't in the file, add it and set it to false.

    com.unraveldata.do.not.track=true
  3. Restart the Unravel UI.

    sudo service unravel_ngui restart
Re-enable Mixpanel

Follow the above steps but in step 2 set com.unraveldata.do.not.track to false.

Restricting direct access to Unravel UI
  1. On Unravel server, edit /usr/local/unravel/etc/unravel.ext.sh.

    sudo vi /usr/local/unravel/etc/unravel.ext.sh
  2. Add or modify NGUI_HOSTNAME.

    SET NGUI_HOSTNAME 
    export NGUI_HOSTNAME=127.0.0.1
  3. Restart the Unravel UI.

    sudo service unravel_ngui restart
Specifying a cluster ID or name

Throughout the Unravel UI there are pages and tabs where the cluster information is used or needed. For example

  • Various reports, e.g., Chargeback reports.

  • Applications tab where Unravel displays the app's cluster.

When a cluster manager has only a single cluster, Unravel discovers the cluster ID/name automatically. However, when your manager has multiple clusters, you must tell Unravel the clusters' names; allowing you, when necessary, to choose the cluster you want to use.

Tip

Use the following port numbers:

HTTP:

Cloudera Manager = 7180
Ambari = 8080
MapR Control System = 8440

HTTPS:

Cloudera Manager = 7183
Ambari = 8443
MapR Control System = 8443

Important

Don't specify cluster ID in the javaagent part of sensor properties, i.e., spark.driver.extraJavaOptions and spark.executor.extraJavaOptions

Set com.unraveldata.cluster.name in unravel.properties as described below.

  1. Find the cluster's internal "name".

    Example using the Cloudera Manager API using the name field, with fallback to the displayName field.

    Tip

    Depending on the version of Cloudera, the endpoint may use an API version that is between 16 and 19.

    In Unravel version 4.5.0.5, the HDFS Capacity Forecasting and Cloud Reports first attempt to get a match on the name attribute, and if no match is found, then search based on the displayName attribute.

    http://$server:7180/api/v17/clusters 
    { 
         "name": "cluster", 
         "displayName":"QACDH514E", 
         ... 
    }

    Example with Ambari API using the cluster_name field:

    http://$server:8080/api/v1/clusters
    {
    ...
          "Clusters": {
            "cluster_name": "DEVHDP26E",
          }
    ...

    Example with MapR API using the name field

    https://$server:8440/rest/dashboard/info
          "cluster": {
            "name": "QAMAPR60E",
            ...
          },
  2. In unravel.properties, set com.unraveldata.cluster.name to the exact cluster name you retrieved from the cluster manager. For example:

    com.unraveldata.cluster.name=QAMAPR60E
  3. In unravel.properties, set com.unraveldata.cluster.type to CDH, HDP, or MAPR. If you don't set this, Unravel attempts to determine this automatically if there are artifacts or config files on the Unravel server that may indicate if it contains Ambari (or HDP), Cloudera Manager (or CDH), or MAPR.