1.首先准备三台机器,三台机器之间要互通免密码登录
vim /etc/hosts //配置文件 配置三台机器的互通
ssh-keygen -t rsa //生成公私钥对 (四个回车)
ssh-copy-id localhost //本机免密码
ssh-copy-id 虚拟机名称 //互登免密码
2.安装hadoop
三种运行方式-单机模式-伪分布式-完全分布式
echo $JAVA_HOME //检查jdk是否安装(必要的环境)
tar -zxvf hadoop-2.6.0 -C usr/local/soft//安装haddop到soft包下
HADOOP_HOME=/usr/local/hadoop-2.6.0 //配置环境变量
PATH=$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$PATH
source ~/.bash_profile //刷新配置文件
3.配置单节点hadoop (Single Node Setup)
vim etc/hadoop/hadoop-env.sh--修改jdk为真实路径
vim etc/hadoop/core-site.xml--写入下面代码
<property>
<name>fs.defaultFS</name>
<value>hdfs://node1(主机名):9000</value>
</property>
vim etc/hadoop/hdfs-site.xml--写入下面代码
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop/tmp</value>
</property>
</configuration>
测试: /bin/hdfs namenode -format //格式化系统文件
sbin/start-dfs.sh //启动服务
jps 看到下面三个服务证明文件系统已配好
namenode
datanode
seconderynamenode
cp mapred-side.xml.template mapred-side.xml //先拷贝一份配置文件去掉原有的后缀
vim mapred-side.xml //配置mapred写入下面代码
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
vim yarn-site.xml //配置aux服务为shuffle 写入下面代码
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
cd到sbin 启动yarn
./start-yarn.sh
测试:jps看有没有启动yarn文件运算服务
ResourceManager
NodeManager
vim slaves //配置主从
虚拟机名称.. //奴隶的名称
node51 node52
4.把配好的hadoop拷贝到另外两台机器
先拷贝jdk到另外两台机器
scp -r jdk1.8 root@node51:/usr/local/soft
scp -r jdk1.8 root@node52:/usr/local/soft
拷贝hadoop (把share下边的doc删除掉--文件太大,拷贝时间久)
rm -rf doc
scp -r hadoop-2.6.0/ root@node51:/usr/local/soft
scp -r hadoop-2.6.0/ root@node52:/usr/local/soft
环境变量文件也拷贝到另外两台机器
scp ~/.bash_profile root@node51:~/
source ~/.bash_profile //即使刷新配置文件
5 开启服务
sbin/start-all.sh //全部启动
jps查看启动的服务
主机(master):
6826 NameNode
7101 SecondaryNameNode
7246 ResourceManager
从机(salve):
5975 NodeManager
6095 DataNode