设为首页 收藏本站
查看: 1694|回复: 0

[经验分享] hadoop的伪分布式安装(详细)

[复制链接]

尚未签到

发表于 2018-10-30 09:34:48 | 显示全部楼层 |阅读模式
  安装环境
  vmvare 11
  centos 6.5
DSC0000.jpg

  安装开始:
  一   安装jdk
  将下载的  .bin格式的JDK传输到Linux  家目录下的  Hadoop 文件夹,将hadoop安装包也放到这个文件夹
DSC0001.jpg

DSC0002.jpg

DSC0003.jpg

  进入JDK安装目录建立一个软连接
  [root@CentOS-6 java]# ln -s jdk1.6.0_27 java
DSC0004.jpg

  [root@CentOS-6 java]# cd
  进入家目录
  编辑  .bashrc
DSC0005.jpg

  将hadoop目录解压到/usr/目录
  让环境变量生效
DSC0006.jpg

  二  设置ssh等效性
  配置ssh等效性
  免密码ssh设置 --不然每启动一次就需要输入一次密码
  现在确认能否不输入口令就用ssh登录localhost:
  # ssh localhost
  如果不输入口令就无法用ssh登陆localhost,执行下面的命令:
  [root@CentOS-6 ~]# ssh-keygen -t rsa
DSC0007.jpg

  [root@CentOS-6 ~]# cd .ssh/
  [root@CentOS-6 .ssh]# ls
  id_rsa  id_rsa.pub  known_hosts
DSC0008.jpg

  [root@CentOS-6 .ssh]# cat id_rsa.pub >authorized_keys
  [root@CentOS-6 .ssh]# ls
  authorized_keys  id_rsa  id_rsa.pub  known_hosts
  [root@CentOS-6 .ssh]#
DSC0009.jpg

  三 安装hadoop软件
  将hadoop压缩包解压到 /usr/目录下
DSC00010.jpg

  建立一个软连接
DSC00011.jpg

  编辑hadoop配置文件
  进入
DSC00012.jpg

  编辑三个文件core-site.xml 、hdfs-site.xml和mapred-site.xml
  1)编辑 core-site.xml 在 之间增加
  
  fs.default.name
  hdfs://localhost:9000
  
  
  hadoop.tmp.dir
  /tmp/hadoop/hadoop-${user.name}
  
  2)编辑hdfs-site.xml 在 之间增加
  
  dfs.replication
  1
  
  3)编辑mapred-site.xml 在 之间增加
  
  mapred.job.tracker
  localhost:9001
  
DSC00013.jpg

DSC00014.jpg

DSC00015.jpg

  进入hadoop安装目录
DSC00016.jpg

  格式化分布式文件系统
  格式化名称节点:建立一系列结构,存放HDFS元数据
DSC00017.jpg

  [root@CentOS-6 bin]#  ./hadoop namenode -format
DSC00018.jpg

  启动hadoop
  [root@CentOS-6 bin]# ./start-all.sh
DSC00019.jpg

  检测守护进程启动情况
  [root@CentOS-6 bin]# jps
  3884 NameNode
  4180 JobTracker
  4111 SecondaryNameNode
  4441 Jps
  [root@CentOS-6 bin]#
DSC00020.jpg

  启动过程出现错误 DataNode 没有启动成功
  查看日志
DSC00021.jpg

DSC00022.jpg

  从日志中可以看出 java.net.UnknownHostException 异常
  java.net.UnknownHostException: CentOS-6.5: CentOS-6.5
  at java.net.InetAddress.getLocalHost(InetAddress.java:1360)
  at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.getHostname(MetricsSystemImpl.java:481)
  at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.configureSystem(MetricsSystemImpl.java:412)
  at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.configure(MetricsSystemImpl.java:408)
  at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.start(MetricsSystemImpl.java:152)
  at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.init(MetricsSystemImpl.java:133)
  at org.apache.hadoop.metrics2.lib.DefaultMetricsSystem.init(DefaultMetricsSystem.java:40)
  at org.apache.hadoop.metrics2.lib.DefaultMetricsSystem.initialize(DefaultMetricsSystem.java:50)
  at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:1650)
  at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:1669)
  at org.apache.hadoop.hdfs.server.datanode.DataNode.secureMain(DataNode.java:1795)
  at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:1812)
  Hadoop在格式化HDFS的时候,通过hostname命令获取到的主机名是CentOS-6.5
  ,然后在/etc/hosts文件中进行映射的时候,没有找到
  查看一下/etc/sysconfig/network文件: 保存的是hostname 也就是主机名 。
  看看主机名是什么,然后修改 /etc/hosts文件,修改成主机名。
DSC00023.jpg

  修改后的hosts文件
DSC00024.jpg

  重启网络
  [root@CentOS-6 ~]# /etc/rc.d/init.d/network restart
  重新格式化HDFS
DSC00025.jpg

DSC00026.jpg

  启动集群
DSC00027.jpg

  开启成功
DSC00028.jpg

  进入虚拟机,打开浏览器,输入
  http://192.168.141.2:50070
  会看到节点存储信息
DSC00029.jpg

DSC00030.jpg

  到此安装结束
  简单测试
  [root@CentOS-6 ~]# hadoop fs -ls
  ls: Cannot access .: No such file or directory.
  [root@CentOS-6 ~]# ls
  anaconda-ks.cfg  hbase-0.94.16-security  install.log.syslog  模板  文档  桌面
  Hadoop           installer               workspace           视频  下载
  Hbase            install.log             公共的              图片  音乐
  [root@CentOS-6 ~]# mkdir input
  [root@CentOS-6 ~]# cd input/
  [root@CentOS-6 input]# ls
  [root@CentOS-6 input]# echo "hello world">test2.txt
  [root@CentOS-6 input]# echo "hello hadoop">test1.txt
  [root@CentOS-6 input]# ls
  test1.txt  test2.txt
  [root@CentOS-6 input]# hadoop fs -mkdir  input
  [root@CentOS-6 input]# hadoop fs -ls
  Found 1 items
  drwxr-xr-x   - root supergroup          0 2015-04-19 17:15 /user/root/input
  [root@CentOS-6 input]# hadoop fs -put test1.txt input
  [root@CentOS-6 input]# hadoop fs -put test2.txt input
  [root@CentOS-6 input]# hadoop fs -ls
  Found 1 items
  drwxr-xr-x   - root supergroup          0 2015-04-19 17:16 /user/root/input
  [root@CentOS-6 input]#
DSC00031.jpg

  测试mapreduce
  [root@CentOS-6 ~]# cd /usr/hadoop
  [root@CentOS-6 hadoop]# hadoop jar hadoop-examples-1.2.1.jar wordcount input output
  15/04/19 17:22:19 INFO input.FileInputFormat: Total input paths to process : 2
  15/04/19 17:22:19 INFO util.NativeCodeLoader: Loaded the native-hadoop library
  15/04/19 17:22:19 WARN snappy.LoadSnappy: Snappy native library not loaded
  15/04/19 17:22:20 INFO mapred.JobClient: Running job: job_201504191711_0001
  15/04/19 17:22:21 INFO mapred.JobClient:  map 0% reduce 0%
  15/04/19 17:22:57 INFO mapred.JobClient:  map 50% reduce 0%
  15/04/19 17:22:58 INFO mapred.JobClient:  map 100% reduce 0%
  15/04/19 17:23:09 INFO mapred.JobClient:  map 100% reduce 100%
  15/04/19 17:23:10 INFO mapred.JobClient: Job complete: job_201504191711_0001
  15/04/19 17:23:10 INFO mapred.JobClient: Counters: 29
  15/04/19 17:23:10 INFO mapred.JobClient:   Job Counters
  15/04/19 17:23:10 INFO mapred.JobClient:     Launched reduce tasks=1
  15/04/19 17:23:10 INFO mapred.JobClient:     SLOTS_MILLIS_MAPS=63538
  15/04/19 17:23:10 INFO mapred.JobClient:     Total time spent by all reduces waiting after reserving slots (ms)=0
  15/04/19 17:23:10 INFO mapred.JobClient:     Total time spent by all maps waiting after reserving slots (ms)=0
  15/04/19 17:23:10 INFO mapred.JobClient:     Launched map tasks=2
  15/04/19 17:23:10 INFO mapred.JobClient:     Data-local map tasks=2
  15/04/19 17:23:10 INFO mapred.JobClient:     SLOTS_MILLIS_REDUCES=11731
  15/04/19 17:23:10 INFO mapred.JobClient:   File Output Format Counters
  15/04/19 17:23:10 INFO mapred.JobClient:     Bytes Written=25
  15/04/19 17:23:10 INFO mapred.JobClient:   FileSystemCounters
  15/04/19 17:23:10 INFO mapred.JobClient:     FILE_BYTES_READ=55
  15/04/19 17:23:10 INFO mapred.JobClient:     HDFS_BYTES_READ=249
  15/04/19 17:23:10 INFO mapred.JobClient:     FILE_BYTES_WRITTEN=169962
  15/04/19 17:23:10 INFO mapred.JobClient:     HDFS_BYTES_WRITTEN=25
  15/04/19 17:23:10 INFO mapred.JobClient:   File Input Format Counters
  15/04/19 17:23:10 INFO mapred.JobClient:     Bytes Read=25
  15/04/19 17:23:10 INFO mapred.JobClient:   Map-Reduce Framework
  15/04/19 17:23:10 INFO mapred.JobClient:     Map output materialized bytes=61
  15/04/19 17:23:10 INFO mapred.JobClient:     Map input records=2
  15/04/19 17:23:10 INFO mapred.JobClient:     Reduce shuffle bytes=61
  15/04/19 17:23:10 INFO mapred.JobClient:     Spilled Records=8
  15/04/19 17:23:10 INFO mapred.JobClient:     Map output bytes=41
  15/04/19 17:23:10 INFO mapred.JobClient:     CPU time spent (ms)=48340
  15/04/19 17:23:10 INFO mapred.JobClient:     Total committed heap usage (bytes)=292167680
  15/04/19 17:23:10 INFO mapred.JobClient:     Combine input records=4
  15/04/19 17:23:10 INFO mapred.JobClient:     SPLIT_RAW_BYTES=224
  15/04/19 17:23:10 INFO mapred.JobClient:     Reduce input records=4
  15/04/19 17:23:10 INFO mapred.JobClient:     Reduce input groups=3
  15/04/19 17:23:10 INFO mapred.JobClient:     Combine output records=4
  15/04/19 17:23:10 INFO mapred.JobClient:     Physical memory (bytes) snapshot=324190208
  15/04/19 17:23:10 INFO mapred.JobClient:     Reduce output records=3
  15/04/19 17:23:10 INFO mapred.JobClient:     Virtual memory (bytes) snapshot=1133568000
  15/04/19 17:23:10 INFO mapred.JobClient:     Map output records=4
  [root@CentOS-6 hadoop]#
  [root@CentOS-6 hadoop]# hadoop fs -ls
  Found 2 items
  drwxr-xr-x   - root supergroup          0 2015-04-19 17:16 /user/root/input
  drwxr-xr-x   - root supergroup          0 2015-04-19 17:23 /user/root/output
  [root@CentOS-6 hadoop]# hadoop fs -ls output
  Found 3 items
  -rw-r--r--   1 root supergroup          0 2015-04-19 17:23 /user/root/output/_SUCCESS
  drwxr-xr-x   - root supergroup          0 2015-04-19 17:22 /user/root/output/_logs
  -rw-r--r--   1 root supergroup         25 2015-04-19 17:23 /user/root/output/part-r-00000
  [root@CentOS-6 hadoop]# hadoop fs -cat output/part-r-00000
  hadoop1
  hello2
  world1
  [root@CentOS-6 hadoop]#
  运行结果
DSC00032.jpg

  数据其实就在 slave1 和 slave2 我们制定的位置
  [hadoop@master conf]$ vim hdfs-site.xml
  
  
  
  
  
  dfs.data.dir
  /data/hadoop
  
  
  dfs.replication
  2
  
  
  [root@CentOS-6 conf]# hadoop fs
  Usage: java FsShell
  [-ls ]
  [-lsr ]
  [-du ]
  [-dus ]
  [-count[-q] ]
  [-mv  ]
  [-cp  ]
  [-rm [-skipTrash] ]
  [-rmr [-skipTrash] ]
  [-expunge]
  [-put  ... ]
  [-copyFromLocal  ... ]
  [-moveFromLocal  ... ]
  [-get [-ignoreCrc] [-crc]  ]
  [-getmerge   [addnl]]
  [-cat ]
  [-text ]
  [-copyToLocal [-ignoreCrc] [-crc]  ]
  [-moveToLocal [-crc]  ]
  [-mkdir ]
  [-setrep [-R] [-w]  ]
  [-touchz ]
  [-test -[ezd] ]
  [-stat [format] ]
  [-tail [-f] ]
  [-chmod [-R]  PATH...]
  [-chown [-R] [OWNER][:[GROUP]] PATH...]
  [-chgrp [-R] GROUP PATH...]
  [-help [cmd]]
  Generic options supported are
  -conf      specify an application configuration file
  -D             use value for given property
  -fs       specify a namenode
  -jt     specify a job tracker
  -files     specify comma separated files to be copied to the map reduce cluster
  -libjars     specify comma separated jar files to include in the classpath.
  -archives     specify comma separated archives to be unarchived on the compute machines.
  The general command line syntax is
  bin/hadoop command [genericOptions] [commandOptions]
  [root@CentOS-6 conf]#
  [root@CentOS-6 conf]# hadoop dfsadmin
  Usage: java DFSAdmin
  [-report]
  [-safemode enter | leave | get | wait]
  [-saveNamespace]
  [-refreshNodes]
  [-finalizeUpgrade]
  [-upgradeProgress status | details | force]
  [-metasave filename]
  [-refreshServiceAcl]
  [-refreshUserToGroupsMappings]
  [-refreshSuperUserGroupsConfiguration]
  [-setQuota  ...]
  [-clrQuota ...]
  [-setSpaceQuota  ...]
  [-clrSpaceQuota ...]
  [-setBalancerBandwidth ]
  [-help [cmd]]
  Generic options supported are
  -conf      specify an application configuration file
  -D             use value for given property
  -fs       specify a namenode
  -jt     specify a job tracker
  -files     specify comma separated files to be copied to the map reduce cluster
  -libjars     specify comma separated jar files to include in the classpath.
  -archives     specify comma separated archives to be unarchived on the compute machines.
  The general command line syntax is
  bin/hadoop command [genericOptions] [commandOptions]
  [root@CentOS-6 conf]#
  [root@CentOS-6 ~]# hadoop dfsadmin -report
  Configured Capacity: 18536591360 (17.26 GB)
  Present Capacity: 11065761792 (10.31 GB)
  DFS Remaining: 11065618432 (10.31 GB)
  DFS Used: 143360 (140 KB)
  DFS Used%: 0%
  Under replicated blocks: 0
  Blocks with corrupt replicas: 0
  Missing blocks: 0
  -------------------------------------------------
  Datanodes available: 1 (1 total, 0 dead)
  Name: 127.0.0.1:50010
  Decommission Status : Normal
  Configured Capacity: 18536591360 (17.26 GB)
  DFS Used: 143360 (140 KB)
  Non DFS Used: 7470829568 (6.96 GB)
  DFS Remaining: 11065618432(10.31 GB)
  DFS Used%: 0%
  DFS Remaining%: 59.7%
  Last contact: Sun Apr 19 17:37:09 CST 2015
  [root@CentOS-6 ~]#
DSC00033.jpg

  可以使用帮助
  刷新命令
  [root@CentOS-6 ~]# hadoop dfsadmin -help refreshNodes
DSC00034.jpg

  归档命令 将多个小文件合并一个大文件
  [hadoop@master ~]$ hadoop archive -archiveName files.har -p /user/hadoop/input
  /user/hadoop
  这里名字必须叫做 files.har
  [hadoop@master ~]$ hadoop fs -cat /user/hadoop/files.har/part-0
  hello hadoop
  hello world
  使得负载均衡
  [root@CentOS-6 ~]# start-balancer.sh
  starting balancer, logging to /usr/hadoop-1.2.1/libexec/../logs/hadoop-root-balancer-CentOS-6.5.out
  [root@CentOS-6 ~]#


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-628297-1-1.html 上篇帖子: Python菜鸟的Hadoop实战——Hadoop2.6.0中的Yarn 下篇帖子: hadoop2.7 完全分布式安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表