Hadoop单机伪分布式部署

2022-09-01 14:49:46 浏览数 (1)

Hadoop 在单节点上以伪分布式模式运行,其中每个 Hadoop 守护进程在单独的 Java 进程中运行。

部署过程:

1.修改映射文件

代码语言:javascript复制
vim /etc/hosts

在最末尾添加

代码语言:javascript复制
192.168.0.9 master

2.上传jdk和hadoop的压缩包并解压

代码语言:javascript复制
tar -xvzf hadoop-3.2.2.tar.gz
tar -xvzf jdk-8u202-linux-x64.tar.gz

3.配置java和hadoop的环境变量

vim /etc/profile

代码语言:javascript复制
export JAVA_HOME=/usr/local/jdk1.8.0_202
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export HADOOP_HOME=/usr/local/hadoop
PATH=$PATH:$HADOOP_HOME/bin
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

4.免密登录设置

代码语言:javascript复制
ssh-copy-id

连续按三次回车键就可以

代码语言:javascript复制
ssh-copy-id master

中间过程需要输入yes,之后输入root密码

5.对hadoop文件进行配置

(1)修改core-site.xml文件
代码语言:javascript复制
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop/data/tmp</value>
    </property>
</configuration>
(2)修改hdfs-site.xml文件
代码语言:javascript复制
<configuration>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/usr/local/hadoop/data/namenode</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/usr/local/hadoop/data/datanode</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
      <name>dfs.permissions</name>
      <value>false</value>
      <description>need not permissions</description>
    </property>
</configuration>
(3)修改mapred-site.xml文件
代码语言:javascript复制
<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>
(4)修改yarn-site.xml文件
代码语言:javascript复制
<configuration>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
        <description>指定resourcemanager所在的hostname</description>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
        <description>NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行 MapReduce程序</description>
    </property>
</configuration>
(5) 修改hadoop-env.sh
代码语言:javascript复制
export JAVA_HOME=/usr/local/jdk1.8.0_202/
HDFS_DATANODE_USER=root
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
YARN_RESOURCEMANAGER_USER=root
YARN_NODEMANAGER_USER=root
(6)设置slaves文件

vim workers

代码语言:javascript复制
master

6.格式化集群

代码语言:javascript复制
hdfs namenode -format

若成功会打印如下信息

has been successfully formatted

7.启动并查看

代码语言:javascript复制
./start-dfs.sh
./start-yarn.sh

jps查看进程

代码语言:javascript复制
[root@master ~]# jps
23153 NameNode
31432 Jps
26078 NodeManager
23295 DataNode
23535 SecondaryNameNode
25935 ResourceManager

查看HDFS web ui,端口9870

查看YARN web ui, 端口8088

到此hadoop单机伪分布式部署完成

0 人点赞