环境准备
centos免登陆设置
1在主机master上 2cd ~/.ssh # 如果没有该目录,先执行一次ssh localhost 3rm ./id_rsa* # 删除之前生成的公匙(如果有) 4ssh-keygen -t rsa # 一直按回车就可以 5让 Master 节点需能无密码 SSH 本机,在 Master 节点上执行: 6cat ./id_rsa.pub >> ./authorized_keys 7完成后可执行 ssh Master 验证一下(可能需要输入 yes,成功后执行 exit 返回原来的终端)。 8接着在 Master 节点将上公匙传输到 Slave1 节点: 9scp ~/.ssh/id_rsa.pub hadoop@slave1:/home/ 10在slave1上执行授权 11mkdir ~/.ssh # 如果不存在该文件夹需先创建,若已存在则忽略 12cat /home/id_rsa.pub >> ~/.ssh/authorized_keys 13rm ~/id_rsa.pub # 用完就可以删掉了 14同样步骤在其他slave上执行 15最后验证master 和其他slave 是否能免密码登录 16ssh master 17ssh slave1
安装JDK8,解压Hadoop
设置环境变量
1vim ~/.bashrc 2 3export JAVA_HOME=/usr/java/jdk1.8.0_60 4export PATH=$JAVA_HOME/bin:$PATH 5export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 6export PATH=$PATH:/home/hadoop/bin:/home/hadoop/sbin
配置Hadoop
1vim /home/hadoop/etc/hadoop/core-site.xml 2 3<configuration> 4<property> 5 <name>fs.defaultFS</name> 6 <value>hdfs://master:9000</value> 7 </property> 8 <property> 9 <name>hadoop.tmp.dir</name> 10 <value>file:/tmp</value> 11 <description>Abase for other temporary directories.</description> 12 </property> 13</configuration> 14 15vim /home/hadoop/etc/hadoop/hdfs-site.xml 16<configuration> 17<property> 18 <name>dfs.namenode.secondary.http-address</name> 19 <value>master:50090</value> 20 </property> 21 <property> 22 <name>dfs.replication</name> 23 <value>1</value> 24 </property> 25 <property> 26 <name>dfs.namenode.name.dir</name> 27 <value>file:/tmp/dfs/name</value> 28 </property> 29 <property> 30 <name>dfs.datanode.data.dir</name> 31 <value>file:/tmp/dfs/data</value> 32 </property> 33</configuration> 34 35 vim mapred-site.xml (可能需要先重命名,默认文件名为 mapred-site.xml.template) 36 37 <configuration> 38 <property> 39 <name>mapreduce.framework.name</name> 40 <value>yarn</value> 41 </property> 42 <property> 43 <name>mapreduce.jobhistory.address</name> 44 <value>master:10020</value> 45 </property> 46 <property> 47 <name>mapreduce.jobhistory.webapp.address</name> 48 <value>master:19888</value> 49 </property> 50</configuration> 51 52yarn-site.xml 53<configuration> 54 <!--此处容易出错,导致启动失败,hadoop默认内存为8G,由于测试环境一般为虚拟机,所以按实际内存设置,hadoop不会自己检测内存大小 --> 55 <property> 56 <name>yarn.nodemanager.resource.memory-mb</name> 57 <value>1024</value> 58 <discription>每个节点可用内存,单位MB</discription> 59 </property> 60 <property> 61 <name>yarn.resourcemanager.hostname</name> 62 <value>master</value> 63 </property> 64 <property> 65 <name>yarn.nodemanager.aux-services</name> 66 <value>mapreduce_shuffle</value> 67 </property> 68</configuration> 69 70设置slave的节点 71vim slaves 72 73slave1 74slave2
Hadoop相关命令
1start-all.sh 2 3stop-all.sh 4所有的操作,在master上做,slave上无需手工操作,hadoop将使用之前的免登陆设置,自动进行