hadoop2.4完全分布式部署
hadoop2.4完全分布式部署
感谢:http://blog.csdn.net/licongcong_0224/article/details/12972889
集群组成:
两台red hat ent 6.5 x64 服务器
192.168.16.100 master
192.168.16.101 cupcs3
注意:master和cupcs3分别是两台服务器的hostname
1. 下载编译hadoop2.4,编译方法:http://www.cnblogs.com/wrencai/p/3897438.html
2. 修改相关配置文件,如下:
hadoop-env.sh文件
修改JAVA_HOME值(export JAVA_HOME=/YOURJDK_HOME) yarn-env.sh文件
修改JAVA_HOME值(export JAVA_HOME=/YOURJDK_HOME)
slaves文件添加如下:注:此处我们将主节点master也所谓了一个slave这样在启动的时候主节点上也会启动datanode和nodemanager两个进程
master
cupcs3 core-site.xml文件
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property> <property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property> <property>
<name>hadoop.tmp.dir</name>
<value>/home/bigdata/hadoop-2.4.1/tmp/hadoop-${user.name}</value>
<description>Abase for other temporary directories.</description>
</property> <property>
<name>hadoop.proxyuser.hduser.hosts</name>
<value>*</value>
</property> <property>
<name>hadoop.proxyuser.hduser.groups</name>
<value>*</value>
</property> </configuration> hdfs-site.xml文件
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:9001</value>
</property> <property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/bigdata/hadoop-2.4.1/dfs/name</value>
</property> <property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/bigdata/hadoop-2.4.1/dfs/data</value>
</property> <property>
<name>dfs.replication</name>
<value>2</value>
</property> <property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property> </configuration> mapred-site.xml文件
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property> <property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property> <property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property> </configuration> yarn-site.xml文件
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property> <property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property> <property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property> <property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property> <property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property> <property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property> <property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property> </configuration>
3. 配置服务器之间的ssh无密码连接:
在每台服务器上都执行
ssh-keygen -t rsa -P ''
执行完成后在~/.ssh隐藏目录下会生成 id_rsa和id_rsa.pub两个文件。
3.1 拷贝出所有机器上生成的id_rsa.pub文件内容到同一个文本文件中,然后将该文件命名为authorized_keys,然后将这个拷贝到所有机器的~/.ssh目录下面。
3.2 修改文件:vi /etc/ssh/sshd_config
RSAAuthentication yes 开启RSA加密方式
PubkeyAuthentication yes 开启公钥认证
AuthorizedKeysFile .ssh/authorized_keys 公钥存放位置 PasswordAuthentication yes 使用密码登录 GSSAPIAuthentication no 防止登录慢,以及报错问题 ClientAliveInterval 300秒超时自动退出
ClientAliveCountMax 允许SSH远程连接的最大数
这样就完成了ssh无密码访问配置。
4.修改/etc/hosts文件,配置各个节点的ip和主机名映射关系,在本例中在每台机器的/etc/hosts中添加如下
192.168.16.100 master
192.168.16.101 cupcs3
5.关闭各台服务器上的防火墙,否则启动hadoop后,可能会出现各个进程启动正常,但是master监视不到slaves节点的情况。(下面两种方法任选其一)
5.1 重启后永久性生效: 开启:chkconfig iptables on 关闭:chkconfig iptables off 5.2 即时生效,重启后失效: 开启:service iptables start 关闭:service iptables stop
6.运行测试:
6.1格式化hdfs文件系统:
./HADOOP_HOME/bin/hadood namenode –format
6.2启动集群
./HADOOP_HOME/sbin/start-all.sh
成功启动后,执行jps命令,在master上看到如下进程
ResourceManager
NameNode
SecondaryNameNode
DataNode
NodeManager
Jps
cupcs3上看到如下进程
NodeManager
DataNode
Jps
执行hdf dfsadmin -report命令,得到结果如下:
[bigdata@master]$ hdfs dfsadmin -report
Configured Capacity: (869.76 GB)
Present Capacity: (795.16 GB)
DFS Remaining: (791.13 GB)
DFS Used: (4.03 GB)
DFS Used%: 0.51%
Under replicated blocks:
Blocks with corrupt replicas:
Missing blocks: -------------------------------------------------
Datanodes available: ( total, dead) Live datanodes:
Name: 192.168.16.100: (master)
Hostname: master
Decommission Status : Normal
Configured Capacity: (434.82 GB)
DFS Used: (4.00 GB)
Non DFS Used: (37.03 GB)
DFS Remaining: (393.80 GB)
DFS Used%: 0.92%
DFS Remaining%: 90.56%
Configured Cache Capacity: ( B)
Cache Used: ( B)
Cache Remaining: ( B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Last contact: Fri Sep :: CST Name: 192.168.16.101: (cupcs3)
Hostname: cupcs3
Decommission Status : Normal
Configured Capacity: (434.93 GB)
DFS Used: (32.92 MB)
Non DFS Used: (37.57 GB)
DFS Remaining: (397.33 GB)
DFS Used%: 0.01%
DFS Remaining%: 91.35%
Configured Cache Capacity: ( B)
Cache Used: ( B)
Cache Remaining: ( B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Last contact: Fri Sep :: CST [bigdata@master]$
同时在 浏览器下http://master:50070 可以查看hdfs的页面 http://master:8088 可以查看hadoop进程管理页面
hadoop2.4完全分布式部署的更多相关文章
- hadoop2.6分布式部署时 livenodes等于1的原因
1.问题描述 在进行hadoop2.x版本的hdfs分布式部署时,遇到了一个奇怪的问题: 使用start-dfs.sh命令启动dfs之后,所有的datanode节点上均能看到datanode进程,然而 ...
- ubuntu + hadoop2.5.2分布式环境配置
ubuntu + hadoop2.5.2分布式环境配置 我之前有详细写过hadoop-0.20.203.0rc1版本的环境搭建 hadoop学习笔记——环境搭建 http://www.cnblogs. ...
- Hadoop 2.6.0分布式部署參考手冊
Hadoop 2.6.0分布式部署參考手冊 关于本參考手冊的word文档.能够到例如以下地址下载:http://download.csdn.net/detail/u012875880/8291493 ...
- Apache Hadoop 2.9.2 完全分布式部署
Apache Hadoop 2.9.2 完全分布式部署(HDFS) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.环境准备 1>.操作平台 [root@node101.y ...
- Hadoop生态圈-zookeeper完全分布式部署
Hadoop生态圈-zookeeper完全分布式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客部署是建立在Hadoop高可用基础之上的,关于Hadoop高可用部署请参 ...
- Hadoop 完全分布式部署
完全分布式部署Hadoop 分析: 1)准备3台客户机(关闭防火墙.静态ip.主机名称) 2)安装jdk 3)配置环境变量 4)安装hadoop 5)配置环境变量 6)安装ssh 7)集群时间同步 7 ...
- Hadoop生态圈-flume日志收集工具完全分布式部署
Hadoop生态圈-flume日志收集工具完全分布式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 目前为止,Hadoop的一个主流应用就是对于大规模web日志的分析和处理 ...
- Hadoop生态圈-phoenix完全分布式部署以及常用命令介绍
Hadoop生态圈-phoenix完全分布式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. phoenix只是一个插件,我们可以用hive给hbase套上一个JDBC壳,但是你 ...
- 大数据技术之Hadoop3.1.2版本伪分布式部署
大数据技术之Hadoop3.1.2版本伪分布式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.主机环境准备 1>.操作系统环境 [root@node101.yinzh ...
随机推荐
- Swift,循环及判断
1.for循环(执行固定次数的操作) (1)基本数组循环 var a=[1,2,3] for value in a{ print(value) //1 2 3 } (2)自定义循环次数 for i i ...
- 用coffeescript实现类java的Map类
class Map constructor : -> @entry = {} @count = 0 size : -> return @count isEmpty : -> retu ...
- WebGL可视化地球和地图引擎:Cesium.js
http://www.open-open.com/lib/view/open1427341416418.html Cesium 是一个JavaScript 库用于在Web浏览器创建 3D 地球和 ...
- GPU Instance
http://forum.china.unity3d.com/thread-17131-1-1.html https://docs.unity3d.com/Manual/GPUInstancing.h ...
- List<实体>与List<String>数据互转
1.List<实体>数据: public List<Device> queryOSDevice(String cpu,String ip,String name){ Strin ...
- 总结对Docker这个东西的想法
记得一开始的时候,还只能在一些网站上看到关于Docker零星的一些消息,之后的不久,有关Docker消息就遍布网络. 是什么因素让Docker火起来的? 或者说什么原因促使大家都对Docker感兴趣并 ...
- C#秘密武器之泛型
一.简介: 很多初学者在刚开始接触泛型的时候会比较难理解泛型,在这里先把 “泛型”当作一个形容词,这样就方便理解了,因为很多东西都可以是泛型的!比如:“泛型的类”,“泛型的方法”,“泛型的接口”,“泛 ...
- lodash capitalize 首字母大写
_.capitalize([string='']) 转换字符串首字母为大写,剩下为小写. _.capitalize('FRED'); // => 'Fred'
- 用shell查找某目录下的最大文件(转)
这是一个很有趣的问题,因为作为一个shell菜鸟,我第一时间是没有任何想法的.心里纳闷为什么这样的操作Linux居然没有直接的命令实现这样的查询. 很自然地,第一感觉就是用awk去实现,因为菜鸟我看a ...
- 基于windows api实现的共享锁/独占锁
众所周知,windows平台上实现线程同步.或者说资源的加锁与解锁的方法有内核事件.临界区.相互排斥量.信号量,甚至interlocked系列函数等多种手段. 可是在日常的编程中,我们使用这些手段对 ...