尚硅⾕hadoop3.x集配置笔记及常见错误解决⽅式
1.搭建集准备⼯作
总体流程
1. 准备3台客户机(关闭防⽕墙、静态IP、主机名称)
2. 安装JDK
3. 配置环境变量
4. 安装Hadoop
5. 配置环境变量
6. 配置集
7. 单点启动
8. 配置ssh
9. 起并测试集
⼀、模板虚拟机的搭建
配置要求:IP地址192.168.10.100**、主机名称hadoop100、内存4G、**硬盘50G(内存硬盘⼤⼩根据电脑配置⾃⾏更改)关于是否安装桌⾯:未安装桌⾯的版本需要要执⾏以下命令,⽤于配置⼯具包集合,包含ifconfig等命令以及软件包(rpm等命令)
yum install -y net-tools
yum install -y epel-release
yum install -y vim
关闭防⽕墙,关闭防⽕墙开机⾃启
systemctl stop firewalld
systemctl disable firewalld.service
建议使⽤root⽤户,如使⽤其他⽤户,需配置以下⽂件,在%wheel⾏下添加内容
vim /etc/sudoer
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
username ALL=(ALL) NOPASSWD:ALL
在/opt⽬录下创建⽂件夹module software,并修改所属主和所属组
chown atguigu:atguigu /opt/module
chown atguigu:atguigu /opt/software
安装桌⾯版⽤户需删除⾃带的jdk
重启虚拟机
⼆、克隆虚拟机
分别克隆三台虚拟机hadoop102 hadoop103 hadoop104
修改克隆机IP,并将BOOTPROTO改为static
vim /etc/sysconfig/network-scripts/ifcfg-ens33
修改克隆机主机名,配置hostname为hadoop102…
vim /etc/hostname
配置Linux克隆机主机名称映射hosts⽂件
vim /etc/hosts
192.168.10.100 hadoop100
192.168.10.101 hadoop101
192.168.10.102 hadoop102
192.168.10.103 hadoop103
192.168.10.104 hadoop104
重启克隆机
修改windows的主机映射⽂件(hosts⽂件)
1. 进⼊C:\Windows\System32\drivers\etc路径
2. 打开hosts⽂件并添加如下内容,然后保存
192.168.10.100 hadoop100
192.168.10.101 hadoop101
192.168.10.102 hadoop102
192.168.10.103 hadoop103
192.168.10.104 hadoop104
三、在hadoop102虚拟机安装jdk
注意:桌⾯版虚拟机⼀定要先删掉虚拟机⾃带jdk
安装xshell并⽤以下⼯具将jdk包和hadoop导⼊software⽂件夹中检查包是否导⼊成功
将jdk解压到module⽂件夹中(⾃⾏更改jar包版本名字)
tar -zxvf -C /opt/module/
配置jdk环境
1.新建/etc/profile.d/my_env.sh⽂件
2.在⽂件中配置变量
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin
3.刷新⼀下profile⽂件,使环境变量⽣效
source /etc/profile
验证jdk是否安装成功
重启虚拟机
四、在hadoop102安装Hadoop
⽤xshell把hadoop包移动到software⽂件夹中(hadoop包官⽹下载即可,建议选择3.x版本)
进⼊software⽂件夹中,解压hadoop包并查看是否解压成功
tar -zxvf hadoop-3.1. -C /opt/module/
配置hadoop环境
1. 获取复制Hadoop安装路径
2. 打开/etc/profile.d/my_env.sh⽂件
3. 在my_env.sh⽂件末尾添加如下内容(hadoop相⽐jdk需要多配置⼀个sbin路径,sbin中存储了与hadoop启动与暂停相关
的脚本,hadoop的⽂件名也需要⾃⾏更换对应版本名字):
#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
更新⼀下profile⽂件,让环境⽣效
source /etc/profile
测试是否安装成功
重启虚拟机
2.完全分布式运⾏模式
⼀、编写xsync脚本,便于三台虚拟机之间进⾏发功能
1. scp(secure copy)安全拷贝(前提:另外两台虚拟机都已经创建好module和software⽬录)
基本语法:
scp -r $pdir/$fname $user@$host:$pdir/$fname
命令递归要拷贝的⽂件路径/名称⽬的地⽤户@主机:⽬的地路径/名称
2. rsync远程同步⼯具
rsync和scp区别:⽤rsync做⽂件的复制要⽐scp的速度快,rsync只对差异⽂件做更新。scp是把所有⽂件都复制过去。
rsync和scp区别:⽤rsync做⽂件的复制要⽐scp的速度快,rsync只对差异⽂件做更新。scp是把所有⽂件都复制过去。
基本语法:(-av意味着归档拷贝以及显⽰复制过程)
rsync -av $pdir/$fname $user@$host:$pdir/$fname
命令选项参数要拷贝的⽂件路径/名称⽬的地⽤户@主机:⽬的地路径/名称
3. 了解以上原理,正式开始编写xsync脚本
1. 需求:循环复制⽂件到所有节点的相同⽬录下
2. 脚本实现,在/home/root/bin⽬录下创建xsync⽂件(root可为⾃⼰的⽤户名)
#!/bin/bash
#1. 判断参数个数
if [ $# -lt 1 ]
then
echo Not Enough Arguement!
exit;
fi
#2. 遍历集所有机器
for host in hadoop102 hadoop103 hadoop104
do
echo ==================== $host ====================
#3. 遍历所有⽬录,挨个发送
for file in $@
do
#4. 判断⽂件是否存在
if [ -e $file ]
then
#5. 获取⽗⽬录
pdir=$(cd -P $(dirname $file); pwd)
#6. 获取当前⽂件的名称
fname=$(basename $file)
ssh $host "mkdir -p $pdir"
rsync -av $pdir/$fname $host:$pdir
elsehadoop分布式集搭建
echo $file does not exists!
fi
done
done
1. 修改脚本 xsync 具有执⾏权限
chmod +x xsync
1. 测试脚本
xsync /home/atguigu/bin
1. 将脚本复制到/bin中,以便全局调⽤
sudo cp xsync /bin/
脚本配置完毕后,同步环境变量
sudo ./bin/xsync /etc/profile.d/my_env.sh
让环境变量⽣效
[root@hadoop103 bin]$ source /etc/profile
[root@hadoop104 opt]$ source /etc/profile
⼆、SSH⽆密登录配置
先使⽤⼀遍ssh命令
ssh hadoop103
exit
⽣成公钥和私钥
[root@hadoop102 .ssh]$ pwd
/root/.ssh
[root@hadoop102 .ssh]$ ssh-keygen -t rsa
将公钥拷贝到要免密登录的⽬标机器上(另外两台虚拟机也要进⾏同样的操作)
[root@hadoop102 .ssh]$ ssh-copy-id hadoop102
[root@hadoop102 .ssh]$ ssh-copy-id hadoop103
[root@hadoop102 .ssh]$ ssh-copy-id hadoop104
三、集配置
1. 集部署规划
hadoop102hadoop103hadoop104
HDFS NameNode DataNode DataNode SecondaryNameNode DataNode
YARN NodeManager ResourceManager NodeManager NodeManager
2.配置⽂件说明
Hadoop配置⽂件分两类:默认配置⽂件和⾃定义配置⽂件,只有⽤户想修改某⼀默认配置值时,才需要修改⾃定义配置⽂件,更改相应属性值。
(1)默认配置⽂件:
要获取的默认⽂件⽂件存放在Hadoop的jar包中的位置
[l]hadoop-common-3.1.3.l
[l]hadoop-hdfs-3.1.3.l
[l]hadoop-yarn-common-3.1.3.l
[l]hadoop-mapreduce-client-core-3.1.3.l
(2)⾃定义配置⽂件:
3. 配置集
核⼼配置⽂件
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论