Skip to content

Instantly share code, notes, and snippets.

@sou
Created March 5, 2014 09:10
Show Gist options
  • Save sou/9363772 to your computer and use it in GitHub Desktop.
Save sou/9363772 to your computer and use it in GitHub Desktop.
install hadoop2 on ubuntu
#!/bin/bash
set -e
INSTALL_DIR=$(cd $(dirname $0); pwd;)
PB_DIR=$INSTALL_DIR/pb
SOLUTION=hadoop
PROJECT=common
VERSION=2.2.0
PACKAGE=$SOLUTION-$VERSION
URL=http://www.apache.org/dyn/mirrors/mirrors.cgi/$SOLUTION/$PROJECT/$PACKAGE/$PACKAGE-src.tar.gz?asjson=1
JSON=`curl -s $URL`
PREFERRED=`echo "$JSON" | awk '/preferred/ { print $2 }'`
PATHINFO=`echo "$JSON" | awk '/path_info/ { print $2 }'`
MIRROR=`echo "$PREFERRED$PATHINFO" | sed 's/[",]//g'`
echo "Donwloading archive from" $MIRROR
curl $MIRROR | tar -zxv -C $INSTALL_DIR
echo "Installing dependencies..."
sudo apt-get install maven libssl-dev build-essential cmake git pkg-config
echo "Installing oracle jdk7..."
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install -y oracle-java7-installer
echo "export JAVA_HOME=/usr/lib/jvm/java-7-oracle" >> ~/.bashrc
source ~/.bashrc
echo "Building protobuf..."
curl https://protobuf.googlecode.com/files/protobuf-2.5.0.tar.gz | tar -zxv -C $INSTALL_DIR
cd protobuf-2.5.0/
./configure --prefix=$PB_DIR && make -j && make install
cd ..
cd hadoop-2.2.0-src/
wget https://issues.apache.org/jira/secure/attachment/12614482/HADOOP-10110.patch
patch -p0 < HADOOP-10110.patch
export PATH=$PB_DIR/bin:$PATH
mvn package -Pdist,native -DskipTests -Dtar
cd ..
tar zxv -C $INSTALL_DIR -f hadoop-2.2.0-src/hadoop-dist/target/hadoop-2.2.0.tar.gz
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment