Blog Post

SQL Server Blog
2 MIN READ

11 ways to deploy R Server on HDInsight Cluster

SQL-Server-Team's avatar
Mar 23, 2019
First published on MSDN on Mar 21, 2017
In this article, we will discuss 11 possible ways to deploy R Server on HDInsight Cluster. Some of these ways will help in automating the cluster creation (using scripts). Majority of them are related to deployment using Azure Resource Manager Templates . ARM Templates are very useful and can be deployed in several ways. Here are the 11 ways :

  1. Azure Portal

  2. .NET SDK

  3. ARM Template + Azure Portal

  4. ARM Template + Powershell

  5. ARM Template + Azure CLI 1.0

  6. ARM Template + Azure CLI 2.0

  7. ARM Template + Ruby

  8. ARM Template + C#

  9. ARM Template + Visual Studio

  10. ARM Template + REST API

  11. AzureSMR package


Let us discuss the above ways. I am not going into detailed description of all the ways - have provided guidance links and required code snippet wherever possible.

Azure Portal


Basic way is to use Azure Portal . Here is an extensive guide : Create the cluster

.NET SDK


Using the Nuget Package Microsoft.Azure.Management.HDInsight . The C# program is provided below. Replace with appropriate values for variables and run it. This program will create a Resource Group, a Storage Account and R Server on HDInsight Cluster.


ARM Template


We will be using the following template.json and parameters.json for #3 to #10. Save the following 2 json files in your local disk. Replace values in parameters.json with your own values.




ARM Template + Azure Portal


Using Template Deployment .  More information here : Deploy resources with Resource Manager templates and Azure portal .

ARM Template + Powershell


Save the following powershell code in the same location as template.json and parameters.json. Run the powershell script as administrator.


ARM Template + Azure CLI 1.0


Install the Azure CLI 1.0

Save the following bash script in the same location as template.json and parameters.json and run the bash script.


ARM Template + Azure CLI 2.0


Install the Azure CLI 2.0

Save the following bash script in the same location as template.json and parameters.json and run the bash script.


ARM Template + Ruby


Using the Microsoft Azure Resource Management Client Library for Ruby . Save the following ruby script in the same location as template.json and parameters.json and run the ruby script. More information : azure_mgmt_resources .


ARM Template + C#


Using the Nuget Package Microsoft.Azure.Management.ResourceManager


ARM Template + Visual Studio


Using Azure Resource Group Project . Visual Studio gives you a nice UI experience to invoke the script and provide some parameter values. More help here : Azure Resource Group for Visual Studio

ARM Template + REST API


Use this guide : Deploy with the REST API

AzureSMR package


This method lets you deploy a R Server HDInsight Cluster from your R session.

Using AzureSMR package, you can either deploy the above provided ARM templates using azureDeployTemplate () function (OR) create HDI cluster directly using azureCreateHDI() function.

More details here: Introducing the AzureSMR package: Manage Azure services from your R session .

Here is the code using azureCreateHDI() function :





I will update this document as when I find more new ways to create R Server on HDInsight Cluster. Please use the comments section to report any issues (OR) provide feedback on the above ways.

Updated Mar 23, 2019
Version 2.0
No CommentsBe the first to comment