修改主机名称

vim /etc/sysconfig/network

内容:HOSTNAME=master

分别修改其他主机HOSTNAME

修改hosts文件

  • vim /etc/hosts
  • 写入mater,slave1,slave2,。。。格式为 ip name 如:192.168.202.10 master
    在这里插入图片描述
  • scp /etc/hosts slave1:/etc/hosts 将文件分别复制到从机中

主从免密登录

  • 主节点 通过 ssh-keygen 回车。。。直到生成文件
  • cd ~/.ssh
  • 写入文件: cat id_rsa.pub > authorized_keys
  • 从节点 ssh-keygen生成文件
  • cd ~/.ssh
  • cat id_rsa.pub 将显示出的内容复制到主节点的authorized_keys中
  • 全部复制完毕后,在主节点的.ssh目录下执行**scp authorized_keys slave1:~/.ssh/**复制到所有从节点中
  • 验证 ssh slave1直接进入从机说明操作成功

Hadoop安装(1.0+和2.0+版本上有很多区别)

  • 保证Java环境正常

  • Hadoop下载地址 选择稳定发行版,当前选择2.7.7
    在这里插入图片描述

  • 下载上传到CentOS中,tar -zxvf xxxx解压

    修改/hadoop-2.7.7/etc/hadoop/hadoop-env.sh

    将其中的JAVA_HOME修改为本机JAVA_HOME路径
    在这里插入图片描述

    修改hadoop/core-site.xml

    hadoop 安装目录mkdir tmp创建临时文件夹

    vim /usr/local/src/hadoop-2.7.7/etc/hadoop/core-site.xml
    
1
2
3
4
5
6
7
8
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/src/hadoop-2.7.7/tmp</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.202.10:9000</value>
</property>

修改hadoop/mapred-site.xml

如果没有通过cp复制一份template文件并去掉template

打开mapred-site.xml

1
2
3
4
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

修改hadoop/hdfs-site.xml

配置hdfs副本数,默认3

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

<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.7.7/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/src/hadoop-2.7.7/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>

修改yarn-site.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<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>

创建临时目录和文件目录

1
2
3
mkdir /usr/local/src/hadoop-2.7.7/tmp
mkdir -p /usr/local/src/hadoop-2.7.7/dfs/name
mkdir -p /usr/local/src/hadoop-2.7.7/dfs/data

配置环境变量

vim ~/.bashrc
HADOOP_HOME=/usr/local/src/hadoop-2.7.7
export PATH=$PATH:$HADOOP_HOME/bin

复制hadoop到其他从机

scp -rp xxx slave1:/hadoop 存放路径

禁用CentOS7防火墙

systemctl stop firewalld.service 停止防火墙进程

systemctl disable firewalld.service 禁止开机启动

关闭selinux setenforce 0

启动Hadoop

第一次启动需要格式化

进入bin目录

格式化 ./hdfs namenode -format

进入sbin目录

启动 ./start-all.sh

jps查看主从节点

主节点
在这里插入图片描述
从节点
在这里插入图片描述

检验是否成功

进入bin目录

1
./hadoop fs -put 任意文件 /

在这里插入图片描述
无报错说明上传成功

1
./hadoop fs -ls /

在这里插入图片描述
此时应该打印出刚才上传的文件

1
./hadoop fs -cat /test.txt

查看文件内容是我们上传的
在这里插入图片描述

进入从节点执行查看命令,应该可以看到我们刚才上传的文件