#!/bin/bash
echo "---- Runninig scripts in root_local-hooks ----"
echo "---- [1] Installing Sun Java JDK 6 ........ ----"
echo "deb http://free.nchc.org.tw/debian lenny non-free" > lenny-non-free.list
mv lenny-non-free.list /etc/apt/sources.list.d/.
apt-get update
cat << EOF | /usr/bin/debconf-set-selections
sun-java6-bin shared/accepted-sun-dlj-v1-1 select true
sun-java6-jdk shared/accepted-sun-dlj-v1-1 select true
sun-java6-jre shared/accepted-sun-dlj-v1-1 select true
EOF
apt-get -y install sun-java6-jdk
echo "---- [2] Installing Hadoop 0.20.2 ........ ----"
cd /opt
{
if [ ! -x /opt/hadoop ]; then
wget http://ftp.twaren.net/Unix/Web/apache/hadoop/core/hadoop-0.20.2/hadoop-0.20.2.tar.gz
tar zxvf hadoop-0.20.2.tar.gz
rm -f hadoop-0.20.2.tar.gz
mv hadoop-0.20.2/ hadoop
chown -R hadoop:hadoop /opt/hadoop
if [ ! -x /var/hadoop ]; then
mkdir -p /var/hadoop
chown -R hadoop:hadoop /var/hadoop
fi
fi
}
if [ ! -x /opt/hadoop ]; then
echo "---- [ERROR] /opt/hadoop is not exist!! ----"; exit;
else
echo "---- [3] Configure Hadoop NameNode and JobTracker .... ----"
cd /opt/hadoop
{
if [ ! -f /opt/hadoop/conf/hadoop-env.sh ]; then
echo "---- [ERROR] /opt/hadoop/conf/hadoop-env.sh is not exist!! ----"; exit
else
if [ ! -f /opt/hadoop/conf/hadoop-env.sh.org ]; then
echo "---- [3.1] Updating /opt/hadoop/conf/hadoop-env.sh .... ----"
cp /opt/hadoop/conf/hadoop-env.sh /opt/hadoop/conf/hadoop-env.sh.org
cat >> conf/hadoop-env.sh << EOF
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export HADOOP_HOME=/opt/hadoop
export HADOOP_CONF_DIR=/opt/hadoop/conf
EOF
fi
fi
if [ ! -f /opt/hadoop/conf/core-site.xml ]; then
echo "---- [ERROR] /opt/hadoop/conf/core-site.xml is not exist!! ----"; exit
else
if [ ! -f /opt/hadoop/conf/core-site.xml.org ]; then
echo "---- [3.2] Updating /opt/hadoop/conf/core-site.xml .... ----"
cp /opt/hadoop/conf/core-site.xml /opt/hadoop/conf/core-site.xml.org
cat > conf/core-site.xml << EOF
fs.default.name
hdfs://localhost:9000
hadoop.tmp.dir
/var/hadoop/hadoop-\${user.name}
EOF
fi
fi
if [ ! -f /opt/hadoop/conf/hdfs-site.xml ]; then
echo "---- [ERROR] /opt/hadoop/conf/hdfs-site.xml is not exist!! ----"; exit
else
if [ ! -f /opt/hadoop/conf/hdfs-site.xml.org ]; then
echo "---- [3.3] Updating /opt/hadoop/conf/hdfs-site.xml .... ----"
cp /opt/hadoop/conf/hdfs-site.xml /opt/hadoop/conf/hdfs-site.xml.org
cat > conf/hdfs-site.xml << EOF
dfs.replication
1
EOF
fi
fi
if [ ! -f /opt/hadoop/conf/mapred-site.xml ]; then
echo "---- [ERROR] /opt/hadoop/conf/mapred-site.xml is not exist!! ----"; exit
else
if [ ! -f /opt/hadoop/conf/mapred-site.xml.org ]; then
echo "---- [3.3] Updating /opt/hadoop/conf/mapred-site.xml .... ----"
cp /opt/hadoop/conf/mapred-site.xml /opt/hadoop/conf/mapred-site.xml.org
cat > conf/mapred-site.xml << EOF
mapred.job.tracker
localhost:9001
EOF
fi
fi
if [ ! -d /var/hadoop/hadoop-root/dfs/name ]; then
echo "---- [3.4] Formating NameNode .... ----"
bin/hadoop namenode -format
fi
}
fi