hadoop win10安装排坑

主题

非是发神经,非要在win上去验证部署,主要观察一下不同ip连接产生的配置差异有多少问题,坑是踩了不少,但hadoop的问题要少一些,做个记录,免得后续遗漏。

下载

hadoop下载地址,选择所需版本进行下载

在win环境下的特殊处理

默认的下载没有一些.cmd的批处理启动,需要补充,另外一些dll是没有的,需要补充 但是启动没从这个地方启动

hadoop -version

用的默认路径下的hadoop-3.0.1\sbin,start-all.cmd进行启动 通过8088查看实例情况

配置参数

\etc\hadoop下的主要配置文件core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml

  • core-site.xml
xml 复制代码
   <property>
        <name>fs.defaultFS</name>
        <!-- <value>hdfs://192.168.145.1:9000</value> -->
        <value>hdfs://0.0.0.0:9000</value>
   </property> 
    <property>  
     <name>hadoop.security.authorization</name>  
      <value>false</value>  
    </property>

    <property>
        <name>hadoop.tmp.dir</name>
        <value>/F:/hadoop/tmp</value>
    </property>
  • hdfs-site.xml
xml 复制代码
  <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>  

   <!-- 设置名称节点位置 存储名称表(fsimage)的位置-->

   <property>
        <name>dfs.namenode.name.dir</name>
        <value>/F:/hadoop/data/namenode</value>
    </property>
       <!-- 确定DFS数据节点应在本地文件系统上的哪个位置存储其块 -->
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/F:/hadoop/data/datanode</value>
    </property>  
   
   <property>
        <name>dfs.permissions.enabled</name>
        <value>false</value>
   </property>

   <property>
        <name>dfs.client.use.datanode.hostname</name>
        <value>true</value>
   </property>
  • mapred-site.xml
xml 复制代码
<!--告诉hadoop以后MR(Map/Reduce)运行在YARN上-->
        <property>
              <name>mapreduce.framework.name</name>
              <value>yarn</value>
       </property>
  • yarn-site.xml
xml 复制代码
  <!--nomenodeManager获取数据的方式是shuffle-->
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
       <!--指定Yarn的老大(ResourceManager)的地址-->     
    <property>
            <name>yarn.resourcemanager.hostname</name>
            <!-- <value>192.168.43.162</value> -->
            <value>0.0.0.0</value>
    </property> 
   <property>
            <name>yarn.resourcemanager.address</name>
            <!-- <value>192.168.43.162:8032</value> -->
              <value>0.0.0.0:8032</value>
    </property> 

    <property>
		<name>yarn.log-aggregation-enable</name>
		<value>true</value>
	</property>
	<property>
		<name>yarn.log-aggregation.retain-seconds</name>
		<value>604800</value>
	</property>
      <property>
     <name>yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-percentage</name>
     <value>100.0</value>
 </property>

    <property>
    	<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
    	<value>org.apache.hadoop.mapred.ShuffleHandler</value>
	</property>

格式化

hdfs namenode -format

当正常连接出现Cannot create directory /tmp/. Name node is in safe mode

org.apache.hadoop.ipc.RemoteException: Cannot create directory /user/root/.flink/application_1705115673637_0001. Name node is in safe mode.

bash 复制代码
hdfs dfsadmin -safemode leave

yarn 启动问题

安装时启动yarn时出现error Couldn't find a package.json file问题, 如果你的机器上装有node的包管理工具yarn,此时启动,就会引起歧义,应当使用\bin\yarn命令 解决办法 编辑打开sbin/start-yarn.cmd 更改yarn -> %HADOOP_HOME%\bin\yarn,去除歧义即可

yarn 配置问题

我的场景主要是主机上启动的hadoop,但是在虚拟机上去访问发现8032端口通过虚拟机IP访问有问题,但是自身的vlan通过IP无问题。 \etc\hadoop\yarn-site.xml,增加如下配置,替换成你hadoop部署的Ip地址

xml 复制代码
    <property>
            <name>yarn.resourcemanager.hostname</name>
            <value>0.0.0.0</value>
    </property> 
   <property>
            <name>yarn.resourcemanager.address</name>
              <value>0.0.0.0:8032</value>
    </property> 
相关推荐
别说我什么都不会5 小时前
鸿蒙轻内核M核源码分析系列十 软件定时器Swtmr
操作系统·harmonyos
别说我什么都不会1 天前
鸿蒙轻内核M核源码分析系列九 互斥锁Mutex
操作系统·harmonyos
m0_748233641 天前
【分布式】Hadoop完全分布式的搭建(零基础)
大数据·hadoop·分布式
薇晶晶1 天前
如何安装Hadoop
大数据·hadoop·分布式
别说我什么都不会1 天前
鸿蒙轻内核M核源码分析系列七 动态内存Dynamic Memory
操作系统·harmonyos
python资深爱好者1 天前
Hive中的分区和桶的概念及其作用
数据仓库·hive·hadoop
别说我什么都不会2 天前
鸿蒙轻内核M核源码分析系列六 任务及任务调度(3)任务调度模块
操作系统·harmonyos
徐徐同学2 天前
【操作系统】操作系统概述
操作系统·计算机系统
我要用代码向我喜欢的女孩表白2 天前
hive(hdfs)补数脚本
数据仓库·hive·hadoop
风子~2 天前
hive—常用的函数整理
数据仓库·hive·hadoop