hadoop-3.3.0安装教程

背景:部门要对接大数据部门那边的交易流水数据,然后根据产品的特性统计分析等,应用到自己部门的各个产品中(吐槽=_=!:为啥大数据部门不给帮忙做呢?跨部门的问题,大数据懒得理你哈哈哈)于是部门老大无奈又充满期待的看着我们这帮Java的,加油~你们可以的......中间省略N个字,最后由我一个人边自学边开发项目,一个月不到时间,搭建完整套大数据环境,上线了商业数据项目大数据版本。比起用分布式定时任务去跑数据处理数据快了1万倍,原本花7天不停机处理数据,现在10分钟多就搞完,当时测试的时候所有人的表情相当震惊!!!哈哈哈

1. 服务器规划:

Hadoop 具体部署是两个集群,HDFS集群和YARN集群,两个集群逻辑上分离,但是物理上在一起。

HDFS:负责海量数据的存储,主要角色有: NameNode; SecondaryNameNode; DataNode

YARN: 负责海量数据运算的资源调度,主要角色有:ResourceManagerNodeManager

IP hostname(主机名) 身份
10.213.50.94 cnsz72vl0237 NameNode、DataNode ResourceManager、HistoryServer
10.213.50.95 cnsz72vl0238 DataNode、NodeManager
10.213.50.96 cnsz72vl0239 DataNode、NodeManager、SecondaryNameNode

2. Linux设置

2.1 修改主机与IP映射

vi /etc/hosts

10.213.50.94    cnsz72vl0237

10.213.50.95    cnsz72vl0238

10.213.50.96    cnsz72vl0239

2.2 关闭防火墙

#查看防火墙状态:
service iptables status

#关闭防火墙状态:
service iptables stop

#再次执行下述命令查看防火墙状态:
service iptables status 

#防火墙开启自启动状态:
chkconfig iptables  --list

#关闭防火墙开启自启动:
chkconfig iptables off

2.3 设置ssh免登陆

请参考我的另一篇博客:《ssh免密登录》

3. 环境设置

3.1 上传安装包到指定目录后,解压:

cd /home/ysops/hadoop 

tar -zxvf hadoop-3.3.0.tar.gz

为了方便修改解压后的文件目录名:

mv hadoop-3.3.0  hadoop

在当前用户目录下bash_profile:

vi .bash_profile

在尾部追加以下内容:

export HADOOP_HOME=/home/ysops/hadoop/hadoop

PATH变量后面增加

PATH=$PATH:$JAVA_HOME/bin

退出 vi 编辑器,执行 source .bash_profile

4. hadoop设置

1、进入目录~/hadoop/hadoop/etc/hadoop,依次编辑hadoop-env.sh、mapred-env.sh、yarn-env.sh这三个文件,确保它们的内容中都有JAVA_HOME的正确配置:

export JAVA_HOME=/home/ysops/java/jdk1.8

创建文件夹(三台都要创建)

mkdir -p ~/work/tmp/dfs/name && mkdir -p ~/work/tmp/dfs/data

2、编辑core-site.xml文件,找到configuration节点,改成以下内容:

<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://cnsz72vl0237:8020</value>
  </property>

  <property>
    <name>hadoop.tmp.dir</name>
    <value>/home/ysops/work/tmp</value>
  </property>

</configuration>

3、编辑hdfs-site.xml文件,找到configuration节点,改成以下内容,把node2配置成sendary namenode:

<configuration>

  <property>
    <name>dfs.replication</name>
    <value>2</value>
  </property>

  <property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>cnsz72vl0239:50070</value>
  </property>

  <property>
    <name>dfs.name.dir</name>
    <value>/home/ysops/work/tmp/dfs/name</value>
  </property>

  <property>
    <name>dfs.data.dir</name>
    <value>/home/ysops/work/tmp/dfs/data</value>
  </property> 

</configuration>

4、编辑workers文件,删除里面的"localhost",增加两行内容:

cnsz72vl0238
cnsz72vl0239

5、编辑yarn-site.xml文件,找到configuration节点,改成以下内容

<configuration>

  <property>

    <name>yarn.nodemanager.aux-services</name>

    <value>mapreduce_shuffle</value>

  </property>

  <property>

    <name>yarn.resourcemanager.hostname</name>

    <value>cnsz72vl0237</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.resourcemanager.address</name>

    <value>cnsz72vl0237:8032</value>

  </property>

  <property>

    <name>yarn.resourcemanager.scheduler.address</name>

    <value>cnsz72vl0237:8030</value>

  </property>

  <property>

    <name>yarn.resourcemanager.resource-tracker.address</name>

    <value>cnsz72vl0237:8031</value>

  </property>

  <property>

    <name>yarn.resourcemanager.admin.address</name>

    <value>cnsz72vl0237:8033</value>

  </property>

  <property>

    <name>yarn.resourcemanager.webapp.address</name>

    <value>cnsz72vl0237:8088</value>

  </property>

</configuration>

6、编辑mapred-site.xml文件,找到configuration节点,改成以下内容:

<configuration>

   <property>

       <name>mapred.job.tracker</name>

       <value>http://cnsz72vl0237:9001</value>

   </property>

   <property>

       <name>mapreduce.framework.name</name>

       <value>yarn</value>

   </property>

   <property>

       <name>mapreduce.jobhistory.address</name>

       <value>cnsz72vl0237:10020</value>

   </property>

   <property>

       <name>mapreduce.jobhistory.webapp.address</name>

       <value>cnsz72vl0237:19888</value>

   </property>

   <property>

       <name>mapreduce.application.classpath</name>

       <value>

           /home/ysops/hadoop/hadoop/etc/hadoop,

           /home/ysops/hadoop/hadoop/share/hadoop/common/*,

           /home/ysops/hadoop/hadoop/share/hadoop/common/lib/*,

           /home/ysops/hadoop/hadoop/share/hadoop/hdfs/*,

           /home/ysops/hadoop/hadoop/share/hadoop/hdfs/lib/*,

           /home/ysops/hadoop/hadoop/share/hadoop/mapreduce/*,

           /home/ysops/hadoop/hadoop/share/hadoop/mapreduce/lib/*,

           /home/ysops/hadoop/hadoop/share/hadoop/yarn/*,

           /home/ysops/hadoop/hadoop/share/hadoop/yarn/lib/*

       </value>

   </property>

</configuration>

7、将整个hadoo目录同步到cnsz72vl0238、cnsz72vl0239的home目录:

scp -r ~/hadoop ysops@10.213.50.95:~/hadoop/
                                            
scp -r ~/hadoop ysops@10.213.50.96:~/hadoop/

5. hadoop启动

(以下的启动都只在NameNode(cnsz72vl0237)节点启动)

1、在cnsz72vl0237执行以下命令格式化hdfs,在~/hadoop/hadoop/bin目录

hdfs namenode -format

2、~/hadoop/hadoop/bin目录,启动yarn:

start-yarn.sh

3、启动ResourceManager

yarn-daemon.sh start resourcemanager

3、启动日志服务,如果启动信息说明已经启动,可以通过jps命令,查看是否启动,就不用重复启动了

mr-jobhistory-daemon.sh start historyserver

4、启动成功后,最后通过jps命令查看java进程,如下:

3253 JobHistoryServer
2647 NameNode
3449 Jps
2941 ResourceManager

5、再去cnsz72vl0238,执行jps命令查看java进程:

2176 DataNode
2292 NodeManager
2516 Jps

6、再去cnsz72vl0239,执行jps命令查看java进程:

1991 DataNode
2439 Jps
2090 SecondaryNameNode
2174 NodeManager

至此,hadoop启动成功;

Hdfs:http://10.213.50.96:50090/status.html

image.png

hadoop:http://10.213.50.94:8088/

image.png

http://10.213.50.94:9870/dfshealth.html#tab-overview

image.png

6. hadoop验证

1、在cnsz72vl0237上,在home目录创建文件test.txt,内容随意

doop mapreduce hive
hbase spark storm
sqoop hadoop hive
spark hadoop

2、在hadoop/bin,在hdfs上创建一个文件夹

hdfs dfs -mkdir /input

3、将test.txt文件上传的hdfs的/input目录下:

hdfs dfs -put ~/test.txt /input

4、直接运行hadoop安装包中自带的workcount程序:

yarn \
jar ~/hadoop/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.0.jar \
wordcount \
/input/test.txt \
/output

5、控制台输出如下:

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,558评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,002评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,024评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,144评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,255评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,295评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,068评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,478评论 1 305
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,789评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,965评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,649评论 4 336
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,267评论 3 318
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,982评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,223评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,800评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,847评论 2 351

推荐阅读更多精彩内容