Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.



Table of Contents

1.Debian packages

...

1.0.0 release

...

Code Block
languagebash
themeEmacs
titleUpdate Source List
# 1. Remove the original nightly build debian source(main) in /etc/apt/sources.list if any (using ```sed``` to replace that line with blank line)
sudo sed -i  's#deb https://dl.bintray.com/rackhd/debian trusty main##' /etc/apt/sources.list
# 2. add release debian source(release) in /etc/apt/sources.list 
echo deb https://dl.bintray.com/rackhd/debian trusty release | sudo tee -a /etc/apt/sources.list

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61
sudo apt-get update
  • Install RackHD
Code Block
languagebash
themeEmacs
titleInstall RackHD release version
sudo apt-get install rackhd
Info
titleNOTE

If the nightly build debian source exists in /etc/apt/sources.list (```deb https://dl.bintray.com/rackhd/debian trusty main```)

the RC(release candidate) build will be treated newer than offical released version, say, "apt-get" will think of 1.0.0-20170116UTC is newer than 1.0.0.

and you will never install release version using ```apt-get install rackhd```.

  • Latest nightly build

  • Update Source List 
Code Block
languagebash
themeEmacs
titleUpdate Source List
 echo deb https://dl.bintray.com/rackhd/debian trusty main | sudo tee -a /etc/apt/sources.list
 sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61
 sudo apt-get update
  • Get available version list
Code Block
languagebash
themeEmacs
titleGet available version list
sudo apt-cache policy rackhd
  • Install specified RackHD , the ${version} is the one of the version list obtained by above step
Code Block
languagebash
themeEmacs
titleInstall RackHD
sudo apt-get install aptitude
sudo aptitude install rackhd=${version}

2. OVA

Info

temporarily, the OVA download URL are only available inside DellEMC internal network , until we find a cloud disk space to store the released OVA images.

if you want a OVA image of RackHD , please turn to rackhd@emc.com

you are also welcomed to build OVA by yourselves .

Info

ova user/password: vagrant/vagrant

1.0.0 release

http://rackhdci.lss.emc.com/job/BuildRelease/job/Build/job/ova-build/

Latest nightly build :

Download the artifacts of last successful build

http://rackhdci.lss.emc.com/job/BuildRelease/job/Build/job/ova-build/

Image Removed

...

titleLimitation

So far, vSphere(ESX server) is NOT supported with customized properity (OVF 2.0 ?). only vCenter can support this OVA (because there's a customized prosperity feature to config IP during deployment.) reference: https://blogs.vmware.com/vapp/2009/07/commandline-ovf-deployments-.html

if you want to deploy to vSphere/ESXi, follow below steps:

Code Block
languagebash
themeEmacs
$# 1. Demote  the OVA file name is rackhd-ubuntu-14.04 , example
FNAME=rackhd-ubuntu-14.04
Code Block
languagebash
themeEmacs
$# 2. covert OVA to OVF and VMDK
ovftool   ${FNAME}.ova        ${FNAME}.ovf    
#  or using 7zip :  -->     7z x ${FNAME}.ova   
# then there will be 3 files: ${FNAME}-disk1.vmdk             ${FNAME}.mf                   ${FNAME}.ovf

Code Block
languagebash
themeEmacs
$# 3. replace the Property XML fields from the .ovf file
sed  -i  "/<Property/,/<\/Property>/c\ "  ${FNAME}.ovf
Code Block
languagebash
themeEmacs
$# 4. then deploy with the updated ${FNAME}.ovf file via ESXi vSphere GUI or ovftool command line
      #below is an example of ovftool usage:
 ovftool  --skipManifestCheck  --name=${GivenNameOfTheVM} --datastore=${TargetDatastore}      ${FNAME}.ovf           vi://user:pwd@${ESXi_IP}

3.Install from source code

1.0.0 release

Prerequisite : 

  - Install NodeJS 4.0 or upper 

How to :

 To clone and checkout to 1.0.0 release code. you can use this script in attachment or follow below steps.

Code Block
languagebash
themeMidnight
sudo ./get_rackhd_release_from_src.sh   1.0.0

above command line will clone and build local code , according to git tag "release/1.0.0". then using PM2 to start services.

you can change the tag name from 1.0.0 to other tag.

View file
nameget_rackhd_release_from_src.sh
height250

if you would like to do it by yourselves , you can follow:

1. clone all RackHD repos, then go into each on them:
Code Block
languagebash
themeMidnight
git fetch --all --tags
git checkout 1.0.0        # or 1.0.0-rc , depends on which tag you want to checkout
npm install --production

2.  link the on-core/on-tasks repo, to other repo's node_modules

Code Block
languagebash
themeMidnight
cd $repo/node_modules
rm on-core -rf
rm on-tasks -rf
ln -s ../../on-core      on-core
ln -s ../../on-tasks     on-tasks

3. using PM2 to start services

create a pm2.yml like below, the ```cwd``` should locate the where the on-xxx code lives.

then run  #sudo pm2 start pm2.yml

Code Block
languagetext
themeMidnight
apps:
  - script: index.js
     name: on-taskgraph
     cwd: on-taskgraph
  - script: index.js
     name: on-http
     cwd: on-http
  - script: index.js
     name: on-dhcp
     cwd: on-dhcp-proxy
  - script: index.js
     name: on-syslog
     cwd: on-syslog
  - script: index.js
     name: on-tftp
     cwd: on-tftp

4. Vagrant box

Before using vagrant we suggest to read vagrant docs first.

1.0.0 release

  • Get RackHD vagrant box
  • (warning) Note : vagrant version should be at least >= 1.8.5, to support `--box-version` parameter. ( check by ```vagrant -v ```)

This code snippet will pull the rackhd vagrant box of version 1.0.0. You can read the generated Vagrantfile for more configuration information.

Code Block
languagebash
themeEmacs
titleGet rackhd vagrant box
vagrant init rackhd/rackhd --force --box-version 1.0.0  # rackhd/rackhd is the Atlas repository of rackhd, this cmd will generate a simple Vagrantfile
vagrant up                                              # start the rackhd vagrant box according to Vagrantfile
vagrant ssh                                             # enter the box
  • (warning) Important Tips

For running RackHD service successfully, you need to up a second netcard.

For change configuration of RackHD, you need to mount local config into vagrant.

For connecting RackHD out of box, you need to forward internal ports to outside .

(lightbulb)Please see our example Vagrantfile for details. ( it's recommended to customized the vagrant file based on this example )

Latest nightly build

Format of nightly build version is 0.mm.dd. For example, you can get the nightly build on January 13 with

Code Block
languagebash
themeEmacs
titleGet latest nightly build
vagrant init rackhd/rackhd --force --box-version 0.01.13

...

ATTENTION: nightly builds will only be kept for two weeks.

5.Docker

1.0.0 release

Code Block
languagebash
themeDJango
titleGet docker images
git clone https://github.com/RackHD/RackHD.git
cd RackHD/docker
sudo TAG=1.0.0 docker-compose pull               # Download pre-built docker images.
sudo TAG=1.0.0 docker-compose up                 # Create containers and Run RackHD.

...

Code Block
languagebash
themeDJango
titleGet latest nightly build
git clone https://github.com/RackHD/RackHD.git
cd RackHD/docker
sudo TAG=nightly docker-compose pull               # Download pre-built docker images.
sudo TAG=nightly docker-compose up                 # Create containers and Run RackHD.

6.NPM

...

Note

The 1.0.0 installation guide page has been migrated to RackHD Release Installation Guide