机器名称 | 机器IP | 部署服务 |
---|---|---|
g10master | 172.16.10.101 | hadoop master |
g10slave1 | 172.16.10.102 | slave1 |
g10slave2 | 172.16.10.103 | slave2 |
1.网络配置
1.1 设置本机名称
在三台机器上分别编辑以下文件,写入对应的主机名称(g10master,g10slave1,g10slave2)
vim /etc/hostname
1.2 配置hosts文件
在三台机器上分别编辑以下文件,写入主机名称和IP的对应关系
vim /etc/hosts
g10master 172.16.10.101
g10slave1 172.16.10.102
g10slave2 172.16.10.103
1.3 测试网络
在三台机器上分别ping其他两台主机(以g10master为例)
ping g10slave1
ping g10slave2
2.安装JDK
在三台机器上分别安装JDK(要求版本一致)
2.1 解压jdk
tar -zxvf /root/data/jdk-8u333-linux-x64.tar.gz -C /usr/local/src
2.2 改名称
mv /usr/local/src/jdk1.8.0_333 /usr/local/src/java
2.3 配置环境变量
编辑以下文件,写入对应的环境变量
vim /etc/profile
export JAVA_HOME=/usr/local/src/java
export CLASSPATH=.:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin
2.4 让环境变量生效
source /etc/profile
2.5 检验JDK是否安装成功
java -version
3.安装hadoop
在三台机器上分别做下列操作
3.1 解压
tar -zxvf /root/data/hadoop-2.7.7.tar.gz -C /usr/local/src/
3.2 改名称
mv /usr/local/src/hadoop-2.7.7 /usr/local/src/hadoop
3.3 配置环境变量
vim /etc/profile
export HADOOP_HOME=/usr/local/src/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
3.4 让环境变量生效
source /etc/profile
3.5 检验hadoop是否安装成功
hadoop version
4、配置hadoop
4.1 配置文件
在三台机器上的/usr/local/src/hadoop/etc/hadoop文件下分别配置以下三个文件
4.1.1 hadoop-env.sh
vim /usr/local/src/hadoop/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/local/src/java
4.1.2 core-site.xml
vim /usr/local/src/hadoop/etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://g10master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/src/hadoop/tmp</value>
</property>
</configuration>
注意:地址一定是主机(master)的名称,不是从机(slave)的名称
4.1.3 hdfs-site.xml
vim /usr/local/src/hadoop/etc/hadoop/hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
4.1.4 slaves
使用vim打开slavers文件
/usr/local/src/hadoop/etc/hadoop/slaves
写入以下内容
g10master
g10slave1
g10slave2
4.2 创建文件夹
在三台机器上都要创建tmp文件夹
mkdir /usr/local/src/hadoop/tmp
5 SSH 免密登录
5.1 生成key
分别在三台计算机上做以下操作
cd ~
ssh-keygen
5.2 拷贝凭证
只在主机上做以下操作
ssh-copy-id g10master
ssh-copy-id g10slave1
ssh-copy-id g10slave2
执行过程中会询问是否继续,输入
yes
后输入对应计算机用户的密码即可
5.3 检验免密登录
在主机上输入以下命令,验证是否需要输入密码
ssh g10master
ssh g10slave1
ssh g10slave2
如果免密登录操作失败,可以在每台机器上执行
rm -rf ~/.ssh
命令,删除之前的配置,重新进行ssh免密登录配置
6、启动hadoop集群
只在master主机上操作
6.1 格式化文件系统
hdfs namenode -format
6.2 启动hadoop集群
/usr/local/src/hadoop/sbin/start-dfs.sh
6.3 验证是否启动成功
jps
分别在g10slave1 和g10slave2节点上使用
jps
观察进程,应该存在DataNode
进程
6.4 出错后重建
如果格式化出错或者启动集群过程出是配置文件出现错误,判断需要重新格式化的情况下可以采用以下方式解决
- 1.停止集群(只在主机上操作)
stop-dfs.sh
- 2.删除配置的临时文件夹(三台机器全部要操作)
rm -rf /usr/local/src/hadoop/tmp