Hadoop学习
Hadoop学习
一、Hadoop部署
Hadoop是适合分布式存储和分布式计算的平台,主要由分布式文件系统HDFS,统一资源管理和调度框架YARN以及分布式计算框架MapReduce组成。
笔者使用如下版本测试完成,初学者可以下载相应版本(JDK13,Hadoop2.8.5,hive2.3.7,scala2.11.12)在官网上可以下载到相应的版本。
1.首先配置jdk环境,这个就不说了。
2.然后解压Hadoop,hive,scala我这里都解压到了/Users/[用户名]/下方便使用。
3.修改配置文件,配置文件均在hadoop-2.8.5/etc/hadoop下
3.1编辑hadoop-env.sh,添加如下代码:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
根据自己的java版本调整。
3.2编辑core-site.xml,添加如下代码:
<configuration>
<!-- 指定HDFS老大(namenode)的通信地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://0.0.0.0:9000</value>
</property>
<!-- 指定hadoop运行时产生文件的存储路径 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/Users/[用户名]/hadoop-2.8.5/tmp</value>
</property>
</configuration>
3.3编辑hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
3.4编辑 mapred-site.xml(这里可能到遇到这个文件找不到的情况,将mapred-site.xml.template改成mapred-site.xml就可以了mv mapred-site.xml.template mapred-site.xml)
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
3.5编辑yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
4.配置Hadoop环境变量
在终端中执行命令
sudo vim /etc/profile
在文件中加入以下配置:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
export HADOOP_HOME=/Users/[用户名]/hadoop-2.8.5
export SCALA_HOME=/Users/[用户名]/scala-2.11.12
export HIVE_HOME=/Users/[用户名]/hive-2.3.7
export PATH=.:$JAVA_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$SCALA_HOME/bin:$PATH:/usr/local/mysql/bin:$HIVE_HOME/bin
然后执行文件:source /etc/profile
echo $HADOOP_HOME,确认环境变量配置生效
5.运行hadoop
5.1首先格式化namenode
输入命令:hadoop namenode -format
5.2 启动hadoop
输入命令:start-all.sh可以开启hadoop
5.3 使用hadoop
hadoop fs -mkdir /hadooptest
hadoop fs -ls /
5.4 页面访问hdfs 和 yarn:
启动完hdfs访问: http://localhost:50070
启动完yarn访问: http://localhost:8088