Hadoop集群搭建

本文详细描述了在非RPM方式安装Hadoop3.3.5环境下,如何在最小化安装的CentOS7上进行Hadoop集群搭建,包括主机名、IP地址规划,软件工具安装,系统准备,Hadoop环境配置,SSH免密设置,以及HDFS格式化等步骤,解决了遇到的问题和注意事项。
摘要由CSDN通过智能技术生成

参考视频:
https://www.bilibili.com/video/BV1C5411c7Qv?p=5&vd_source=0dcc3acedc4fc1c77ebc9bfbcbd12cec

我安装的是hadoop3.3.5
jdk不是使用的rpm方式安装的,所以相对于参考笔记会有一点变动

参考视频对应的Hadoop集群搭建笔记

本文档在最小化安装centos7后的操作。

首先,对于大数据集群提前进行主机名、IP地址、主次服务的规划:

node01 :192.168.199.80 NN DN

node02 :192.168.199.81 DN

node03 :192.168.199.82 DN SN

其中安装第一台机器时,建议在安装时就指定主机名,IP地址根据自己的局域网情况填写

1、常用软件工具的安装

sudo yum install net-tools

sudo yum install vim

sudo vim /etc/vimrc

添加 set ts=4

2、系统准备:

2.1、关闭防火墙

sudo systemctl stop firewalld.service

sudo systemctl disable firewalld.service

2.2、关闭selinux

sudo vim /etc/selinux/config

修改为 SELINUX=disabled

2.3、源码环境准备

在家目录下,创建soft目录,拷贝jdk的rpm包和hadoop的tar包

2.3.1、解压环境包

sudo rpm -ivh jdk-8u281-linux-x64.rpm

sudo tar -zxvf hadoop-2.7.1.tar.gz -C /opt/

2.3.2、添加hadoop环境变量

sudo vim /etc/profile.d/hadoop.sh

export HADOOP_HOME=/opt/hadoop-3.3.5

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

2.3.3、改变hadoop文件权限

cd /opt

sudo chown -R huser:huser /opt/hadoop-3.3.5

2.3.4、创建HDFS的NN和DN工作主目录

sudo mkdir /var/big_data

sudo chown -R huser:huser /var/big_data

3、hadoop系统配置

本内容主要针对Hadoop的配置文件进行修改,修改原则和最开始的服务搭建要一致

进入/opt/hadoop-3.3.5/etc/hadoop目录

3.1、为Hadoop提供JAVA解释器路径信息,主要目的是解决远程访问hadoop时候JAVA_HOME无法继承的问题

vim hadoop-env.sh

export JAVA_HOME=/usr/java/jdk1.8.0_281(因为我不是使用的rpm方式安装,所以这里从default改成这个)

3.2、为Yarn任务、资源管理器提供Java运行环境

vim yarn-env.sh

export JAVA_HOME=/usr/java/jdk1.8.0_281

3.3、配置HDFS主节点信息、持久化和数据文件的主目录

vim core-site.xml

<property>

<name>fs.defaultFS</name>

<value>hdfs://node01:9000</value>

</property>

<property>

<name>hadoop.tmp.dir</name>

<value>/var/big_data</value>

</property>

3.4、配置HDFS默认的数据存放策略

vim hdfs-site.xml

<property>

<name>dfs.replication</name>

<value>2</value>

</property>

<property>

<name>dfs.namenode.secondary.http-address</name>

<value>node03:9870</value>(我的版本对应9870,官方文档对应9868,但是通过netstat -lntp查看的端口号是9870)

</property>

3.5、配置mapreduce任务调度策略

vim mapred-site.xml

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

</property>

3.6、配置Yarn资源管理角色的信息

vim yarn-site.xml

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

<property>

<name>yarn.resourcemanager.hostname</name>

<value>node01</value>

</property>

3.7、配置datanode节点信息

vim workers (将slaves改为workers)

node01

node02

node03

4、提前准备主机名解析文件,为后面的克隆机器做好准备(可选,若不做,克隆后为每台机器重新添加亦可)

sudo vim /etc/hosts

192.168.199.80 node01

192.168.199.81 node02

192.168.199.82 node03

注意屏蔽或删除上面的127.0.0.1的信息

5、克隆其他集群信息

关闭机器,准备克隆

克隆后,修改node02、node03的IP和主机名

sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33

sudo vim /etc/hostname

6、下面开始配置集群的ssh免密

在3台机器上执行产生自己的公钥:

ssh-keygen -t rsa

按照默认值回车确定

将每台机器的公钥拷贝给每台机器,注意下面的指令要求3台机器都要执行:

ssh-copy-id node01
ssh-copy-id node02
ssh-copy-id node03

XSHELL也可以多窗口同时执行同一命令,查看-撰写-撰写栏-将文本发送到全部Xshell窗口

遇到问题:设置集群免密以后仍然需要密码,键入下面命令并重新生成和分发

chmod 7555 /root

7、格式化hdfs

hdfs namenode -format
ls /var/big_data/dfs/name/current

报错

Starting namenodes on [node01]
ERROR: Attempting to operate on hdfs namenode as root
ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation.
Starting datanodes
ERROR: Attempting to operate on hdfs datanode as root
ERROR: but there is no HDFS_DATANODE_USER defined. Aborting operation.
Starting secondary namenodes [node03]
ERROR: Attempting to operate on hdfs secondarynamenode as root
ERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined. Aborting operation.

解决
在start-dfs.sh和stop-dfs.sh中添加参数

HDFS_DATANODE_USER=root
HDFS_DATANODE_SECURE_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
start-dfs.sh
jps
192.168.199.80:9870
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值