Home

Part 1: Installing Unravel's Azure Marketplace app

Installing Unravel's app from Azure Marketplace during or after the creation of a single HDInsight cluster is the best way to quickly try out Unravel for your on-demand HDInsight cluster. The Unravel app resides on the edge node of the HDInsight cluster, and monitors only that one cluster.

This topic explains how to install Unravel's Azure Marketplace app on a fresh Spark 2.1 cluster.

Note

The Unravel HDInsight app currently only supports Spark 2.1 and 2.2 HDInsight clusters running on either blob (WASB) or ADL (Azure Data Lake) storage.

Launch a Spark 2.1 cluster
  1. Log in to the Azure portal.

  2. Select the HDInsight service.

  3. Create a new cluster:

    1. For cluster type, select Spark.

    2. For version, select 2.1.

    3. Enter the access credentials for the Spark cluster.

    4. Click Next.

      hdi-cluster-conf.png
Set up a storage account for the cluster

Create a new storage account or use existing one. Fill in the storage account information for the Spark cluster.

hdi-cluster-subscript.png
Find the Unravel app on Azure Marketplace
  1. Enter UNRAVEL in the search box or find it in the Available applications list.

    hdi-azure-mkt-unravel.png
  2. Click OK to display "Terms of Use" and "Privacy Policy".

  3. Click Create.

    hdi-cluster-summary-resource.png
  4. Accept the terms of use and privacy policy.

    hdi-cluster-strim-terms.png
  5. Click Next to proceed.

hdi-cluster-strim-terms.png
Launch the cluster and app
  1. Review the summary.

  2. Select step 4 and change the worker node size or number. You can change the edge node size for Unravel app if you wish.

    hdi-cluster-confirm-conf.png
  3. Click Create to launch the cluster and the Unravel app.

Find the URL of the Unravel app
  1. After the Unravel app and the Spark2 cluster have launched successfully, go to the Azure portal and select the HDInsight service.

  2. Select the Spark2 cluster.

  3. Click Applications.

    hdi-cluster-overview-apps.png
  4. Click unravel-edgenode.

    hdi-installed-apps.png

    The Unravel HDInsight app's webpage URL is displayed. In most cases, the URL looks like https://cluster-name-unr.apps.azurehdinsight.net/

Log into Unravel UI
  1. In your web browser, navigate to the Unravel app's URL, https://cluster-name-apps.azurehdinsight.net.

    The Unravel login screen appears.

    signin.png
  2. Log in with username adminand password unraveldata

    The dashboard appears.

    hdi-operations-dashboard.png
(Optional) Start/stop Unravel daemons

Use ssh to connect to the Unravel edge node, and check the Unravel daemons' process status.

/usr/local/unravel/init_scripts/unravel_all.sh status

To restart Unravel daemons enter:

/usr/local/unravel/init_scripts/unravel_all.sh restart

To stop Unravel daemons enter:

/usr/local/unravel/init_scripts/unravel_all.sh stop
Enter your license

By default Unravel app doesn't contains any license keys, and runs without any issue during the initial 30 days trial period. To continue using Unravel app and technical support, contact Unravel Support.

Next steps

For additional configuration and instrumentation options, see Next steps.Next steps

Troubleshooting

From the Unravel user interface, trying out the API results in an error "TypeError: Failed to fetch" because the generated curl command is not using HTTPS. To remedy this, do the following:

  • Copy the generated curl command.

  • Modify it to include default user credentials.

    For example:

    ## From original 
    curl -X GET "http://cluster-name-unr.apps.azurehdinsight.net/api/v1/clusters/nodes" -H  "accept: application/json"
    
    ## Change to 
    curl -u admin:unraveldata -X GET "https://cluster-name-unr.apps.azurehdinsight.net/api/v1/clusters/nodes" -H  "accept: application/json"
    
  • Re-send it using the HTTPS protocol.

The response body is in JSON format. The date field is in epoch time.

{
  "date":[1525294800000,1525298400000],
  "total":{"1525294800000":3,"1525298400000":3},
  "active":{"1525294800000":3,"1525298400000":3},
  "lost":{"1525294800000":0,"1525298400000":0},
  "unhealthy":{"1525294800000":0,"1525298400000":0},
  "decommissioned":{"1525294800000":0,"1525298400000":0},
  "rebooted":{"1525294800000":0,"1525298400000":0}
 }