ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:574.54KB ,
资源ID:4944237      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4944237.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(hadoop 2配置.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

hadoop 2配置.docx

1、hadoop 2配置hadoop 2.0 详细配置教程 作者:杨鑫奇PS:文章有部分参考资料来自网上,并经过实践后写出,有什么问题欢迎大家联系我。update: 20130518大家可以尝试下Ambari来配置Hadoop的相关环境快速的部署Hadoop,Hbase和Hive等并提供Ganglia和Nagios的监控功能,强烈推荐使用.Hadoop 2.0集群配置详细教程前言Hadoop2.0介绍Hadoop是 apache 的开源 项目,开发的主要目的是为了构建可靠,可拓展 scalable ,分布式的系 统, hadoop 是一系列的子工程的 总和,其中包含1. hadoop common

2、 : 为其他项目提供基础设施2. HDFS :分布式的文件系 统3. MapReduce : A software framework for distributed processing of large data sets on compute clusters 。一个 简化分布式编程的框架。4. 其他工程包含: Avro( 序列化系 统 ) , Cassandra( 数据 库项目 ) 等 Hadoop,以 Hadoop 分布式文件系统( HDFS ,Hadoop Distributed Filesystem )和 MapReduce ( Google MapReduce 的开源实现)为核

3、心的 Hadoop 为用户提供了系统底层细节透明的分布式基础架构。 对于 Hadoop 的集群来讲,可以分成两大类角色: Master 和 Salve 。一个 HDFS 集群是由一个 NameNode 和若干个 DataNode 组成的。其中 NameNode 作为主服务器,管理文件系统的命名空间和客户端对文件系统的访问操作;集群中的 DataNode 管理存 储的数据。 MapReduce 框架是由一个 单独运行在主节点上的 JobTracker 和 运行在每个集群从节点的 TaskTracker 共同 组成的。主节点负责调度构成一个作业的所有任务,这些任务分布在不同的从节点上。主节点监控它

4、们的执行情况,并且重新执行之前的失败任务;从节点仅负责由主节点指派的任务。当一个 Job 被提交 时, JobTracker 接收到提交作 业和配置信息之后,就会将配置信息等分发给从节点,同时调度任务并监控 TaskTracker 的 执行。从上面的介 绍可以看出, HDFS 和 MapReduce 共同 组成了 Hadoop 分布式系 统体系结构的核心。 HDFS 在集群上 实现分布式文件系统, MapReduce 在集群上 实现了分布式计算和任务处理。 HDFS 在 MapReduce 任 务处理过程中提供了文件操作和存储等支持, MapReduce 在 HDFS 的基 础上实现了任务的分

5、发、跟踪、执行等工作,并收集结果,二者相互作用,完成了 Hadoop 分布式集群的主要任 务。为什么要使用2.0版本(来自董的博客)该版本提供了一些新的、重要的功能,包括: HDFS HA ,当前只能 实现人工切换。Hadoop HA 分支 merge 进了该版本,并支持热切,主要特性包括:( 1 ) NN 配置文件有改变,使得配置更加简单( 2 ) NameNode 分 为两种角色: active NN 与 standby NN , active NN 对外提供读写服务,一旦出现故障,便切换到 standby NN 。( 3 ) 支持 Client 端重定向,也就是 说,当 active N

6、N 切 换到 standby NN 过程中, Client 端所有的 进行时操作都可以无缝透明重定向到 standby NN 上, Client 自己感 觉不到切换过程。( 4 ) DN 同 时向 active NN 和 standby NN 汇报 block 信息。具体 设计文档参考: https:/issues.apache.org/jira/browse/HDFS-1623当前 Hadoop HA 只能 实现人工切换,该功能在某些情况下非常有用,比如,对 NN 进行升级时,先将 NN 切 换到 standby NN ,并 对之前的 active NN 进行升级,升级完成后,再将 NN 切

7、 换至升级后的 NN 上,然后 对 standby NN 进行升级。 YARN ,下一代 MapReduce 这是一套资源统一管理和调度平台,可管理各种计算框架,包括 MapReduce 、 Spark 、 MPI 等。YARN 是一套 资源统一管理和调度平台,可管理各种计算框架,包括 MapReduce , Spark , MPI 等。尽管它是完全重写而成,但其思想是从 MapReduce 衍化而来的,并克服了它在 扩展性和容错性等方面的众多不足。具体参考:http:/hadoop.apache.org/common/docs/r0.23.0/hadoop-yarn/hadoop-yarn-

8、site/YARN.html HDFS Federation ,允 许 HDFS 中存在多个 NameNode ,且每个 NameNode 分管一部分目 录,而 DataNode 不 变,进而缩小了故障带来的影响范围,并起到一定的隔离作用。传统 HDFS 是 master/slave 结构,其中, master (也就是 NameNode )需要存 储所有文件系统的元数据信息,且所有文件存储操作均需要访问多次 NameNode ,因而 NameNode 成 为制约扩展性的主要瓶颈所在。为了解决该问题,引入了 HDFS Federation ,允 许 HDFS 中存在多个 NameNode ,且

9、每个 NameNode 分管一部分目 录,而 DataNode 不 变,也就是 “ 从中央集权 专政变为各个地方自治 ” , 进而缩小了故障带来的影响范围,并起到一定的隔离作用。具体参考:http:/dongxicheng.org/mapreduce-nextgen/nextgen-mapreduce-introduction/ 基准性能测试该版本中为 HDFS 和 YARN 添加了性能的基准 测试集,其中 HDFS 测试包括:( 1 ) dfsio 基准 测试 HDFS I/O 读写性能( 2 ) slive 基准 测试 NameNode 内部操作的性能( 3 ) scan 基准 测试 Ma

10、pReduce 作 业访问 HDFS 的 I/O 性能( 4 ) shuffle 基准 测试 shuffle 阶段性能( 5 ) compression 基准 测试 MapReduce 作 业中间结果和最终结果的压缩性能( 6 ) gridmix-V3 基准 测试集群吞吐率YARN 测试包括 :( 1 ) ApplicationMaster 扩展性基准测试主要 测试调度 task/container 的性能。与 1.0 版本比 较,大约快 2 倍。( 2 ) ApplicationMaster 恢复性基准 测试测试 YARN 重 启后,作业恢复速度。稍微解释一下 ApplicationMast

11、er 恢复作 业的功能:在作业执行过程中, Application Master 会不断地将作 业运行状态保存到磁盘上,比如哪些任务运行完成,哪些未完成等,这样,一旦集群重启或者 master 挂掉,重 启后,可复原各个作业的状态,并只需重新运行未运行完成的哪些任务。( 3 ) ResourceManager 扩展性基准测试通 过不断向 Hadoop 集群中添加 节点测试 RM 的 扩展性。( 4 ) 小作 业基准测试专门测试批量小作业的吞吐率具体参考: 通过 protobufs 来提供HDFS 和YARN 的兼容性Wire-compatibility for both HDFS & YARN

12、Hadoop RPC采用了Hadoop自己的一套序列化框架 对 各种 对 象 进 行序列化反序列,但存在一个 问题 : 扩 展性差,很 难 添加新的数据类型同 时 保 证 版本兼容性。 为 此,Hadoop 2.0将数据类型模 块 从RPC中独立出来,成 为 一个独立的可插拔模 块 , 这样 允 许 用 户 根据个人 爱 好使用各种序列化/反序列化框架,比如thrift,arvo,protocal Buffer等,默 认 情况采用Protocal Buffer。除了以上五个特性外, 还 有两个非常重要的特性正在研 发 中,分别是: HDFS快照用 户 可在任意 时间对 HDFS做快照, 这样

13、,在HDFS出 现 故障 时 ,可将数据恢复到某个 时间 点的状 态 。具体参考: HDFS HA自动 切换前面介 绍 的第一个功能“HDFS HA”当前只能 实现 人工切 换 ,也就是 说 ,管理 员运 行某个命令,使得acitve NN切 换 到standby NN上。以后将支持自 动 切 换 ,也就是 说 , 监 控模 块 可 检测 出active NN何 时 出 现 故障,并自 动 将之切 换 到standby NN上, 这样 可大大 较 小Hadoop集群 运维 人 员 的工作量。具体参考:http:/s.apache.org/hdfs-autofailover准备机器准备物理机器

14、总 共4台,想配置基于物理机的hadoop集群中包括 4 个 节点: 1 个 Master , 3 个 Salve , 节点之间局域网连接,可以相互 ping 通Ip分布 为192.168.1.201 hadoop1192.168.1.202 hadoop2192.168.1.203 hadoop3192.168.1.204 hadoop4操作系 统为 CentOS 5.6 64bitMaster机器主要配置NameNode和JobTracker的角色, 负责总 管分布式数据和分解任 务 的 执 行;3个Salve机器配置DataNode和TaskTracker的角色, 负责 分布式数据存 储

15、 以及任 务 的 执 行。其 实应该还应该 有1个Master机器,用来作 为备 用,以防止Master服 务 器宕机, 还 有一个 备 用 马 上 启 用。后 续经验积 累一定 阶 段后 补 上一台 备 用Master机器。创建账户使用root登 陆 所有机器后,所有的机器都 创建 hadoop 用 户useradd hadooppasswd hadoop此 时 在 /home/ 下就会生成一个 hadoop 目 录 ,目 录 路径 为 /home/hadoop创建相关的目录定 义 需要数据及目 录 的存放路径定 义 代 码及工具 存放的路径mkdir -p /home/hadoop/sou

16、rcemkdir -p /home/hadoop/tools定 义 数据 节 点存放的路径到跟目 录 下的hadoop文件夹, 这 里是数据 节 点存放目 录 需要有足够的空 间 存放mkdir -p /hadoop/hdfsmkdir -p /hadoop/tmpmkdir -p /hadoop/log设 置可写权限chmod -R 777 /hadoop定 义 java安装程序路径mkdir -p /usr/java安装安装JDK在以上 连接 下 载 linux 64 下的 jdk 的安装文件: jdk-6u32-linux-x64.bin1 ,将下 载好的 jdk-6u32-linux-

17、x64.bin 通 过 SSH 上 传到 /usr/java 下scp -r ./jdk-6u32-linux-x64.bin roothadoop1:/usr/java2 , 进入 JDK 安装目 录 cd /usr/java 并且 执行 chmod +xjdk-6u32-linux-x64.bin3 , 执行 ./jdk-6u32-linux-x64.bin4 ,配置 环境变量,执行 cd /etc 命令后 执行 vi profile ,在行末尾添加export JAVA_HOME=/usr/java/jdk1.6.0_32export CLASSPATH=.:$JAVA_HOME/lib

18、/tools.jar:/lib/dt.jarexport PATH=$JAVA_HOME/bin:$PATH5 , 执行 chmod +x profile 将其 变成可执行文件6 , 执行 source profile 使其配置立即生效source /etc/profile7 , 执行 java -version 查看是否安装成功这个步骤所有机器都必须安装roothadoop1 bin# java -versionjava version 1.6.0_32Java(TM) SE Runtime Environment (build 1.6.0_32-b05)Java HotSpot(TM) 6

19、4-Bit Server VM (build 20.7-b02, mixed mode)修改主机名修改主机名,所有 节点均一样配置1 , 连接到主节点 192.168.1.201 ,修改 network , 执行 vim /etc/sysconfig/network ,修改 HOSTNAME=hadoop12 ,修改 hosts 文件, 执行 cd /etc 命令后 执行 vi hosts ,在行末尾添加 :192.168.1.201 hadoop1192.168.1.202 hadoop2192.168.1.203 hadoop3192.168.1.204 hadoop43 , 执行 hos

20、tname hadoop14 , 执行 exit 后重新 连接可看到主机名以修改 OK其他 节点 也修改主机名后添加 Host, 或者 host 文件可以在后面 执行 scp 覆盖操作配置SSH无密码登陆SSH 无密 码原理简介 :首先在 hadoop1 上生成一个密 钥对,包括一个公钥和一个私钥,并将公钥复制到所有的 slave(hadoop2-hadoop4) 上。然后当 master 通 过 SSH 连接 slave 时, slave 就会生成一个随机数并用 master 的公 钥对随机数进行加密,并发送给 master 。最后 master 收到加密数之后再用私 钥解密,并将解密数回传

21、给 slave , slave 确 认解密数无误之后就允许 master 不 输入密码进行连接了2 ,具体步 骤(在root用户和hadoop用户登陆情况下执行)1 、 执行命令 ssh-keygen -t rsa 之后一路回 车,查看刚生成的无密码钥对: cd .ssh 后 执行 ll2 、把 id_rsa.pub 追加到授权的 key 里面去。 执行命令 cat /.ssh/id_rsa.pub /.ssh/authorized_keys3 、修改权限: 执行 chmod 600 /.ssh/authorized_keys4 、确保 cat /etc/ssh/sshd_config 中存在

22、如下内容RSAAuthentication yesPubkeyAuthentication yesAuthorizedKeysFile .ssh/authorized_keys如需修改, 则在修改后执行重启 SSH 服 务命令使其生效 :service sshd restart5 、将公 钥复制到所有的 slave 机器上 :scp /.ssh/id_rsa.pub 192.168.1.203 : / 然后 输入 yes ,最后 输入 slave 机器的密 码6 、在 slave 机器上 创建 .ssh 文件夹 :mkdir /.ssh 然后 执行 chmod 700 /.ssh (若文件夹以

23、存在 则不需要创建)7 、追加到授权文件 authorized_keys 执行命令 :cat /id_rsa.pub /.ssh/authorized_keys 然后 执行 chmod 600 /.ssh/authorized_keys8 、重复第 4 步9 、 验证命令 : 在 master 机器上 执行 ssh 192.168.1.203 发现主机名由 hadoop1 变成 hadoop3 即成功,最后 删除 id_rsa.pub 文件 :rm -r id_rsa.pub按照以上步 骤分别配置 hadoop1,hadoop2,hadoop3,hadoop4 ,要求每个都可以无密 码登录源码

24、下载HADOOP 版本最新版本 hadoop-2.0.0-alpha 安装包 为 hadoop-2.0.0-alpha.tar.gz下 载官网地址 :http:/www.apache.org/dyn/closer.cgi/hadoop/common/下 载到 /home/hadoop/source 目录下wget http:/ftp.riken.jp/net/apache/hadoop/common/hadoop-2.0.0-alpha/hadoop-2.0.0-alpha.tar.gz解压目录tar zxvf hadoop-2.0.0-alpha.tar.gz创建软连接cd /home/ha

25、doopln -s /home/hadoop/source/hadoop-2.0.0-alpha/ ./hadoop源码配置修改/etc/profile配置 环境变量: vim /etc/profile添加export HADOOP_DEV_HOME=/home/hadoop/hadoopexport PATH=$PATH:$HADOOP_DEV_HOME/binexport PATH=$PATH:$HADOOP_DEV_HOME/sbinexport HADOOP_MAPARED_HOME=$HADOOP_DEV_HOMEexport HADOOP_COMMON_HOME=$HADOOP_D

26、EV_HOMEexport HADOOP_HDFS_HOME=$HADOOP_DEV_HOMEexport YARN_HOME=$HADOOP_DEV_HOMEexport HADOOP_CONF_DIR=$HADOOP_DEV_HOME/etc/hadoopexport HDFS_CONF_DIR=$HADOOP_DEV_HOME/etc/hadoopexport YARN_CONF_DIR=$HADOOP_DEV_HOME/etc/hadoop创建并配置hadoop-env.shvim /usr/hadoop/hadoop-2.0.0-alpha/etc/hadoop/hadoop-env

27、.sh 在末尾添加 export JAVA_HOME=/usr/java/jdk1.6.0_27core-site.xml在 configuration 节点 里面添加属性hadoop.tmp.dir/hadoop/tmpA base for other temporary directories.fs.default.namehdfs:/192.168.1.201:9000添加 httpfs 的 选项hadoop.proxyuser.root.hosts192.168.1.201hadoop.proxyuser.root.groups*slave配置vim /home/hadoop/hado

28、op/etc/hadoop/slaves 添加 slave 的 IP192.168.1.202192.168.1.203192.168.1.204配置hdfs-site.xmlvim /home/hadoop/hadoop/etc/hadoop/hdfs-site.xml添加 节点dfs.replication3dfs.namenode.name.dirfile:/hadoop/hdfs/nametruedfs.federation.nameservice.idns1dfs.namenode.backup.address.ns1192.168.1.201:50100dfs.namenode.backup.http-address.ns1192.168.1.201:50105dfs.federation.nameservicesns1

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1