软件环境: VMware workstation 11.0
linux :CentOS 6.7
hadoop-2.7.3
jdk-1.0.7_67
spark-2.1.0-bin-hadoop2.7/
安装虚拟机和jdk就不再此赘述。
直接讲解安装hadoop和spark的安装。
一。下载hadoop源码包。点击此处下载: http://hadoop.apache.org/
1.下载后解压到指定的目录下。
tar -zxvf hadoop-2.7.3.tar.gz -C /usr/hadoop
2.解压后进入目录 cd /usr/hadoop/hadoop-2.7.3
3.修改配置文件: 进入到cd /hadoop-2.7.3/etc/hadoop下需要修改几个配置文件
1> cp etc/hadoop/hadoop-env.sh.template.hadoop-env.sh
cp etc/hadoop/hdfs-site.xml.templete hdfs-site.xml
cp etc/hadoop/core-site.templete core-site.xml
cp etc/hadoop/mapred-env.sh.templete mapred-env.sh
cp etc/hadoop/mapred-site.templete mapred-site.sh
cp etc/hadoop/slaves.templete slaves
cp etc/yarn-env.sh.templete yarn-env.sh
cp etc/yarn-site.xml.templete yarn-site.xml
注意: 一般修改系统配置文件时最好做一个备份或者复制后修改,就像这样的。
hadoop-env.sh 配置文件的内容
# The java implementation to use. export JAVA_HOME=/opt/modules/jdk1.7.0_67/ 这是需要修改为自己机器安装的jdk的位置。其他文件内容不需要修改。
hdfs-site.xml <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.block.size</name> <value>134217728</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/home/hadoopdata/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/home/hadoopdata/dfs/data</value> </property> <property> <name>fs.checkpoint.dir</name> <value>/home/hadoopdata/checkpoint/dfs/cname</value> </property> <property> <name>fs.checkpoint.edits.dir</name> <value>/home/hadoopdata/checkpoint/dfs/cname</value> </property> <property> <name>dfs.http.address</name> <value>master:50070</value> </property> <property> <name>dfs.secondary.http.address</name> <value>slave1:50090</value> </property> <property> <name>dfs.webhdfs.enabled</name> <value>true</value> </property> <property> <name>dfs.permissions</name> <value>true</value> </property> </configuration>
3> core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:8020</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/modules/hadoop-2.7.3/data/tmp</value>
</property>
</configuration>
4> mapred-env.sh
export JAVA_HOME=/usr/local/java/jdk1.7.0_67/
修改为自己电脑的jdk路径。
5> mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<final>true</final>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
<property>
<name>mapreduce.job.ubertask.enable</name>
<value>true</value>
</property>
<property>
<!-- 配置map任务的主节点 运行在哪台节点-->
<name>mapred.job.tracker</name>
<value>master:9001</value>
</property>
6> slaves 设置需要几个节点运行
master
slave1
slave2
7> yarn-env.sh
JAVA=$JAVA_HOME/bin/java 引用jdk的路径
8> yarn-site.xml
<property>
<name>yarn.resourcemanager.hostname</name>
<value>salve2 </value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>slave2:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>slave2:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>slave2:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>slave2:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>slave2:8088</value>
</property>
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<property>
<name>yarn.nodemanager.remote-app-log-dir</name>
<value>/opt/modules/hadoop-2.7.3/tmp/logs</value>
</property>
注意: 修改完配置后,需要将hadoop分发到其他节点。 slave1和slave2.
scp -r /usr/hadoop/hadoop-2.7.3 [email protected]:/usr/hadoop
scp -r /usr/hadoop/hadoop-2.7.3 [email protected]:/usr/hadoop
然后需要修改环境变量文件。可以修改当前用户的 环境变量文件,就是~./bash_rc 或全局变量文件 /etc/profile
export JAVA_HOME=/usr/local/jdk-1.7.0_67
export PATH=:PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:
保存 :wq; 然后可以把环境变量文件发送给其他节点。
二. 格式化namenode节点
hadoop namenode -format 会看到一堆输出信息。然后会提示namenode 格式化成功的提示。
三。启动集群.
可以全部启动,也可以单独 启动。
hadoop 安装路径下有个sbin 目录,下是存放的是系统的启动脚本。
全部启动: start-all.sh
单独启动节点: hadoop-daemon.sh start namenode/datanode xxx.
启动后用jps查看进程。