Offline installation of R Server 9.1 for Hadoop
By default, installers connect to Microsoft download sites to get required and updated components. If firewall restrictions or limits on internet access prevent the installer from reaching these sites, you can download individual components on a computer that has internet access, copy the files to another computer behind the firewall, manually install prerequisites and packages, and then run setup.
If you previously installed version 9.0.1, it will be replaced with the 9.1.0 version. An 8.x version can run side-by-side 9.x, unaffected by the new installation.
Download R Server dependencies
From an internet-connected computer, download Microsoft R Open (MRO) and .NET Core for Linux.
MRO provides the R distribution (base R language and script support) used by R Server. R Server setup checks for this specific distribution and won't use alternative distributions. MRO can co-exist with other distributions of R on your machine, but additional configuration could be required to make a particular version the default. For more information, see Manage an R Server installation on Linux.
The .NET Core component is required for MicrosoftML (machine learning). It is also required for mrsdeploy, used for remote execution, web service deployment, and configuration of R Server as web node and compute node instances.
Component | Version | Download Link | Notes |
---|---|---|---|
Microsoft R Open | 3.3.3 | Direct link to microsoft-r-open-3.3.3.tar.gz | Use the link provided to get the required component. Do NOT go to MRAN and download the latest or you could end up with the wrong version. |
Microsoft .NET Core | 1.1 | .NET Core download site | Multiple versions of .NET Core are available. Be sure to choose from the 1.1.1 (Current) list. |
The .NET Core download page for Linux provides gzipped tar files for supported platforms. In the Runtime column, click x64 to download a tar.gz file for the operating system you are using. The file name for .NET Core is dotnet-<linux-os-name>-x64.1.1.1.tar.gz
.
Download R Server installer
You can get Microsoft R Server (MRS) 9.1.0 for Hadoop from one of the following download sites.
Site | Edition | Details |
---|---|---|
Visual Studio Dev Essentials | Developer (free) | This option provides a zipped file, free when you sign up for Visual Studio Dev Essentials. Developer edition has the same features as Enterprise, except it is licensed for development scenarios. |
Volume Licensing Service Center (VLSC) | Enterprise | Sign in, search for "SQL Server 2016 Enterprise edition", and then choose a per-core or CAL licensing option. A selection for R Server for Hadoop 9.1.0 is provided on this site. |
For downloads from Visual Studio Dev Essentials:
- Click Join or access now to sign up for download benefits.
- Check the URL to verify it changed to https://my.visualstudio.com/.
- Click Downloads to search for R Server.
- Click Downloads for a specific version to select the platform.
Download package dependencies
R Server has package dependencies for various platforms. The list of required packages can be found at Package dependencies for Microsoft R Server. If the target system is missing any, download the ones you will need.
You can list existing packages in /usr/lib64 to see what is currently installed. It's common to have a very large number of packages. You can do a partial string search to filter on specific filenames (such as lib* for files starting with lib.): ls -l /usr/lib64/lib*
Note
It's possible your Linux machine already has package dependencies installed. By way of illustration, on a few systems, only libpng12 had to be installed.
Transfer files
Use a tool like SmarTTY or PuTTY or another mechanism to upload or transfer files to a writable directory, such as /tmp, on your internet-restricted server. Files to be transferred include the following:
dotnet-<linux-os-name>-x64.1.1.1.tar.gz
microsoft-r-open-3.3.3.tar.gz
en_microsoft_r_server_910_for_hadoop_x64_10323951.tar.gz
- any missing packages from the dependency list
Install package dependencies
On the target system which is disconnected from the internet, run rpm -i <package-name>
to install any packages that are missing from your system (for example, rpm -i libpng12-1-2-50-10.el7.x86_64.rpm
).
Unpack .NET Core and set symbolic link
For an offline installation of .NET Core, manually create its directory path, unpack the distribution, and then set references so that the component can be discovered by other applications.
Log in as root or as a user with super user privileges (
sudo -s
).Switch to the /tmp directory (assuming it's the download location) and execute
ls
to list the files as a verification step. You should see the tar.gz files you transferred earlier.Make a directory for .NET Core:
[root@localhost tmp] $ mkdir /opt/dotnet
Unpack the .NET Core redistribution into the /opt/dotnet directory:
[root@localhost tmp] $ tar zxvf dotnet-<linux-os-name>-x64.1.1.tar.gz -C /opt/dotnet
Set the symbolic link for .NET Core to user directories:
[root@localhost tmp] $ ln -s /opt/dotnet/dotnet /usr/bin/dotnet
Unpack MRS distribution and copy MRO
Next, unpack the R Server distribution and copy the gzipped MRO distribution to the MRS91Hadoop folder.
Important
Do not unpack MRO yourself. The installer looks for a gzipped tar file for MRO.
Unpack the MRS gzipped file.
[root@localhost tmp] $ tar zxvf en_microsoft_r_server_910_for_hadoop_x64_10323951.tar.gz
A new folder called MRS91Hadoop is created under /tmp. This folder contains files and packages used during setup. Copy the gzipped MRO tar file to the new MRS91Hadoop folder containing the installation script (install.sh).
[root@localhost tmp] $ cp microsoft-r-open-3.3.3.tar.gz /tmp/MRS91Hadoop
Run the MRS install script
R Server for Hadoop is deployed by running the install script with no parameters. At this point, you could opt for unattended install to bypass EULA prompts.
Switch to the
MRS91Hadoop
directory containing the installation script:[root@localhost tmp] $ cd MRS91Hadoop
Run the script with the -p parameter, specifying the Hadoop component. Optionally, add the pre-trained machine learning models.
[root@localhost MRS91Hadoop] $ bash install.sh -h -m
When prompted to accept the license terms for Microsoft R Open, click Enter to read the EULA, click q when you are finished reading, and then click y to accept the terms.
Repeat EULA acceptance for Microsoft R Server.
Installer output shows the packages and location of the log file.
Verify installation
List installed packages and get package names:
[MRS91Hadoop] $ yum list \*microsoft\*
Check the version of Microsoft R Open using
rpm -qi
:[MRS91Hadoop] $ rpm -qi microsoft-r-open-mro-3.3.3.x86_64
Check the version of Microsoft R Server:
[MRS91Hadoop] $ rpm -qi microsoft-r-server-packages-9.1.0.x86_64
Partial output is as follows (note version 9.1.0):
Name : microsoft-r-server-packages-9.0 Relocations: /usr/lib64 Version : 9.1.0 Vendor: Microsoft . . .
Start Revo64
As a verification step, run the Revo64 program.
Switch to the directory containing the executable:
$ cd MRS91Hadoop
Start the program:
$ Revo64
Run an R function, such as rxSummary on a dataset. Many sample datasets, such as the iris dataset, are ready to use because they are installed with the software:
> rxSummary(~., iris)
Output from the iris dataset should look similar to the following:
Rows Read: 150, Total Rows Processed: 150, Total Chunk Time: 0.001 seconds
Computation time: 0.005 seconds.
Call:
rxSummary(formula = ~., data = iris)
Summary Statistics Results for: ~.
Data: iris
Number of valid observations: 150
Name Mean StdDev Min Max ValidObs MissingObs
Sepal.Length 5.843333 0.8280661 4.3 7.9 150 0
Sepal.Width 3.057333 0.4358663 2.0 4.4 150 0
Petal.Length 3.758000 1.7652982 1.0 6.9 150 0
Petal.Width 1.199333 0.7622377 0.1 2.5 150 0
Category Counts for Species
Number of categories: 3
Number of valid observations: 150
Number of missing observations: 0
Species Counts
setosa 50
versicolor 50
virginica 50
To quit the program, type q()
at the command line with no arguments.
Enable Remote Connections and Analytic Deployment
The server can be used as-is if you install and use an R IDE on the same box, but to benefit from the deployment and consumption of web services with Microsoft R Server, then you must configure R Server after installation to act as a deployment server and host analytic web services. Possible configurations are a one-box setup or an enterprise setup. Doing so also enables remote execution, allowing you to connect to R Server from an R Client workstation and execute code on the server.
Next Steps
Review the following walkthroughs to move forward with using R Server and the RevoScaleR package in Spark and MapReduce processing models.
Review the best practices in Manage your R Server for Linux installation for instructions on how to set up a local package repository using MRAN or miniCRAN, change file ownership or permissions, set Revo64 as the de facto R script engine on your server.