hadoop单结点伪分布式集群搭建

235 阅读2分钟

这是我参与「第四届青训营」笔记创作活动的的第3天

hadoop单结点伪分布式集群搭建

官网描述:hadoop.apache.org/docs/stable…

本内容在官网描述的基础上做翻译和细节补充

首先需要完成jdk部署和ssh免密登录的配置

hadoop包解压安装

tar -zxvf hadoop-3.2.4.tar.gz -C ~/app/

hadoop软件包常见目录说明

bin: hadoop客户端命令

etc: hadoop相关的配置文件存放目录

sbin:启动hadoop相关进程的脚本

share:常用例子

把hadoop配置在系统环境变量中:

vim ~/.bash_profile

root用户:

export HADOOP_HOME=/root/app/hadoop-3.2.4
export PATH=$HADOOP_HOME/bin:$PATH

非root用户(假设为pearfl):

export HADOOP_HOME=/home/pearfl/app/hadoop-3.2.4
export PATH=$HADOOP_HOME/bin:$PATH

之后source一下使其生效:

source .bash_profile

hadoop内文件配置修改

进入已经安装好的hadoop目录中,修改hadoop-env.sh、core-site.xml、hdfs-site.xml的配置

cd /root/app/hadoop-3.2.4/etc/hadoop
vim hadoop-env.sh # 配置JAVA_HOME

修改下面这一行

# set to the root of your Java installation
export JAVA_HOME=/root/app/jdk1.8.0_331

为了后续启动,需要在hadoop-env.sh中再添加这些配置

export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

修改workers中的localhost为hadoop000(此处为你的主机名)

之后开始修改etc/hadoop/core-site.xml:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop000:9000</value>
    </property>
</configuration>

再修改etc/hadoop/hdfs-site.xml

其中hadoop.tmp.dir修改是因为机器每次重启时候会清空tmp目录

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/root/tmp/hadoop/tmp</value>
    </property>
</configuration>

启动hadoop

1.格式化文件系统

hdfs namenode -format

2.启动hadoop

/root/app/hadoop-3.2.4/sbin目录下

./start-all.sh

访问的时候记得关掉centos7自带的防火墙

systemctl status firewalld.service # 检查一下防火墙的状态,如果为active(running)则说明开启
systemctl stop firewalld.service # 关闭防火墙
systemctl status firewalld.service # 在下方出现disavtive(dead),这样就说明防火墙已经关闭
systemctl disable firewalld.service # 永久关闭防火墙

hadoop常用端口号

namenode:hadoop3.0之前web访问端口是50070 hadoop3.0之后web访问端口为9870

datanode http端口:50075

secondaryNameNode 节点http端口号:50090

datanode后端访问端口号:50010

fs 端口号:9000

yarn http端口号:8088

历史服务器web访问端口号:1988