节点类型 |
IP地址 |
主机名 |
|
Namenode |
192.168.29.6 |
master |
Namenode/ SenddaryNameNode/ ResourceManager/Jps
|
DataNode |
192.168.29.7 |
slave1 |
DateNode/NodeManager/Jps
|
DataNode |
192.168.29.8 |
slave2 |
DateNode/NodeManager/Jps
|
三台虚拟机的用户要一致
把三台虚拟机的防火墙关闭:sudo service iptables stop
2.1在hadoop用户的根目录,Jdk解压,(hadoop用户操作)
tar -zxvf jdk-8u65-linux-x64.tar.gz –C app/
解压完成后,在hadoop用户的app目录有一个jdk1.8.0_65目录
2.2配置环境变量,需要修改/etc/profile文件(root用户操作)
切到root用户,输入su命令
vi /etc/profile
进去编辑器后,输入i,进入vi编辑器的插入模式,在profile文件最后添加
JAVA_HOME=/home/hadoop/app/jdk1.8.0_65 export PATH=$PATH:$JAVA_HOME/bin |
编辑完成后,按下esc退出插入模式输入:,这时在左下角有一个冒号的标识
q 退出不保存
wq 保存退出
q! 强制退出
1. 把修改的环境变量生效(hadoop用户操作)
执行source /etc/profile
vi /etc/hosts
内容:
192.168.29.6 master
192.168.29.7 slave1
192.168.29.8 slave2
可以修改master的hosts文件,然后复制到另外了两个机器上:
scp /etc/hosts slave1:/etc/hosts
scp /etc/hosts slave2:/etc/hosts
4.1 克隆slave1、slave2
配置IP
Address Netmask Gateway
Master: 192.168.29.6 255.255.255.0 192.168.29.2
Slave1: 192.168.29.7 255.255.255.0 192.168.29.2
Slave2: 192.168.29.8 255.255.255.0 192.168.29.2
1. 生成公钥和私钥
在命令行执行ssh-keygen,然后回车,然后会提示输入内容,什么都不用写,一路回车
在hadoop用户根目录下,有一个.ssh目录
id_rsa 私钥
id_rsa.pub 公钥
known_hosts 通过SSH链接到本主机,都会在这里有记录
2. 把公钥给信任的主机(本机)
在命令行输入ssh-copy-id 主机名称
ssh-copy-id master
ssh-copy-id slave1
ssh-copy-id slave2
复制的过程中需要输入信任主机的密码
3. 验证,在命令行输入:ssh 信任主机名称
ssh master
ssh slave1
ssh slave2
如果没有提示输入密码,则配置成功
master和slave1互相配置互信
master和slave2互相配置互信
1. 在hadoop用户的根目录,解压(hadoop用户操作)
tar -zxvf hadoop-2.6.0.tar.gz –C ./app
解压完成在hadoop用户的app目录下有一个hadoop-2.6.0目录
2. 修改配置文件(hadoop用户操作)
vi hadoop-2.6.0/etc/hadoop/hadoop-env.sh 修改
export JAVA_HOME=/home/hadoop/app/jdk1.8.0_65
3. 修改配置文件,添加(hadoop用户操作)
vi hadoop-2.6.0/etc/hadoop/core-site.xml
<property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/home/hadoop/appdata/hadoop/tmp</value> <description>Abasefor other temporary directories.</description> </property>
|
4. 修改配置文件vi hadoop-2.6.0/etc/hadoop/hdfs-site.xml,添加(hadoop用户操作)
<property> <name>dfs.namenode.secondary.http-address</name> <value>master:9001</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/home/hadoop/appdata/hadoop/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/home/hadoop/appdata/hadoop/dfs/data</value> </property> <property> <name>dfs.replication</name> <value>2</value> </property> |
5. 修改修改配置文件vi etc/hadoop/mapred-site.xml (hadoop用户操作)
这个文件没有,需要复制一份 (cd hadoop-2.6.0/)目录下
cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml
添加
<property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>master:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>master:19888</value> </property> |
|
6. 修改配置文件vi etc/hadoop/yarn-site.xml,添加(hadoop用户操作)
<property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.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> |
7. 修改配置文件vi etc/hadoop/slaves,添加(hadoop用户操作)
slave1 slave2 |
scp –r app/hadoop-2.6.0 slave1:~/app/
scp –r app/hadoop-2.6.0 slave2:~/app/
bin/hdfs namenode –format
格式化只能操作一次并且在主节点格式化,如果需要再次格式化,需要把appdata/hadoop目录清空
启动hadoop
sbin/start-all.sh
在master、slave1、slave2分别:jps
master出现Jps、Namenode、SenddaryNameNode、ResourceManager
slave1、slave2出现DateNode/NodeManager/Jps
则配置成功
在hadoop解压目录输入一下命令
查看文件夹:bin/hadoop fs -ls /
创建目录:bin/hadoop fs -mkdir /input
创建文件:vi input.txt 输入任意内容
将本地文件放入hdfs:bin/hadoop fs -put input.txt /input
查看hdfs内文件内容::bin/hadoop fs -cat /input/input.txt
删除目录:bin/hadoop fs -rm -r /input
http://192.168.29.6:50070
sbin/stop-all.sh