1. 使用vm安装centos7.0
可以参考文章: CentOS 7.0系统安装配置步骤及网络开启配置详解(https://blog.csdn.net/youzhouliu/article/details/51175364)
2.配置linux虚拟机桥接模式,设置上网
第一个虚拟机,定为master
可参考文章: # 主机桥接Centos7联网问题总结
3.使用vm克隆两个虚拟机,组件集群
克隆的两个虚拟机,分别为slave1和slave2
4.修改slave1和slave2的ip,并通过配置使其能够联网
5. 修改mater,slave1和slave2的hostname
可参考文章: centos7配置SSH免密码登陆(https://blog.csdn.net/uuidanduid/article/details/60172998)
6.设置集群节点之间的免密码互访机制
可参考文章: centos7配置SSH免密码登陆(https://blog.csdn.net/uuidanduid/article/details/60172998)
7.使用xftp上传文件
这里是与centos6.5有所区别的地方,centos6.5可以通过共享文件夹的方式,上传文件.
而centos7.0不同通过简单设置共享文件夹的方式上传文件,还需要安装vm tools,相对复杂些.
而真正生产环境一般不用共享文件夹,而是更多使用xftp,所以此处选择使用xftp.
8.将所需要的安装包上传到/usr/local/src
目录下
这里主要使用的安装包有:
jdk-7u80-linux-x64.tar.gz
hadoop-2.6.1.tar.gz
需要的linux命令:
#解压命令:
tar -zxvf jdk-7u80-linux-x64.tar.gz
#跨节点复制命令:
scp -rp jdk-7u80-linux-x64.tar.gz 192.168.175.21:/usr/local/src/
#或者
scp -rp jdk-7u80-linux-x64.tar.gz slave1:/usr/local/src/
需要在~/.bashrc
进行如下方式的配置
iptables -F #强制关闭防火墙
setenforce 0
hostname master
export JAVA_HOME=/usr/local/src/jdk1.7.0_80
export HADOOP_HOME=/usr/local/src/hadoop-2.6.1
# added by Anaconda3
#export PATH =/root/anaconda3/bin:$PATH
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib
export PATH=$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH
9. 在jdk安装完成后,就可以配置hadoop2.0了.
配置hadoop文件所在的路径为:/usr/local/src/hadoop-2.6.1/etc/hadoop
9.1 在hadoop-env.sh中配置JAVA_HOME
# The java implementation to use.
export JAVA_HOME=/usr/local/src/jdk1.7.0_80
9.2 在yarn-env.sh中配置JAVA_HOME
# some Java parameters
export JAVA_HOME=/usr/local/src/jdk1.7.0_80
9.3 在slaves中配置从节点
slave1
slave2
9.4 在core-site.xml中配置如下:
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/src/hadoop-2.6.1/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
9.5 在HADOOP_HOME创建如下目录:tmp,dfs/name,dfs/data
执行命令:
mkdir tmp
mkdir -p dfs/name
mkdir -p dfs/data
9.6 在hdfs-site.xml中进行如下配置:
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/src/hadoop-2.6.1/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/src/hadoop-2.6.1/dfs/data</value>
</property>
</configuration>
9.7 修改mapred-site.xml.template文件名->mapred-site.xml
执行命令:
cp mapred-site.xml.template mapred-site.xml
在mapred-site.xml进行如下配置:
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
9.8 在yarn-site.xml中进行如下配置:
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8035</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>
</configuration>
9.9 将配置好的hadoop-2.6.1文件夹,依次复制到其他两个节点上
操作命令如下:
scp -rp hadoop-2.6.1 slave1:/usr/local/src/
9.10 类似master在~/.bashrc
的环境变量配置,在slave1和slave2同样进行配置,记得修改hostname
9.11 一切准备就绪,开始格式化并启动集群
命令如下:
#格式化
./bin/hadoop namenode -format
#启动
./sbin/start-dfs.sh
./sbin/start-yarn.sh
9.12 测试集群启动情况,在各个节点执行jps命令:
在master节点正常启动的话,会显示如下:
SecondaryNameNode
Jps
NameNode
ResourceManager
在slave1和slave2节点应显示如下:
NodeManager
Jps
DataNode
9.13 测试集群能否上传与读取文件
命令如下:
#上传文件:(自己随便创建一个文件即可)
hadoop fs -put /usr/local/src/test /
#查看文件类表:
hadoop fs -ls /
#读取文件:
hadoop fs -text /test
配置流程,可参考文章:
网友评论