hadoop集群搭建--CentOS部署Hadoop服务

在了解了Hadoop的相关知识后,接下来就是Hadoop环境的搭建,搭建Hadoop环境是正式学习大数据的开始,接下来就开始搭建环境!我们用到环境为:VMware 12+CentOS6.4

hadoop安装步骤大纲:

1、准备硬件(一台虚拟主机)

2、虚拟机装linux系统(这里我们装的是CentOS)

3、准备网络连接

4、配置linux系统

5、安装jdk和hadoop

下面详细介绍环境的搭建:

1)准备linux环境

运行 Vm ware安装目录的  vmnetcfg.exe  程序 ,  打开虚拟网络编辑器,

选择 VMnet1 仅主机模式,子网 IP 设为 192.168.1.0 ,子网掩码设为 255.255.255.0
说明: VMnet0 桥接模式, VMnet1 仅主机模式, VMnet8 NAT 模式。

回到windows --> 打开网络和共享中心 -> 更改适配器设置 -> 右键VMnet1 -> 属性 -> 双击IPv4 -> 设置windows的IP:192.168.1.88 子网掩码:255.255.255.0 -> 点击确定

在虚拟软件上 --My Computer -> 选中虚拟机 -> 右键 -> settings -> network adapter -> host only -> ok

 即:在 VMware 中,设置具体 Linux 实例的网络适配器为仅主机模式

2)修改linux相关配置 

2.1修改linux的IP地址

点击右上角网络连接小电脑图标,选择 vpn 连接 — > 配置 vpn — > 有线 — >Auto eth1 — >编辑
— > I p v4设置 — >手动 — > 192.168.1.101 ,255.255.255.0,192.168.1.1 — >应用

 

使用shell指令: service network restart重启网络使之生效

2.2修改主机名

使用su root 切换到root用户,使用shell指令:vi /etc/shsconfig/network打开文件把主机名修改为一下的形式:

NETWORKING=yes
HOSTNAME= BigData

这里补充一下:对linux不太熟悉的,打开文件后不知道怎么去修改,修改完,怎么去保存,具体方法是:打开文件后按i进行插入操作,完毕后按ESC退出插入操作然后使用:":wq!"进行保存退出(注意指令时没有双引号的),加“!”的作用的强制保存退出。

注意:主机名中不能含有下划线,主机名生效需要重启系统,查了一些资料目前好像没有别的方法,是用reboot重启系统

2.3 配置主机名与本地映射关系

使用:vi /etc/hosts打开本地文件,配置成以下形式

2.4 关闭防火墙

linux系统由于防火墙的存在,不便于进行远程访问,为了方便其他计算机对linux进行远程访问,所以要将防火墙关闭。

使用指令:service iptables stop把防火墙关闭,另外补充以下指令:

#查看防火墙状态
service iptables status
#关闭防火墙
service iptables stop
#查看防火墙开机启动状态
chkconfig iptables --list
#关闭防火墙开机启动
chkconfig iptables off

注意: 关闭防火墙后,重启linux系统才能生效。

2.5 在 windows 配置主机名和本地映射关系

 找到hosts 所在文件路径:C:\Windows\System32\drivers\etc \hosts用EditPlus或者其他工具打开,添加如下形式:

 

保存并退出,接下来再linux和window环境下测试是否正确。下面是测试指令:

ping BigData
ping 192.168.1.101

linux测试结果如下:

按ctrl+c停止传输

window环境下测试结果:

能够相互ping的通,证明网络连接正确。

 2.6 生成并配置生成ssh免登陆密钥

     由于hadoop在集群中的时候需要多个机器进行访问操作,一个集群存在成千上万的个节点,如果每次启动节点都需要输入密码,势必会很麻烦。linux机器之间使用ssh不需要用户名和密码。采用了数字签名RSA或者DSA来完成这个操作

#进入到我的home目录
cd ~/.ssh

ssh-keygen -t rsa (四个回车)
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
将公钥拷贝到要免登陆的机器上
ssh-copy-id BigData

3)安装jdk和 hadoop-2.4.1.tar.gz

 3.1安装jdk

     这里介绍常用的两个工具:SecureFXPortable和SecureCRTPortable,第一个用来将window下的相关文件上传到linux环境中,第二个用用来对linux进行操作,有了它就可以把linux虚拟机的桌面关闭了,这样可以节省资源。这两个工具通过域名和linux建立连接,从而达到远程操作linux的目的。

点击左上角第二个按钮,出现如图所示的窗口,输入主机名,用户名进行连接

然后将安装包拖到linux系统,下面一栏有进度显示,这样就把安装包传到了linux系统上。

 

最后使用:mkdir /software创建文件夹software,将jdk解压至software文件夹

解压指令:tar  -xzvf  / software /jdk-7u55-linux-i586.tar.gz -C / software

 3.2 将java添加至环境变量

在root用户下,使用指令:vi /etc/profile 在文件结尾添加:

export  JAVA_HOME=/ software /jdk1.7.0_55
export  PATH=$PATH:$JAVA_HOME/bin

然后使用:使用 source /etc/profile  命令  ,  使环境变量生效

测试java环境:java 和java -version 出现以下信息说明安装成功。

3.3安装hadoop

这里选用的是比较稳定的2.4.1版本,其他版本只能装大同小异,hadoop的安装和jdk的安装步骤几乎一样,先上传压缩包,然后进行解压,同理安装在software目录下。

指令:tar  -xzvf  / software /hadoop-2.4.1.tar.gz -C  / software

3.4 hadoop伪分布式环境配置

 

hadoop2.x的配置文件$HADOOP_HOME/etc/hadoop
伪分布式需要修改5个配置文件

1、配置hadoop环境变量

 使用指令:vi / software/hadoop-2.4.1/etc/hadoop/hadoop-env.sh打开文件添加:

export  JAVA_HOME= / software /jdk1.7.0_55

2、 修改  core-site.xml文件

指令:vi / software/hadoop-2.4.1/etc/hadoop/core-site.xml,打开后输入以下信息:

解释如下:

<!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://BigData:9000</value>
</property>
<!-- 指定hadoop运行时产生文件的存储目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/software/hadoop-2.4.1/tmp</value>
</property>

 3、修改 hdfs-site.xml文件

 指令:vi / software/hadoop-2.4.1/etc/hadoop/hdfs-site.xml打开文件,添加以下信息:

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

 这个文件的目的是指定文件副本的数量,由于现在只有一台机器,所以value值为1,将来如果有多台机器,那么value的值就不是1了。

4、修改  mapred-site.xml文件 ,

首先需要去掉 .template 后缀,指令:mv mapred-site.xml.template mapred-site.xml,然后使用指令:

  vi / software/hadoop-2.4.1/etc/hadoop/mapred-site.xml打开文件添加以下信息:

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

 目的是指定mr运行在yarn上

5、修改yarn-site.xml文件

 指令:vi / software/hadoop-2.4.1/etc/hadoop/yarn-site.xml

<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value> BigData </value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

解释

第一个property的作用是:指定YARN的老大(ResourceManager)的地址,第二个property的作用是:reducer获取数据的方式。

6、将hadoop添加至环境变量

使用指令:vi /etc/profile打开文件,添加以下信息:

export JAVA_HOME=/ software /jdk1.6.0_24
export HADOOP_HOME=/ software /hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
使用 source /etc/profile 命令 , 使环境变量生效

7、格式化 HDFS 文件系统

指令:hdfs namenode -format,目的是对namenode进行初始化

 3.5 环境测试

 找到start-all.sh,具体在/home/hadoop/software/hadoop-2.4.1/sbin这个目录下,进去里面有很多指令,如图所示:

执行指令:sh  start-all.sh,出现以下信息

启动的过程中,没有让输入密码,说明我们的ssh免密钥登陆也是正确的。

验证是否启动成功,执行指令jps,出现以下信息:

可以看到启动成功。

 最后用网址进行验证:分别输入

http://192.168.1.101:50070 (HDFS管理界面)

 


http://192.168.1.101:8088 (MR管理界面)

      至此,CentOS下搭建Hadoop服务已经完成,系统部署的过程中,与顺序无关,先那一步都可以,在搭建环境之前,需要学会在虚拟机上安装CentOS,这是前提工作,第一步完成后,再来搭建本文的环境就变得容易了。

 

posted @ 2017-05-02 15:03 我心自在 阅读(...) 评论(...) 编辑 收藏