超详细的hadoop伪分布配置教程

    技术2025-05-31  96

    创建虚拟机:1 配置静态ip:2

    第一步是首先查看虚拟网络编辑器。查看网关和起始结束ip

    如果不能ping网络则可能是以下问题:

    xshell连接虚拟机: 接下来我们就在usr/local目录下传文件 这里说一下返回上一级目录的命令是cd.. 接下来配置java和hadoop的环境变量但是配置环境变量前要先进虚拟机中原有的java包删掉 接下来配置ssh无密码登陆以及主机名和主机和ip映射以及主节点 去到usr/local路径解压java和hadoop 关闭防火墙:

    查看防火墙状况 systemctl status firewalld.service

    关闭防火墙:systemctl stop firewalld.service 永久关闭防火墙:

    systemctl disable firewalld.service

    配置环境变量:

    #java环境变量 JAVA_HOME=/usr/local/jdk1.8.0_241 HADOOP_HOME=/usr/local/hadoop-2.7.1 CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH export JAVA_HOME PATH CLASSPATH HADOOP_HOME

    接下来配置hadoop-env.sh 注意配置完后让它生效不然会报错

    source hadoop-env.sh生效命令

    接下来是core-site.xml core-site.xml:

    <configuration> <property> <!--用来指定hdfs的老大,namenode的地址--> <name>fs.default.name</name> <value>hdfs://hadoop01:9000</value> </property> <property> <!--用来指定hadoop运行时产生文件的存放目录。注意目录是要真实存在的,若没有则自己创建--> <name>hadoop.tmp.dir</name> <value>/home/software/hadoop-2.7.1/tmp</value> </property> <!--value的时间单位是分钟,如果配置成0,表示不开启HDFS的回收站 1440=24*60,表示的一天的回收间隔,即文件在回收站存在一天后,被清空--> <property> <name>fs.trash.interval</name> <value>1440</value> </property> </configuration>

    接下来配置hdfs-site.xml

    命令vim hdfs-site.xml

    hdfs-site.xml:

    <!--指定hdfs保存数据副本的数量,包括自己,默认值是3--> <!--如果是伪分布模式,此值是1,因为只有一台服务器--> <property> <name>dfs.replication</name> <value>1</value> </property> <!--设置hdfs的操作权限,false表示任何用户都可以在hdfs上操作文件--> <property> <name>dfs.permissions</name> <value>false</value> </property> </configuration>sql 接下来配置mapred-site.xml 命令vim mapred-site.xml

    mapred-site.xml:

    <!--指定mapreduce运行在yarn上--> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property>

    接下来配置yarn-site.xml

    命令 vim yarn-site.xml

    yarn-site.xml:

    <property> <name>yarn.resourcemanager.hostname</name> <value>hadoop01</value> </property> <!--NodeManager获取数据的方式--> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property>

    然后到hadoop-2.7.1下创建一个tmp目录

    命令mkdir tmp

    最后到了格式化的时候了先打个快照 格式化

    格式化hadoop的命令是 hadoop namenode -format 它要在hadoop-2.7.1/etc/hadoop目录进行格式化

    所以使用export命令查看环境变量是否有错 重新再hadoop-env.sh中声明环境变量

    命令是它的目录在hadoop-2.7.1/etc/hadoop 命令 vim hadoop-env.sh进入修改JAVA_HOME,HADOOP_CONF_DIR,并执行 source hadoop-env.sh 命令,让配置立即生效

    修改:

    #指定jdk的安装路径,尽管环境变量PATH配置了JAVA_HOME,但hadoop也需要配置 export JAVA_HOME=/usr/local/jdk1.8.0_241 #hadoop配置文件存放路径 export HADOOP_CONF_DIR=/usr/local/hadoop-2.7.1/etc/hadoop

    别忘记执行生效命令

    在hadoop-2.7.1下的sbin目录下启动hadoop 命令start-all.sh 命令jps查看和java相关的进程出现以下的节点说明配置成功

    最后通过web页面访问50070

    http://192.168.121.111:50070 192.168.121.111是自己的端口

    还有在hadoop3.0的版本slaves改为了workers

    Processed: 0.013, SQL: 9