hadoop 2.6.4 单机伪分布式 一键部署脚本

版权声明:本文为博主原创文章,未经博主允许不得转载。交流请联系:351605040 https://blog.csdn.net/Arvinzr/article/details/79900540

单机部署脚本仅作为测试实验使用,如果需要部署集群,则不必使用此方法,仅供学习参考:

#!/bin/bash
source ~/.bash_profile
java -version

#stop iptables or open ports, now stop iptables
echo 'stop iptables ...';
#red hat
#service iptables stop
#chkconfig iptables off

#centos
systemctl stop firewalld ;
systemctl disable firewalld ;
#FF_INFO=`service iptables status`;
FF_INFO=`systemctl status firewalld`;
if [ -n "`echo $FF_INFO | grep "Firewall is not running"`" ]; then
    echo "Firewall is already stop."
else
    echo "[ERROR]:Failed to shut down the firewall.Exit shell."
fi
echo 'setting ssh no pass login';
(echo -e "\n"
sleep 1
echo -e "\n"
sleep 1
echo -e "\n")|ssh-keygen -t rsa
cat  ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 700  ~/.ssh
chmod 600  ~/.ssh/authorized_keys

echo 'setting login end';
echo 'install hadoop start';
echo 'tar hadoop-2.7.4.tar.gz ......';
tar -zxvf hadoop-2.7.4.tar.gz ;
cd hadoop-2.7.4 ;
hadoophome=$(cd `dirname $0`; pwd);
echo 'Hadoop HomePath is:'${hadoophome}
echo 'setting environment hadoop for system';

#echo export HADOOP_HOME=${hadoophome} >> ~/.bash_profile
#echo export HADOOP_PREFIX="${hadoophome}" >> ~/.bash_profile
#echo export PATH=$PATH:$HADOOP_PREFIX/bin >> ~/.bash_profile
#echo export PATH=$PATH:$HADOOP_PREFIX/sbin >> ~/.bash_profile
#echo export HADOOP_COMMON_HOME=\$HADOOP_PREFIX >> ~/.bash_profile
#echo export HADOOP_MAPRED_HOME=\$HADOOP_PREFIX >> ~/.bash_profile
#echo export HADOOP_HDFS_HOME=\$HADOOP_PREFIX >> ~/.bash_profile
#echo export YARN_HOME=\$HADOOP_PREFIX>> ~/.bash_profile
#echo export HADOOP_COMMON_LIB_NATIVE_DIR=\$HADOOP_PREFIX/lib/native >> ~/.bash_profile
#echo export HADOOP_OPTS="-Djava.library.path=\$HADOOP_PREFIX/lib" >> ~/.bash_profile

source ~/.bash_profile ;
commonXmlPath=${hadoophome}/etc/hadoop/ ;
echo $commonXmlPath;
echo 'setting /etc/hadoop xml document !'
jdk=${JAVA_HOME}
echo 'jdk document is:'${jdk}
sed -i "s/\${JAVA_HOME}/\/home\/auto_deploy\/jdk1.8/g"  ${commonXmlPath}hadoop-env.sh
sed -i '/<configuration>/a\<property\>\n\<name\>fs.default.name\<\/name\>\n\<value\>hdfs://localhost:9000\<\/value\>\n\<\/property\>\n\<property\>\n\<name\>hadoop.tmp.dir\<\/name\>\n\<value\>\/home\/hadoop\/tmp\<\/value\>\n\</property\>'  ${commonXmlPath}core-site.xml
sed -i '/<configuration>/a\<property\>\n\<name\>mapred.job.tracker\</name\>\n\<value\>localhost:9001\</value\>\</property\>'  ${commonXmlPath}mapred-site.xml.template
sed -i '/<configuration>/a\n\<property\>\n\<name\>dfs.replication\</name\>\n\<value\>1\</value\>\n\</property\>'   ${commonXmlPath}hdfs-site.xml
echo "hadoop安装完成,开始格式化。。。"
cp ${commonXmlPath}mapred-site.xml.template ${commonXmlPath}mapred-site.xml
echo "format begin" ;
source ~/.bash_profile ;

${hadoophome}/bin/hadoop namenode -format

sleep 10 ;

${hadoophome}/bin/hadoop datanode -format

sleep 10;

echo "start hadoop ";

sh ${hadoophome}/bin/start-all.sh ;
sleep 5;
jps;

echo "hadoop install end" ;
echo "format end";

以上亲测可以使用


猜你喜欢

转载自blog.csdn.net/Arvinzr/article/details/79900540