NetApp OnCommand Core 5.1-P1 on Debian jessie

NetApp only supports certain versions of Suse and RedHat distributions. I run Debian, which is not supported.I figured out how to install OnCommand on deb-based distributions. Me? Not really.

We all standing on the shoulders of giants: Gratitude and tribute to Justin Warren, who described his experience with Ubuntu and DFM on his blog. Most of the work here is based on on this blog entry.

Preparation

You are required to install an "OnCommand Core server license key" to enable the management server: First contact your NetApp sales representative to order the "OnCommand Core" part, which will generate the required license key.

Go to the NetApp Support site and click "Products" >> "Manage Products" >> "Software Licenses". Locate the serial number for the OnCommand Core to obtain the license key.

Download the OnCommand software by clicking on "Downloads" >> "Software" >> "OnCommand Unified Manager Core Package", select "Linux" as Platform and click "Go". Accept the license agreement to download "OnCommand Core Package". At time of writing: "occore-setup-5-1P1-linux-x64.sh" (742179650 bytes)

Download Debian 8.0, also known as "jessie". This release is currently in a state called "testing", and should be become stable soon. I downloaded a so called "weekly build", to be exactly
debian-testing-amd64-CD-1.iso, from 2014-09-15

Now you should have the Debian install ISO image, the license key and the ~750MB OnCommand Core server install package locally available.

Setup

Install Debian as usual. I used a virtual machine with 2 processors, 2 Gig of ram and a 30 GB virtual harddisk. Install at least "desktop", "standard system" and "ssh server" via "tasksel". After the installation is finished, install the following additional packages: "alien rpm vim screen iftop iotop htop"

# apt-get update
# apt-get upgrade -y
# apt-get install -y alien rpm vim screen iftop iotop htop

Run the installer package with the "-o" option to skip the OS check. Ignore all errors and just leave this shell open. Do not type anything, do not answer the questions from the installer, it will fail anyway. Start the installer similar like this:

# ./occore-setup-5-1P1-linux-x64.sh -o

Leave this shell open.

The installer will extract some files into /tmp/dfmsetup-<random_characters>. Open a second shell, become root, cd into this directory. When you see more than one file, copy the file "dfmsetup.zip" to another place:

# cp dfmsetup.zip ..

Then, switch to the first shell and answer something to the installer questions, it does not matter what exactly. When the install fails, the automatic cleanup part will delete the temp directory. Close this shell, now you have all what you need.

Unzip the file "dfmsetup.zip". You should see some files in the directory, one of these files is an RPM-Package.

# unzip ../dfmsetup.zip

Convert the RPM into a DEB file via "alien". The process will take some time, be patient.

# alien --scripts NTAPdfm-5.1-15505.x86_64.rpm

Install the resulting debian package, just like any other, via dpkg. Just ignore all warning and error messages during install of the package, the install will be fine. Again: Ignore all output and all error messages!

# dpkg -i ntapdfm_5.1-15506_amd64.deb

Setup the dfm:

# cd /opt/NTAPdfm/bin
# dfm service setup -M 7-Mode -l <dfm_license_key>

Change the webserver configuration file, replace the group "nobody" with "nogroup" on line 53:

# vim /opt/NTAPdfm/conf/httpd.conf.tmpl
 50 
51 <IfModule prefork.c>
52 # UNIX stuff
53 User @@USERNAME@@
54 Group nogroup
55 LockFile "log/httpd.lock"
56 MinSpareServers 5
57 MaxSpareServers 10

At least, enable and start the server:

# update-rc.d NTAPdfm defaults
# update-rc.d NTAPdfm enable
# service NTAPdfm start

You should now be able to browse to http://localhost:8080, or whatever the address of your server is.

Congratulations! You’re running OnCommand Unified Manager on Debian.