自动化脚本腾讯云配置集群(四)自动化安装从节点的JDK+Hadoop
2017-09-02 23:07
525 查看
在大规模集群中直接自动化安装软件JDK和Hadoop,效率是可想而知的。
这一部分紧接之前3个部分的环境配置,完成jdk和hadoop的安装,这样hadoop大规模集群算是完成了。
本小节的步骤较多,但并不复杂:
》首先准备好要分发到从节点的文件,包含以下三个文件:
软件包(*tar.gz)+环境变量设置文本(*env)+从节点上执行的脚本(.sh)
脚本文件会在各个从节点上运行,其功能主要是解压软件包,并将软件的环境变量配置添加入当前节点的~/.bashrc文件中。
1.jdk.sh
2.jdkenv
3.hadoop.sh
4.hadoopenv
》主节点上操纵从节点执行上述的脚本文件,完成该功能的脚本jdk_hadoop.sh,改文件存在于主节点中,直接在主节点中执行改文件,即可完成自动化在各个从节点上解压文件并更新用户的环境变量。
主要过程:
对slavenodes(解释见前几部分博文)中的各个从节点,创建相应的文件夹,再使用rsync命令将之前所述的三类文件分发到各个从节点的相应文件夹中,最后,则直接控制执行从节点文件夹中的脚本文件即可。
》最后则是配置hadoop的conf相关文件,具体修改的hadooppath/etc/hadoop/路径下的相关文件,具体修改内容,请参考https://my.oschina.net/jackieyeah/blog/657750。先在主节点上将这些文件修改后,再利用脚本将修改后的文件直接分发到从节点即可。
这一部分紧接之前3个部分的环境配置,完成jdk和hadoop的安装,这样hadoop大规模集群算是完成了。
本小节的步骤较多,但并不复杂:
》首先准备好要分发到从节点的文件,包含以下三个文件:
软件包(*tar.gz)+环境变量设置文本(*env)+从节点上执行的脚本(.sh)
脚本文件会在各个从节点上运行,其功能主要是解压软件包,并将软件的环境变量配置添加入当前节点的~/.bashrc文件中。
1.jdk.sh
#!bin/bash tar -zxvf ~/myscript/jdk/jdk-8u131-linux-x64.tar.gz -C ~/ mv ~/jdk1.8.0_131 ~/jdk1.8 cat ~/myscript/jdk/jdkenv >> ~/.bashrc source ~/.bashrc
2.jdkenv
# java Env export JAVA_HOME=~/jdk1.8 export JRE_HOME=~/jdk1.8/jre export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
3.hadoop.sh
#!bin/bash tar -zxvf ~/myscript/hadoop/hadoop-2.6.0.tar.gz -C ~/ cat ~/myscript/hadoop/hadoopenv >> ~/.bashrc source ~/.bashrc
4.hadoopenv
# Hadoop Env export HADOOP_HOME=~/hadoop-2.6.0 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH
》主节点上操纵从节点执行上述的脚本文件,完成该功能的脚本jdk_hadoop.sh,改文件存在于主节点中,直接在主节点中执行改文件,即可完成自动化在各个从节点上解压文件并更新用户的环境变量。
主要过程:
对slavenodes(解释见前几部分博文)中的各个从节点,创建相应的文件夹,再使用rsync命令将之前所述的三类文件分发到各个从节点的相应文件夹中,最后,则直接控制执行从节点文件夹中的脚本文件即可。
#!bin/bash nodes=($(awk "{print \$1}" slavenodes)) for node in ${nodes[*]} do ssh $node "mkdir -p /home/ubuntu/myscript/jdk/" ssh $node "mkdir -p /home/ubuntu/myscript/hadoop/" rsync -r --progress ~/myscript/jdk/ ubuntu@$node:/home/ubuntu/myscript/jdk/ rsync -r --progress ~/myscript/hadoop/ ubuntu@$node:/home/ubuntu/myscript/hadoop/ ssh $node "bash /home/ubuntu/myscript/jdk/jdk.sh" ssh $node "bash /home/ubuntu/myscript/hadoop/hadoop.sh" done
》最后则是配置hadoop的conf相关文件,具体修改的hadooppath/etc/hadoop/路径下的相关文件,具体修改内容,请参考https://my.oschina.net/jackieyeah/blog/657750。先在主节点上将这些文件修改后,再利用脚本将修改后的文件直接分发到从节点即可。
#!bin/bash #完成hadoop/etc/hadoop/下的所有配置文件设置后,将配置文件分发到slave节点上 nodes=($(awk "{print \$1}" slavenodes)) for node in ${nodes[*]} do # 重新格式化主节点并重启时,需要将datanode中hadoop下的tmp和logs文件清空或直接删除。 # ssh $node "rm -r /home/ubuntu/hadoop-2.6.0/tmp" # ssh $node "rm -r /home/ubuntu/hadoop-2.6.0/logs" # 分发配置文件 rsync -r --progress ~/hadoop-2.6.0/etc/hadoop/ zhangtao@$node:/home/ubuntu/hadoop-2.6.0/etc/hadoop/ done #开启集群 #hadoop namenode -format # start-all.sh #开启JobHistoryServer进程 # mr-jobhistory-daemon.sh start historyserver
相关文章推荐
- hadoop集群安装与配置--hadoop自动化安装脚本
- Hadoop集群配置【二、单节点安装】
- hadoop - hadoop2.6 分布式 - 集群环境搭建 - JDK安装配置和SSH安装配置与免密码登陆(集群中)
- 一步步教你Hadoop多节点集群安装配置
- CentOS 6.5下搭建hadoop 2.6.0集群(一):安装配置JDK
- Hadoop多节点集群安装配置
- Hadoop 三节点集群安装配置详细实例
- 一步步教你Hadoop多节点集群安装配置
- 完全分布模式hadoop集群安装配置之二 添加新节点组成分布式集群
- 一步步教你Hadoop多节点集群安装配置
- Hadoop单机单节点集群安装配置
- 一步步教你Hadoop多节点集群安装配置
- 完全分布式Hadoop集群的安装搭建和配置(4节点)
- Hadoop多节点集群安装配置
- Hadoop多节点集群安装配置
- hadoop 1.x 三节点集群安装配置详细实例
- Hadoop分布式集群搭建(一)创建hadoop用户、配置ssh、安装jdk
- 自动化脚本腾讯云配置集群(一)挂载磁盘
- Hadoop实战4:MapR分布式集群的安装配置及shell自动化脚本
- hadoop多节点集群安装配置