• 一:大数据hadoop简介
  • 二:hadoop的伪分布安装
  • 三:运行wordcount测试
  • 四:hadoop 常用端口号
  • 五:hadoop的四大模块包含
  • 六:启动脚本:

一: 大数据hadoop简介

hadoop 简介: 
 开源软件,可靠的,可分布式,可伸缩的。

 去IOE 
---------
 IBM         // ibm 小型机
 Oracle      // oracle 数据库服务器
 EMC         // 共享存储柜

cluster:
-----------
 集群
 1T = 1024G 
 1P = 1024T 
 1E = 1024P
 1Z = 1024E
 1Y = 1024Z 
 1N = 1024Y 

 海量的数据:
  ------
  PB 

 大数据解决了两个问题:
 ---------------------
 1. 存储
     分布式存储
 2. 计算
     分布式计算
 云计算:
 ------
 1. 服务
 2. 虚拟化

 分布式: 
 --------------
  由分布在不同主机上的进程协同在一起,才能构成整个应用

  b/s 结构
  ---------------------
  Browser /http server: 瘦客端模式

  failure over // 容灾
  fault over   // 荣错

大数据4V特点:
-------------------
Volume : 容量大
variety: 多样化
velocity : 速度快  
valueless : 价值密度低

Hadoop 的四个模块
------------------
1. common 
2. hdfs 
3. hadoop yarn 
4. mapreduce (mr)

hadoop 的安装模式:
1. 独立模式 (standalone,local)
  nothing !
2. 伪分布模式 (pseudodistributed mode)
3. 集群模式 (cluster mode)

二:hadoop的伪分布安装

2.1 软件所需

1. jdk-8u151-linux-x64.tar.gz
2. hadoop-2.7.4.tar.gz

2.2 安装jdk

(1) 卸载原有jdk: 
rpm -e java-1.8.0-openjdk-devel-1.8.0.131-11.b12.el7.x86_64 java-1.7.0-openjdk-headless-1.7.0.141-2.6.10.5.el7.x86_64 java-1.8.0-openjdk-headless-1.8.0.131-11.b12.el7.x86_64 copy-jdk-configs-2.2-3.el7.noarch java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64 java-1.6.0-openjdk-1.6.0.41-1.13.13.1.el7_3.x86_64 java-1.7.0-openjdk-1.7.0.141-2.6.10.5.el7.x86_64 java-1.6.0-openjdk-devel-1.6.0.41-1.13.13.1.el7_3.x86_64 java-1.7.0-openjdk-devel-1.7.0.141-2.6.10.5.el7.x86_64 --nodeps

(2) 创建安装目录:
mkdir /soft 

tar -zxvf jdk-8u151-linux-x64.tar.gz -C /soft 
cd /soft
ln -s jdk1.8.0_151 jdk
-----
配置环境变量
vim /etc/profile
----
最后加上:
# jdk
export JAVA_HOME=/soft/jdk
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin

---
source /etc/profile
java -version 

image_1bt959ruciscvu4hociunb79.png-147kB

2.3 安装hadoop

cd software 
tar -zxvf hadoop-2.7.4.tar.gz -C /soft
cd /soft
ln -s hadoop-2.7.4 hadoop

配置环境变量
vim /etc/profile
----
到最后加上

# hadoop
export HADOOP_HOME=/soft/hadoop
PATH=$PATH:$HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

---
source /etc/profile
cd /soft/hadoop/
bin/hadoop version

image_1bt95l14g1k1g1mdq1qcvnl5jspm.png-211.2kB

cd /soft/hadoop/etc/hadoop

编辑core-site.xml 文件:
 vim core-site.xml

<configuration> 
<property>
<name>hadoop.tmp.dir</name>
<value>/soft/hadoop/data</value>
<description>hadoop_temp</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://node01.yangyang.com:8020</value>
<description>hdfs_derect</description>
</property>
</configuration> 
编辑hdfs-site.xml
vim hdfs-site.xml
------------------
<configuration>
<property>
<name>dfs.replication</name> 
<value>1</value>
<description>num</description>
 <name>dfs.namenode.http-address</name>
<value>node01.yangyang.com:50070</value>
</property>
</configuration>
编辑 mapred-site.xml

cp -p mapred-site.xml.template mapred-site.xml 

vim mapred-site.xml
------
<configuration>
<property>
 <name>mapreduce.framework.name</name>
 <value>yarn</value>
</property> 
 <property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>node01.yangyang.com:19888</value>
</property>
</configuration>
配置yarn-site.xml
vim yarn-site.xml
-----------------
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
#echo "export JAVA_HOME=/soft/jdk" >> hadoop-env.sh
#echo "export JAVA_HOME=/soft/jdk" >> mapred-env.sh
#echo "export JAVA_HOME=/soft/jdk" >> yarn-env.sh
格式化文件系统:
bin/hdfs namenode -format 

image_1bt96ue3j103hul0150l1hpf1nqs9.png-322.5kB
image_1bt96v0c012uv11lc33312cmr2am.png-440.7kB

启动namenode 与 datanode 
hadoop-daemon.sh start namenode
hadoop-daemon.sh start datanode
打开浏览器:

image_1bt976kkm3be1s4f1gcg53s1qk813.png-166kB

启动yarn
yarn-daemon.sh start resourcemanager
yarn-daemon.sh start nodemanager
打开浏览器

image_1bt97dtlro03k4kcg27o7j6420.png-314.4kB

image_1bt98amtj1p3t1ac31pp51p7l1paa5l.png-129.9kB

三:运行wordcount测试

hdfs dfs -mkdir /input 
vim file1

image_1bt97ij7r11b41oo9rnuosp1ll2d.png-69.6kB

hdfs dfs -put file1 /input 

cd /soft/hadoop/share/hadoop/mapreduce

yarn jar hadoop-mapreduce-examples-2.7.4.jar wordcount /input /output

image_1bt97nk6pq6hfsmsq91lq91nc237.png-512.7kB
image_1bt97ol4hfvp1l2qcli1tal1v753k.png-160.1kB
image_1bt97qha5h1v1vinr4m1sjc5ll41.png-394.5kB

hdfs dfs -ls /output 
hdfs dfs -get /output 

image_1bt98cqdl11q6179ltjajpq1s062.png-309.2kB
image_1bt97t5rp8r51t4k1nu1t54ujl4e.png-132.2kB

启动jobhistoryserver

mr-jobhistory-daemon.sh start historyserver

image_1bt97vb0116hlchn1i0e7i2gr54r.png-124.2kB

image_1bt985pjs1jvs193g10an1k8c119a58.png-532.3kB

四: hadoop 常用端口号:

50070  //namenode http port 
50075  //datanode http port
50090  //SecondaryNameNode http port

8020  // namenode rpc port 
50010 // datanode rpc port

8088  //yarn http port 
8042   //nodemanager http port 
19888 // jobhistoryserver http port

五: hadoop的四大模块包含

common 

hdfs   // namenode + datanode+ secondarynamenode 

mapred 

yarn    //rescourcemanager + nodemanager

六: 启动脚本:

1. start-all.sh   // 启动所有进程
2. stop-all.sh    // 停止所有进程

3. start-dfs.sh //  
     NN ,DN , SNN 

4. start-yarn.sh  //
    RM,NM