• 大数据之hadoop伪分布集群搭建简要概述


    前言和必须条件

    所需设备:一台配置好网络的虚拟机(我用的系统是centos7),jdk压缩包,hadoop压缩包
    将jdk压缩包和hadoop压缩包导入虚拟机中,导入的办法可以看下面这位创作者的链接,链接: 解决办法

    关键配置文件以及代码

    配置jdk

    执行命令:
    vim /etc/profile

    export JAVA_HOME=你自己解压的java在哪里就填写哪里
    export JRE_HOME=$JAVA_HOME/jre
    export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
    export PATH=$PATH:$JAVA_HOME/bin
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    生效JDK
    source /etc/profile

    ssh免密登录

    ssh-keygen -t rsa
    
    • 1
    ssh-copy-id gadoop100(你自己的虚拟机名字,在etc/hostname查看)
    
    
    • 1
    • 2

    hadoop配置

    配置HADOOP环境变量
    执行命令

    vim /etc/profile
    
    • 1

    在文件末尾插入如下代码

    export HADOOP_HOME=你自己解压hadoop在哪里就填写哪里
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
    
    • 1
    • 2

    生效环境变量

    source  /etc/profile
    
    • 1

    伪分布集群文件配置

    配置hadoop-env.sh

    export HDFS_NAMENODE_USER=root
    export HDFS_DATANODE_USER=root
    export HDFS_JOURNALNODE_USER=root
    export HDFS_SECONDARYNAMENODE_USER=root
    export YARN_RESOURCEMANAGER_USER=root
    export YARN_NODEMANAGER_USER=root
    export JAVA_HOME=你自己java的路径
    HADOOP_SHELL_EXECNAME=root
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    配置core-site.xml

    <configuration>
    			<property>
    				<name>fs.defaultFS</name>
    				<value>hdfs://您的虚拟机名称:9000</value>
    			</property>
    			<property>
    				<name>hadoop.tmp.dir</name>
    				<value>自行设置即可,是文件的存储路径</value>
    			</property>
    			<property>
                    <name>hadoop.http.staticuser.user</name>
                    <value>root</value>
            	</property>
    </configuration>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    配置hdfs-site.xml

    		<configuration>
            	<property>
                    <name>dfs.namenode.name.dir</name>
                    <value>自行设置,如/usr/hadoop3/hdfs/name</value>
            	</property>
            	<property>
                    <name>dfs.datanode.data.dir</name>
                    <value>自行设置,如/usr/hadoop3/hdfs/data</value>
            	</property>
            	<property>
                    <name>dfs.replication</name>
                    <value>1</value>
            	</property>
    </configuration>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    配置mapred-site.xml

    <configuration>
            	<property>
                    <name>mapreduce.framework.name</name>
                    <value>yarn</value>
            	</property>
    </configuration>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    配置yarn-site.xml

    <configuration>
            	<property>
                    <name>yarn.resourcemanager.hostname</name>
                    <value>你的主机名称</value>
            	</property>
            	<property>
                    <name>yarn.nodemanager.aux-services</name>
                    <value>mapreduce_shuffle</value>
            	</property>
    </configuration>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    配置修改workers

    执行命令

    vim workers
    
    • 1

    把里面的localhost删掉,写上你的虚拟机名称

    一些常见错误出现以及解决办法

    启动节点时出现permission denied?
    答:ssh免密登录出现了问题,删掉.ssh文件重新配置
    运行 java 找不到命令?
    答:仔细检查javahome的路径是不是你解压的位置
    运行java -version 后是openjdk?
    答:centos7自带openjdk,网上有教程可以卸载掉他
    运行 hadoop 出现java命令 找不到?
    答:去看 env.sh文件里java是不是你解压的位置

  • 相关阅读:
    外刊30篇合集
    FPGA SERDESE2 (SDR收发仿真)
    Python+PyCharm+Selenium框架环境搭建及问题
    苹果Mac电脑L2TP连接公司内部网络失败解决方案
    在软件测试行业这种情况下,凭什么他能拿25k?我却约面试都难?
    编程时遇到的Python语法问题汇总
    十四、Docker的基本操作
    Web集群_02
    Aria2 for Mac (免HomeBrew)
    vue中数组的响应式
  • 原文地址:https://blog.csdn.net/weixin_60919998/article/details/132649994