目录
Hadoop软件集群部署
一、用户、用户组的创建及sudo权限的配置
1.1、用户相关操作
1.1.1、用户的添加
useradd hadoop1
1.1.2、用户的切换
su hadoop1
1.1.3、用户的删除
userdel hadoop1
1.2、用户组相关操作
1.2.1、用户组的添加
groupadd hadoop
1.2.2、用户组的删除
groupdel hadoop
1.3、sudo权限配置
1.3.1、用户配置sudo权限
su root
visudo
# 拉直文件最底部,添加代码
hadoop1 ALL=(ALL) NOPASSWD:ALL
# 在hadoop1用户下,当前权限不够时,如下使用
sudo visudo
二、虚拟主机名的配置
2.1、查看虚拟主机名
hostname
2.2、修改主机名(临时,重启后无效)
hostname zzm
2.3、修改主机名(永久性)
2.3.1、方法一
hostnamectl set-hostname hadoop1
2.3.2、方法二
vi /etc/hostname
三、关闭防火墙
3.1、查看防火墙状态
systemctl status firewalld.service
执行后可以看到绿色字样标注的active(running),说明防护墙开启状态
3.2、关闭运行的防火墙
systemctl stop firewalld.service
3.3、查看防火墙状态
systemctl status firewalld.service
可以看到,disavtive(dead)的字样,说明防火墙已经关闭
3.4、禁止防火墙开启
systemctl disable firewalld.service
四、相关服务的安装
yum install -y lrzsz
yum install -y openssh-clients
五、主机名和IP之间的对应关系
vi /etc/hosts
- 添加如下内容
192.168.64.141 hadoop1
六、配置SSH免密码登录
6.1、生成秘钥
# 一路回车
ssh-keygen -t rsa
6.2、进入生成秘钥文件夹
cd /home/hadoop1/.ssh
6.3、将公钥复制到文件夹中
cp id_rsa.pub authorized_keys
6.4、为hadoop1用户配置密码
sudo passwd hadoop1
6.5、测试ssh
ssh hadoop1
七、安装部署JDK
- 教程:centos7安装jdk
八、安装部署hadoop
- hadoop各版本下载:下载地址
8.1、上传hadoop压缩包并解压
scp hadoop-2.6.0.tar hadoop1:192.168.64.143:/home/hadoop1/software
tar -zxvf hadoop-2.6.0.tar
8.2、创建文件夹
mkdir /usr/hadoop
mv hadoop-2.6.0 /usr/hadoop
8.3、配置环境变量
8.3.1、编辑配置文件
vi /etc/profile
8.3.2、添加如下内容
export HADOOP_HOME=/usr/hadoop/hadoop-2.6.0
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
8.3.3、刷新配置文件
source /etc/profile
8.4、配置hadoop配置文件
8.4.1、进入hadoop指定目录
/usr/hadoop/hadoop-2.6.0/etc/hadoop
8.4.2、修改配置文件
-
core-site.xml
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop1:9000</value> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> </property> <property> <name>hadoop.tmp.dir</name> <value>file:/data/tmp</value> </property> <property> <name>hadoop.proxyuser.hadoop.hosts</name> <value>*</value> </property> <property> <name>hadoop.proxyuser.hadoop.groups</name> <value>*</value> </property> </configuration>
-
hdfs-site.xml
<configuration> <property> <name>dfs.namenode.name.dir</name> <value>/data/dfs/name</value> <final>true</final> </property> <property> <name>dfs.datanode.data.dir</name> <value>/data/dfs/data</value> <final>true</final> </property> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> </configuration>
-
mapred-site.xml
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
-
yarn-site.xml
<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>
-
配置jdk位置
cd /usr/hadoop/hadoop-2.6.0/etc/hadoop vi hadoop-env.sh
修改内容如下:
export JAVA_HOME=/usr/java/jdk1.8.0_11
-
slaves:填写从节点主机名
8.4.3、创建数据文件夹
sudo mkdir /data/dfs/name -p
sudo mkdir /data/dfs/data -p
sudo mkdir /data/tmp -p
8.4.4、修改权限
cd /
sudo chown -R hadoop1:hadoop1 /data
九、格式化NameNode
cd /usr/hadoop/hadoop-2.6.0/bin/
./hadoop namenode -format
十、启动hadoop集群
cd /usr/hadoop/hadoop-2.6.0/sbin/
./start-all.sh
- 查看进程
出现如下五个经常,表示hadoop启动成功jps
- hdfs:http://192.168.64.143:50070/
- yarn:http://192.168.64.143:8088/
十一、测试(运行wordcount)
-
创建word.txt,内容如下
hello world hello zzm hello believer hello zhuzhaoman
-
将word.txt上传到hdfs中
hadoop fs -put ./word.txt /
-
进入指定目录
cd /usr/hadoop/hadoop-2.6.0/share/hadoop/mapreduce
-
运行
hadoop jar ./hadoop-mapreduce-examples-2.6.0.jar wordcount /word.txt /out
-
查看结果
hadoop fs -cat /out/part-r-00000