hadoop 单机安装

midoll 195 2022-03-29

hadoop 单机安装

下载

https://archive.apache.org/dist/hadoop/common/

下载完成后解压缩。
tar -zxvf hadoop-3.1.3.tar.gz

配置hadoop启动项

vim /etc/profile.d/my_env.sh

export HADOOP_HOME=/usr/local/hadoop/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile

创建hadoop用户

用户查看
cut -d : -f 1 /etc/passwd
用户组查看
cut -d : -f 1 /etc/group 
新建用户
adduser #{name}
adduser hadoop
设置密码
passwd #{name}
passwd hadoop
新建用户组
groupadd #{gname}
groupadd hadoop
用户加到用户组
usermod -G #{gname} #{name}
usermod -G hadoop hadoop
删除用户
userdel -rf #{name}
删除用户组
groupdel #{gname}
查看用户情况
id #{name}
id hadoop

创建hadoop文件目录并授权

mkdir -p /opt/module/tmp # hadoop临时文件目录
mkdir -p /opt/module/hdfs/name # hadoop主节点(namenode)文件目录
mkdir -p /opt/module/hdfs/data # hadoop数据节点(datanode)文件目录
mkdir -p /opt/module/log # hadoop日志文件目录
sudo chown -R hadoop /opt/module # 设置hadoop文件目录所有者

[注]下面的描述,如果没有写明全目录,表示都是基于此目录下的
/opt/module/hadoop-3.1.3/

修改hadoop配置文件

hadoop的配置文件都在 etc/hadoop 目录下,配置文件有很多,最基本要修改3个文件:hadoop-env.sh ,core-site.xml,hdfs-site.xml。

hadoop-env.sh

export JAVA_HOME=/opt/java/jdk1.8.0_151 # 修改JAVA_HOME环境变量为JDK的安装路径。
core-site.xml:

设置hdfs的监听端口(一般配置为9000,我改为了9001,因为和已有的配置冲突)。

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
        <description>hdfs内部通讯访问地址</description>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/opt/module/tmp</value>
        <description>hadoop数据存放</description>
    </property>
</configuration>

hdfs-site.xml:

<configuration>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/home/hadoop/hdfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/home/hadoop/hdfs/data</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

设置SSH免密访问本地

需要用前面创建的hadoop用户通过ssh免密访问本地,先切换到hadoop用户目录下,执行以下命令:

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys

启动hadoop

1 格式化hadoop文件系统

./bin/hdfs namenode -format

一键启动

./sbin/start-all.sh

输入jps:

hadoop@www:~$ jps
17761 NameNode
17889 DataNode
18083 SecondaryNameNode
18532 NodeManager
22474 Jps
18399 ResourceManager

可以看到namenode、secondarynamenode、datanode、nodemanager、resourcemanager这三个服务已经启动。

3 检验

输入命令 ,没有报错,则hadoop单机版安装成功。
bin/hadoop fs -ls /

hadoop相关的端口和命令

hdfs http://ip:9870/
yarn http://ip:8088/
image-1708676162350

常用命令

Start-all.sh/Stop-all.sh   # 开启关闭所有进程

Start-dfs.sh   # 开启hdfs 进程

Start-yarn.sh   # 开启yarn进程

Hadoop namenode –format  # 对HDFS进行格式化

hadoop-daemon.sh start namenode   # 单独启动namenode

hadoop-daemons.sh start datanode  # 单独启动datanode

yarn-daemon.sh start resourcemanager  # 启动resourcemanager

yarn-daemons.sh start nodemanager  # 启动nodemanager

yarn-daemon.sh start proxyserver  # 启动yarn日志代理服务

mr-jobhistory-daemon.sh start historyserver  # 启动MR的jobhistory服务 历史服务器开启

# Hadoop