logo资料库

hadoop安装配置步骤超级详细.pdf

第1页 / 共53页
第2页 / 共53页
第3页 / 共53页
第4页 / 共53页
第5页 / 共53页
第6页 / 共53页
第7页 / 共53页
第8页 / 共53页
资料共53页,剩余部分请下载后查看
北京尚学堂提供 1、集群部署介绍 1.1 Hadoop简介 Hadoop 是 Apache 软件基金会旗下的一个开源分布式计算平台。以 Hadoop 分布式文件系统( HDFS , Hadoop Distributed Filesystem )和 MapReduce ( Google MapReduce 的开源实现)为 核心 的 Hadoop 为用户 提供了系统底层细节透明的分布式基础架构。 对于 Hadoop 的集群来讲,可以分成两大类角色: Master 和 Salve 。一个 HDFS 集 群是由一个 NameNode 和若干个 DataNode 组成的。其中 NameNode 作为主服务器, 管理文件系统的命名空间和客户端对文件系统的访问操作;集群中的 DataNode 管理存储 的数据。MapReduce 框架是由一个单独运行在主节点上的 JobTracker 和运行在每个集群 从节点的 TaskTracker 共同组成的。主节点负责调度构成一个作业的所有任务,这些任务 分布在不同的从节点上。 主节点监控它们的执行情况, 并且重新执行之前的失败任务; 从节 点仅负责由主节点指派的任务。 当一个 Job 被提交时, JobTracker 接收到提交作业和配置 信息之后,就会将配置信息等分发给从节点,同时调度任务并监控 TaskTracker 的执行。 从上面的介绍可以看出, HDFS 和 MapReduce 共同组成了 Hadoop 分布式系统体系 结构的核心。 HDFS 在集群上实现 分布式文件系统 ,MapReduce 在集群上实现了 分布式计 算和 任务处理 。 HDFS 在 MapReduce 任务处理过程中提供了文件操作和存储等支持, MapReduce 在 HDFS 的基础上实现了任务的分发、跟踪、执行等工作,并收集结果,二 者相互作用,完成了 Hadoop 分布式集群的主要任务。 1.2 环境说明 集群中包括 4 个节点:1 个 Master ,3 个 Salve ,节点之间局域网连接, 可以相互 ping 通,具体集群信息可以查看 " Hadoop 集群(第 2 期) " 。节点 IP 地址分布如下: 机器名称 IP 地址 Master.Hadoop 192http://www.bjsxt.com/html/cloud/ .168.1.2 Salve1.Hadoop 192.168.1.3 Salve2.Hadoop 192.168.1.4 Salve3.Hadoop 192.168.1.5 北京尚学堂 -cctv 央视网广告合作伙伴, 专业 IT 培训机构 , 口碑最好的 java 培训、,iOS 培训,android 培训,大数据培训, web 前端, 0 元入学,先就业后付款,平均就业薪水 9500 以上
四个节点上均是 CentOS6.0 系统,并且有一个相同的用户 hadoop 。 Master 机器主 要配置 NameNode 和 JobTracker 的角色, 负责总管分布式数据和分解任务的执行; 3 个 Salve 机器配置 DataNode 和 TaskTracker 的角色,负责分布式数据存储以及任务的执行。 其实应该还应该有 1 个 Master 机器,用来作为 备用 ,以防止 Master 服务器 宕机 ,还有一 个备用马上启用。后续经验积累一定阶段后 补上 一台备用 Master 机器。 1.3 网络配置 Hadoop 集群要按照 1.2 小节 表格所示进行配置,我们在 " Hadoop 集群(第 1 期) " 的 CentOS6.0 安装过程就按照提前规划好的主机名进行安装和配置。 如果实验室后来人在 安装系统时,没有配置好,不要紧, 没有必要重新安装, 在安装完系统之后仍然可以根据后 来的规划对机器的主机名进行修改。 下面的例子我们将以 Master 机器为例,即主机名为 "Master.Hadoop" , IP 为 "192.168.1.2" 进行一些主机名配置的相关操作。 其他的 Slave 机器以此为依据进行修改。 1)查看当前机器名称 用下面命令进行显示机器名称,如果跟规划的不一致,要按照下面进行修改。 hostname 上图中,用 "hostname" 查 "Master" 机器的名字为 "Master.Hadoop" ,与我们预先规 划的一致。 2)修改当前机器名称 假定 我们发现我们的机器的主机名不是我们想要的,通过对 " /etc/sysconfig/network " 文件修改其中 "HOSTNAME "后面的值, 改成我们规划的名称。 这个 "/etc/sysconfig/network "文件是定义 hostname 和是否利用网络的不接触网 络设备的对系统全体定义的文件。 设定形式 :设定值 = 值 "/etc/sysconfig/network" 的 设定项目 如下: NETWORKING 是否利用网络 北京尚学堂 -cctv 央视网广告合作伙伴, 专业 IT 培训机构 , 口碑最好的 java 培训、,iOS 培训,android 培训,大数据培训, web 前端, 0 元入学,先就业后付款,平均就业薪水 9500 以上
GATEWAY 默认网关 IPGATEWAYDEV 默认网关的接口名 HOSTNAME 主机名 DOMAIN 域名 用下面命令进行修改当前机器的主机名( 备注: 修改系统文件一般用 root 用户) vim /etc/sysconfig/network 通过上面的命令我们从 "/etc/sysconfig/network" 中找到 "HOSTNAME" 进行修改, 查看内容如下: 3 )修改当前机器 IP 假定 我们的机器连 IP 在当时安装机器时都没有配置好, 那此时我们需要对 " ifcfg-eth0 " 文件进行配置,该文件位于 " /etc/sysconfig/network-scripts " 文件夹下。 在这个目录下面, 存放的是网络接口 (网卡) 的制御脚本文件 (控制文件) ,ifcfg- eth0 是默认的第一个网络接口, 如果机器中有多个网络接口, 那么名字就将依此类推 ifcfg-eth1 , ifcfg-eth2 , ifcfg- eth3 , ……。 这里面的文件是相当重要的,涉及到网络能否正常工作。 设定形式:设定值 = 值 设定项目项目如下: DEVICE 接口名(设备 , 网卡) BOOTPROTO IP 的配置方法( static: 固定 IP , dhcpHCP , none: 手动) HWADDR MAC 地址 ONBOOT 系统启动的时候网络接口是否有效( yes/no ) 北京尚学堂 -cctv 央视网广告合作伙伴, 专业 IT 培训机构 , 口碑最好的 java 培训、,iOS 培训,android 培训,大数据培训, web 前端, 0 元入学,先就业后付款,平均就业薪水 9500 以上
TYPE 网络类型(通常是 Ethemet ) NETMASK 网络掩码 IPADDR IP 地址 IPV6INIT IPV6 是否有效( yes/no ) GATEWAY 默认网关 IP 地址 查看 "/etc/sysconfig/network-scripts/ifcfg-eth0" 内容,如果 IP 不复核,就行修改。 如果上图中 IP 与规划不相符,用下面命令进行修改: vim /etc/sysconfig/network-scripts/ifcgf-eth0 修改完之后可以用 "ifconfig" 进行查看。 4)配置 hosts 文件( 必须 ) 北京尚学堂 -cctv 央视网广告合作伙伴, 专业 IT 培训机构 , 口碑最好的 java 培训、,iOS 培训,android 培训,大数据培训, web 前端, 0 元入学,先就业后付款,平均就业薪水 9500 以上
"/etc/hosts " 这个文件是用来配置主机将用的 DNS 服务器信息,是记载 LAN 内接续 的各主机的对应 [HostName 和 IP] 用的。当用户在进行网络连接时,首先查找该文件,寻 找对应主机名(或域名)对应的 IP 地址。 我们要测试两台机器之间知否连通, 一般用 "ping 机器的 IP" ,如果想用 "ping 机器的 主机名 "发现找不见该名称的机器,解决的办法就是修改 " /etc/hosts "这个文件,通过把 LAN 内的各主机的 IP 地址和 HostName 的 一一对应 写入这个文件的时候,就可以解决问 题。 例如:机器为 "Master.Hadoop:192.168.1.2" 对机器为 "Salve1.Hadoop:192.168.1.3" 用命令 "ping" 记性连接测试。测试结果如下: 从上图中的值,直接对 IP 地址进行测试,能够 ping 通,但是对主机名进行测试,发 现没有 ping 通,提示 "unknown host —— 未知主机 ",这时查看 "Master.Hadoop" 的 "/etc/hosts" 文件内容。 发现里面没有 "192.168.1.3 Slave1.Hadoop" 内容,故而本机器是无法对机器的主机 名为 "Slave1.Hadoop" 解析。 在进行 Hadoop 集群 配置中, 需要在 "/etc/hosts" 文件中添加集群中所有机器的 IP 与 主机名,这样 Master 与所有的 Slave 机器之间不仅可以通过 IP 进行通信,而且还可以通 过主机名进行通信。所以在所有的机器上的 "/etc/hosts" 文件 末尾 中都要添加如下内容: 192.168.1.2 Master.Hadoop 192.168.1.3 Slave1.Hadoop 北京尚学堂 -cctv 央视网广告合作伙伴, 专业 IT 培训机构 , 口碑最好的 java 培训、,iOS 培训,android 培训,大数据培训, web 前端, 0 元入学,先就业后付款,平均就业薪水 9500 以上
192.168.1.4 Slave2.Hadoop 192.168.1.5 Slave3.Hadoop 用以下命令进行添加: vim /etc/hosts 添加结果如下: 现在我们在进行对机器为 "Slave1.Hadoop" 的主机名进行 ping 通测试,看是否能测 试成功。 从上图中我们已经能用主机名进行 ping 通了,说明我们刚才添加的内容,在局域网内 能进行 DNS 解析了, 那么现在剩下的事儿就是在其余的 Slave 机器上进行相同的配置。 然 后进行测试。( 备注:当设置 SSH 无密码验证后, 可以 "scp" 进行复制, 然后把原来的 "hosts" 文件执行覆盖即可。) 1.4 所需软件 1 )JDK 软件 下载地址: http://www.oracle.com/technetwork/java/javase/index.html 北京尚学堂 -cctv 央视网广告合作伙伴, 专业 IT 培训机构 , 口碑最好的 java 培训、,iOS 培训,android 培训,大数据培训, web 前端, 0 元入学,先就业后付款,平均就业薪水 9500 以上
JDK 版本: jdk-6u31-linux-i586.bin 2 )Hadoop 软件 下载地址: http://hadoop.apache.org/common/releases.html Hadoop 版本: hadoop-1.0.0.tar.gz 1.5 VSFTP 上传 在 "Hadoop 集群(第 3 期) " 讲了 VSFTP 的安装及配置,如果没有安装 VSFTP 可以 按照该文档进行安装。 如果安装好了, 就可以通过 FlashFXP.exe 软件把我们下载的 JDK6.0 和 Hadoop1.0 软件上传到 " Master.Hadoop:192.168.1.2 "服务器上。 刚才我们用一般用户 ( hadoop )通过 FlashFXP 软件把所需的两个软件上传了跟目下, 我们通过命令查看下一下是否已经上传了。 北京尚学堂 -cctv 央视网广告合作伙伴, 专业 IT 培训机构 , 口碑最好的 java 培训、,iOS 培训,android 培训,大数据培训, web 前端, 0 元入学,先就业后付款,平均就业薪水 9500 以上
从图中,我们的所需软件已经准备好了。 2、 SSH 无密码验证配置 Hadoop 运行过程中需要管理远端 Hadoop 守护进程,在 Hadoop 启动以后, NameNode 是通过 SSH ( Secure Shell )来启动和停止各个 DataNode 上的各种守护进 程的。这就必须在节点之间执行指令的时候是不需要输入密码的形式, 故我们需要配置 SSH 运用无密码公钥认证的形式,这样 NameNode 使用 SSH 无密码登录并启动 DataName 进程,同样原理, DataNode 上也能使用 SSH 无密码登录到 NameNode 。 2.1 安装和启动 SSH 协议 在 "Hadoop 集群 (第 1 期) "安装 CentOS6.0 时, 我们选择了一些基本安装包, 所以 我们需要两个服务: ssh 和 rsync 已经安装了。可以通过下面命令查看结果显示如下: rpm –qa | grep openssh rpm –qa | grep rsync 假设 没有安装 ssh 和 rsync ,可以通过下面命令进行安装。 yum install ssh 安装 SSH 协议 yum install rsync ( rsync 是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台 主机间的文件) service sshd restart 启动服务 确保所有的服务器都安装, 上面命令执行完毕, 各台机器之间可以通过密码验证相互登。 2.2 配置 Master 无密码登录所有 Salve 1) SSH 无密码原理 Master ( NameNode | JobTracker )作为客户端,要实现无密码公钥认证,连接到 服务器 Salve (DataNode | Tasktracker )上时,需要在 Master 上生成一个密钥对,包 北京尚学堂 -cctv 央视网广告合作伙伴, 专业 IT 培训机构 , 口碑最好的 java 培训、,iOS 培训,android 培训,大数据培训, web 前端, 0 元入学,先就业后付款,平均就业薪水 9500 以上
分享到:
收藏