Hadoop3集群部署

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hadoop3集群部署相关的知识,希望对你有一定的参考价值。

环境准备:

准备3台虚拟机(CentOS 7),一台 master,两台 slaver。master 作为NameNode、DataNode、ResourceManager、NodeManager,slave 均作为DataNode、NodeManager。

master:10.0.83.71
slave1: 10.0.83.72
slave2:10.0.83.73

在每台机器上执行:

关闭防火墙:

systemctl stop firewalld.service

systemctl disable firewalld.service

修改每个ip对应的主机名并修改hosts文件
vi /etc/hosts
10.0.83.71 node1
10.0.83.72 node2
10.0.83.73 node3

设置3台虚拟机互相免密登录

分别在71,72,73上执行:ssh-keygen -t rsa

分别在每台机器上执行copy to其他2个机器地址:
ssh-copy-id 10.0.83.71
ssh-copy-id 10.0.83.72
ssh-copy-id 10.0.83.73

创建数据存储和其他需要的目录

mkdir -p /data/hdfs/name
mkdir -p /data/hdfs/data
mkdir -p /data/hdfs/tmp
mkdir -p /opt/

同步时间:

yum -y install ntp
systemctl enable ntpd
systemctl start ntpd
timedatectl set-timezone Asia/Shanghai
timedatectl set-ntp yes

在master上执行:

cd /opt/
wget https://apache.mirrors.nublue.co.uk/hadoop/common/hadoop-3.1.4/hadoop-3.1.4.tar.gz
tar zxvf hadoop-3.1.4.tar.gz
mv hadoop-3.1.4 hadoop

scp -r hadoop root@node2:/opt/
scp -r hadoop root@node3:/opt/

为hadoop组件建立单独的用户组hadoop, 创建用户hdfs, yarn, mapred

groupadd hadoop
useradd hdfs -g hadoop
useradd yarn -g hadoop
useradd mapred -g hadoop

创建相关目录

数据存放目录
NameNode 数据存放目录: /data/hadoop/namenode
DataNode 数据存放目录: /data/hadoop/datanode
临时数据存放目录: /data/hadoop/tmp
HADOOP_MAPRED_HOME :
mkdir -p /data/hadoop/namenode
mkdir -p /data/hadoop/datanode
mkdir -p /data/hadoop/tmp

chown -R hdfs:hadoop /opt/hadoop
chown -R hdfs:hadoop /data/hadoop

新建日志目录
mkdir /var/log/hadoop
chown hdfs:hadoop /var/log/hadoop
chmod -R 770 /var/log/hadoop

新建pid目录
mkdir /var/run/hadoop
chown hdfs:hadoop /var/run/hadoop
chmod -R 770 /var/run/hadoop

source /etc/profile

3. 集群操作测试

3.1 启动集群

格式化namenode
su hdfs -c ‘hdfs namenode -format‘

2.启动namenode

su hdfs -c ‘hdfs --daemon start namenode‘

分别启动每个datanode结点
su hdfs -c ‘hdfs --daemon start datanode‘

启动resourcemanager
su yarn -c ‘yarn --daemon start resourcemanager‘

分别启动每个nodemanager节点
su yarn -c ‘yarn --daemon start nodemanager‘

启动historyserver
su mapred -c ‘mr-jobhistory-daemon.sh start historyserver‘

3.2 WebUI访问

HDFS UI http://10.0.83.71:50070/
技术图片

YARN UI http://10.0.83.71:8088/

技术图片

3.3 停止集群

1.停止namenode
su hdfs -c ‘hdfs --daemon stop namenode‘

停止datanode结点
su hdfs -c ‘hdfs --daemon stop datanode‘

停止resourcemanager
su yarn -c ‘yarn --daemon stop resourcemanager‘

停止nodemanager节点
su yarn -c ‘yarn --daemon stop nodemanager‘

停止historyserver
su mapred -c ‘mr-jobhistory-daemon.sh stop historyserver‘

3.4 其他操作指令

查看hdfs目录
su hdfs -c ‘hdfs dfs -ls /‘

新建hdfs目录
su hdfs -c ‘hdfs dfs -mkdir PATH‘

修改文件所有者
su hdfs -c ‘hdfs dfs -chown OWNER:GROUP PATH‘

修改文件权限
su hdfs -c ‘hdfs dfs -chmod 644 PATH‘

webhdfs 操作
curl -i "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=LISTSTATUS"

curl -i -X DELETE "http://<host>:<port>/webhdfs/v1/<path>?op=DELETE
[&recursive=<true |false>]"

curl -i -X PUT "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=CREATE
[&overwrite=<true |false>][&blocksize=<LONG>][&replication=<SHORT>]
[&permission=<OCTAL>][&buffersize=<INT>][&noredirect=<true|false>]"

curl -i -X PUT "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=SETOWNER
[&owner=<USER>][&group=<GROUP>]"

curl -i -X PUT "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=SETPERMISSION
[&permission=<OCTAL>]"

以上是关于Hadoop3集群部署的主要内容,如果未能解决你的问题,请参考以下文章

基于CentOS7的Hadoop3.1.2完全分布式集群部署记录

hadoop3.1.1 HA高可用分布式集群安装部署

Red Hat Enterprise 8.4 Install Hadoop3+Hive3集群部署

大数据技术栈-Hadoop3.3.4-完全分布式集群搭建部署-centos7(完全超详细-小白注释版)虚拟机安装+平台部署

CentOS7.4下部署hadoop3.1.1

Hadoop3.13 配置文件