Hadoop3集群部署

冷暖自知 提交于 2020-11-06 09:19:23

环境准备:

准备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/
Hadoop3集群部署

YARN UI http://10.0.83.71:8088/

Hadoop3集群部署

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>]"

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!