Hadoop是一个能够对海量数据进行分布式处理的系统架构,Hadoop框架的核心是:HDFS和MapReduce,HDFS分布式文件系统为海量的数据提供了存储,MapReduce分布式处理框架为海量的数据提供了计算。
HDFS框架
MapReduce架构
Hadoop下载安装
Hadoop下载
1
| wget http://apache.claz.org/hadoop/common/hadoop-3.2.0/hadoop-3.2.0.tar.gz
|
Hadoop安装
由于Hadoop的部署需要java JDK 的支持,所以需要先安装Java JDK 参考 日志分析系统(zookeeper+flume+kafka)之实时接收数据 里边有涉及到。
1 2 3
| cd /usr/local/ tar zxvf ./hadoop-3.2.0.tar.gz mv ./hadoop-3.2.0 ./hadoop
|
环境变量设置
设置JAVA的环境变量,JAVA_HOME是JDK的位置
1 2 3 4 5 6 7 8 9 10 11
| # 设置JAVA的环境变量,JAVA_HOME是JDK的位置 vi /etc/profile export HADOOP_HOME=/usr/local/hadoop export PATH=$PATH:$HADOOP_HOME/bin export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk export PATH=$PATH:$JAVA_HOME/bin # 设置生效 source /etc/profile # 设置Hadoop的JAVA_HOME vi etc/hadoop/hadoop-env.sh export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.x86_64
|
Hadoop配置
需要配置的文件
- hadoop/etc/hadoop/hadoop-env.sh
- hadoop/etc/hadoop/yarn-env.sh
- hadoop/etc/hadoop/core-site.xml
- hadoop/etc/hadoop/hdfs-site.xml
- hadoop/etc/hadoop/mapred-site.xml
- hadoop/etc/hadoop/yarn-site.xml
core-site.xml配置
1 2 3
| <name>fs.default.name</name> <value>hdfs://10.1.1.35:9000</value> </property>
|
hdfs-site.xml配置
1 2 3 4
| <property> <name>dfs.http.address</name> <value>10.1.1.35:50070</value> </property>
|
mapred-site.xml配置
1 2 3 4 5 6 7 8
| <property> <name>mapred.job.tracker.http.address</name> <value>10.1.1.35:50030</value> </property> <property> <name>mapred.task.tracker.http.address</name> <value>10.1.1.35:50060</value> </property>
|
hadoop-env.sh配置
1 2 3 4 5
| # 修改文件,在末尾添加如下代码。 export HDFS_NAMENODE_USER=root export HDFS_DATANODE_USER=root export HDFS_SECONDARYNAMENODE_USER=root export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64
|
yarn-site.xml配置
1 2 3 4 5 6 7 8 9
| <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>10.1.1.35:8099</value> <description>这个地址是mr管理界面的</description> </property>
|
yarn-env.sh配置
1 2
| # 修改文件,在末尾添加如下代码。 export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64
|
测试
格式换文件系统
hdfs namenode -format
启动节点
sbin/start-dfs.sh
hadoop文件管理
hadoop 资源管理
文件测试+文件wordcount
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| # 上传 hadoop fs -put /home/wwwlogs/access.log hdfs://10.1.1.35:9000/ # 删除 hadoop fs -rm hdfs://localhost:9000/access.log # 计数测试 hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.0.jar wordcount /home/wwwlogs/access.log /myorder/ # 结果检查 hadoop fs -ls /myorder hadoop fs -cat /myorder/part-r-00000 # 结果 [30/Apr/2019:13:33:47 45 [30/Apr/2019:13:33:48 3 [30/Apr/2019:13:34:18 47 [30/Apr/2019:13:34:27 4 [30/Apr/2019:13:34:28 37
|