hadoop安装配置文档.docx
文本预览下载声明
Hadoop 安装配置1.集群部署集群的部署情况涉及到系统的权限以及添加hadoop用户操作,因此用“root”身份进行比较合适。1.1环境说明集群中包括3个节点:1个Master,2个Salve,节点之间局域网连接,可以相互ping通。节点IP地址分布如下:机器名称IP地址Master.HadoopSlave1.HadoopSlave2.Hadoop3个节点上均是CentOS6.0系统,并且创建一个相同的用户hadoop。 以机器为例,创建hadoop用户的命令为:[root@Master hadoop]# groupadd hadoop (创建hadoop用户组hadoop)[root@Master hadoop]# useradd -g hadoop hadoop(创建hadoop用户,并将其加入hadoop组内)[root@Master hadoop]# passwd hadoop (为hadoop用户创建密码)linux系统中,对用户的权限设计完善。root用户拥有最高权限,普通用户(如hadoop)权限较低。涉及系统的操作,用hadoop用户可能无法执行,这就需要在hadoop用户和root用户之间进行切换。从root用户切换到hadoop用户的命令为:su hadoop,不需要输入密码直接切换。从hadoop用户切换到root用户的命令为:su root,需要输入密码,验证后才能切换。普通用户要获取root的权限,也可以不su root,而是在命令前加上sudo字符,具体用法,可参考互联网。1.2 网络配置下面的例子我们将以Master机器为例,即主机名为Master.Hadoop,IP为进行一些主机名配置的相关操作。其他的Slave机器以此为依据进行修改。1)修改当前机器名称 假定我们发现我们的机器的主机名不是我们想要的,通过对/etc/sysconfig/network文件修改其中HOSTNAME后面的值,改成我们规划的名称。通过上面的命令我们从/etc/sysconfig/network中找到HOSTNAME进行修改,查看内容如下:其他机器也变为对应的机器名称Slave1.Hadoop和Slave2.Hadoop2)修改当前机器IP 假定我们的机器连IP在当时安装机器时都没有配置好,那此时我们需要对ifcfg-eth0文件进行配置,该文件位于/etc/sysconfig/network-scripts文件夹下。查看/etc/sysconfig/network-scripts/ifcfg-eth0内容,如果IP不与环境说明的不符合,就行修改。如果上图中IP与规划不相符,用下面命令进行修改:vim /etc/sysconfig/network-scripts/ifcgf-eth0修改完之后可以用ifconfig进行查看。3)配置hosts文件(必须) /etc/hosts这个文件是用来配置主机将用的DNS服务器信息,是记载LAN内接续的各主机的对应[HostName和IP]用的。当用户在进行网络连接时,首先查找该文件,寻找对应主机名(或域名)对应的IP地址。我们要测试两台机器之间知否连通,一般用ping 机器的IP,如果想用ping 机器的主机名发现找不见该名称的机器,解决的办法就是修改/etc/hosts这个文件,通过把LAN内的各主机的IP地址和HostName的一一对应写入这个文件的时候,就可以解决问题。例如:机器为Master.Hadoop:对机器为Salve1.Hadoop:用命令ping记性连接测试。测试结果如下:从上图中的值,直接对IP地址进行测试,能够ping通,但是对主机名进行测试,发现没有ping通,提示unknown host——未知主机,这时查看Master.Hadoop的/etc/hosts文件内容。发现里面没有 Slave1.Hadoop内容,故而本机器是无法对机器的主机名为Slave1.Hadoop 解析。在进行Hadoop集群配置中,需要在/etc/hosts文件中添加集群中所有机器的IP与主机名,这样Master与所有的Slave机器之间不仅可以通过IP进行通信,而且还可以通过主机名进行通信。所以在所有的机器上的/etc/hosts文件末尾中都要添加如下内容: Master.Hadoop Slave1.Hadoop Slave2.Hadoop Slave3.Hadoop用以下命令进行添加:vim /etc/hosts添加结果如下:现在我们在进行对机器为Slave1.Hadoop的主机名进行ping通测试,看是否能测试成功。从上图中我们已经能用主机名进行ping通了,说明我们刚才添加的内容,在局域网内能进行DNS解析了,那么现在剩下的事儿就是在其余的Slave机器上进行相同的配置
显示全部