欢迎投稿

今日深度:

Hadoop搭建,

Hadoop搭建,


这里以虚拟机为例,介绍Hadoop2.7.1的搭建过程

一、更新、升级、安装ssh服务

更新:sudo apt-get update (也可以先更改下软件源,在source.list里面,因为国内属网易163软件源最快,具体命令为sudo gedit/etc/apt/source.list)

升级:sudo apt-get upgrade

安装SSH服务

$ sudo apt-get install ssh

(如果安装不成功,可以打开hosts文件,删掉里面ipv6的地址,这个不是必要的,但是本次使用的虚拟机就是因为这个问题,原因尚不明确。虽然用的是虚拟机,但是也出现过很多bug)

查看是否安装好了SSH服务可以用命令:

which ssh

如下所示:


再用ssh localhost 查看是否可以运行。如上图所示,可以登陆本机,说明SSH安装成功。

二、安装JDK

我这里是在官网下载的jdk-7u79-linux-x64.tar.gz,因为我用的是64版本Ubuntu,由于是虚拟机,可以先在一台机器上安装好SSH、hadoop、JDK,然后再克隆,可以节省很多时间。

将jdk复制到所要安装的目录下,为了方便区分,我这里在usr目录下新建一个soft文件夹:

sudo mkdir/usr/soft

然后解压:

sudo tar–zxvf jdk-7u79-linux-x64.tar.gz


然后添加环境变量:

这里的environment相当于Windows下的系统全局变量。



在里面添加JAVA的路径:

JAVA_HOME=/usr/soft/jdk1.7.0_79

PATH后面加上:和其路径

PATH="....:/usr/soft/jdk1.7.0_79/bin"

先按ctrl + O 保存,回车,然后按ctrl+X退出编辑。


三、安装Hadoop

安装Hadoop的原理和java一样,先将Hadoop压缩包复制到/usr/soft目录下,这里前面要加上sudo,然后解压


解压完成后可以看到:


添加环境变量:

同安装java-JDK一样,sudo nano /etc/environment

然后添加:

HADOOP_INSTALL=/usr/soft/hadoop-2.7.1

:/usr/soft/hadoop-2.7.1/bin

:/usr/soft/hadoop-2.7.1/sbin

之所以添加bin和sbin目录,是因为用的2.7.1版本Hadoop,两个目录分别存放不同的执行文件,后面可以看到。


按ctrl + O 保存,回车,然后按ctrl+X退出编辑。

四、创建一个名为hadoop的用户和用户组,修改机器名(每台机器均要创建相同的用户名和密码)(可选,因为用的是虚拟机,只是用来装hadoop,所以没有必要再另外建一个用户,这里就用的本机用户,用户名为ma)

1、用nano打开etc下的sudoers文件

   $ sudo nano /etc/sudoers


在root ALL=(ALL)ALL 下面添加如下一行:

hadoopALL=(ALL) ALL

先按ctrl + O 保存,回车,然后按ctrl+X退出编辑。

 

此时可以通过命令java -version查看java是否安装成功

通过命令hadoop version查看hadoop是否安装成功(注意这里没有-)

如果没有也不用担心,重启一下就行了。


五、克隆虚拟机:

关闭虚拟机,选中虚拟机,邮件选择“管理”-“克隆”,然后选择完整克隆

一共克隆三台,比直接装虚拟机然后安装环境快多了。


六、修改机器名和/etc/hosts文件(每台机器都修改,hosts内容一样,所以只需要修改一台,然后复制粘贴)

这里先查询每台机子的IP地址,可以用ifconfig命令:

然后记下每个机子的IP


ma   192.168.255.133

sla1  192.168.255.135

sla2  192.168.255.134

sla3  192.168.255.136

然后添加到hosts文件中:

命令:

sudonano /etc/hosts


并删除里面的ipv6地址。

添加后先按ctrl + O 保存,回车,然后按ctrl+X退出编辑。

然后修改机器名:

$sudo nano /etc/hostname

(直接在里面输入机器名ma\sla1\sla2

对每台都要改。添加后先按ctrl + O 保存,回车,然后按ctrl+X退出编辑。

 

七、配置每台电脑无密码访问

首先在每台电脑上生成密钥:

$ssh-keygen -t rsa –P ‘’                  (生成RSA公钥,因为是无密码,注意这里是两个单引号)

 

注意:生成密钥的位置就在/home/ma/.ssh 这个文件夹下。.ssh是个隐藏文件夹,需要  ctrl+h 才能看到。

然后在每台电脑上生成密钥文档authorized_keys

$ cd  ~/.ssh

$ cp id_rsa.pub authorized_keys          (将RSA公钥id_rsa.pub存储为授权密钥文档authorized_keys)

然后将sla1 sla2 sla3的authorized_keys中的内容复制给ma:

可以先复制,再追加,也可以直接打开图形界面Alt+F7,再用鼠标复制粘贴即可。


scp authorized_keys ma:/tmp(sla完成)

sudo cat /tmp/authorized_keys >>~/.ssh/authorized_keys

最后cat一下是否都添加了

 

 

 

然后再通过scp命令复制给3个sla,命令不再赘述。

然后修改所有机器的authuorized_keys权限

$ chmod 644 authorized_keys            (修改密钥权限)


之后测试一下登陆slave机器

$ ssh sla1    

$ ssh sla2

第一次只需要按yes,之后直接无密码访问。

八、配置hadoop

1、             hadoop运行环境变量设置

先进入hadoop目录


$ sudo nanohadoop-env.sh

在里面添加java的目录

exportHADOOP_HOME= /usr/soft/jdk1.7.0_79

配置hadoop云计算系统设置文档

直接用nano命令,如core-site.xml则是:sudo nano core-site.xml,最后按ctrl + O 保存,回车,然后按ctrl+X退出编辑。

配置core-site.xml

<?xmlversion="1.0"?>

<!--core-site.xml -->

<configuration>

  <property>

    <name>fs.defaultFS</name>

    <value>hdfs://ma/</value>

  </property>

</configuration>

配置HDFS分布式文档系统设置文档——hdfs-site.xml

$ sudo nanohdfs-site.xml

 

<?xmlversion="1.0"?>

<!--hdfs-site.xml -->

<configuration>

    <property>

    <name>dfs.replication</name>

    <value>3</value>

  </property>

</configuration>

配置Map/Reduce程序设置文档­­——mapred-site.xml(这里没有mapred-site.xml文档,但是有mapred-site.xml.template,可以先复制一份,再改为mapred-site.xml)

$ sudo geditmapred-site.xml

<configuration>

    <property>

   <name>mapreduce.framework.name</name>

    <value>yarn</value>

  </property>

</configuration>

配置yarn:

<?xmlversion="1.0"?>

<!--yarn-site.xml -->

<configuration>

  <property>

   <name>yarn.resourcemanager.hostname</name>

    <value>ma</value>

  </property>

  <property>

   <name>yarn.nodemanager.aux-services</name>

   <value>mapreduce_shuffle</value>

  </property>

</configuration>

4、复制hadoop安装文件

$ scp –r/usr/soft/hadoop-2.7.1 sla1:/usr/soft/     (复制到sla1的/soft文件夹下)

$ scp –r/usr/soft/hadoop-2.7.1 sla2:/usr/soft/     (复制到sla2的/soft文件夹下)

$ scp –r/usr/soft/hadoop-2.7.1 sla3:/usr/soft/     (复制到sla3的/soft文件夹下)

 

九、集群搭建完成、启动hadoop云计算系统

设置到这里,就已经完成hadoop云计算平台系统的搭建工作了,现在可以直接启动这个拥有4个节点(master、slave1、slave2,slave3)的hadoop实验平台。

 

     

 

1、格式化hadoop

命令: hadoop namenode–format

2、启动ssh守护程序

$ start-all.sh

 

3、查看hadoop云计算系统运行状况

可以通过jps命令查看运行状况:

由图可知:这里有一个名称节点namenode,三个数据节点datanode,由于未分配辅助名称节点,所以secondaryNamenode还在主机ma上,三个数据节点已经分配给sla1、sla2、sla3三个主机。

说明hadoop的namenode和datanode已经启动成功。

4、关闭hadoop云计算系统

关闭只需要一条指令:

$ stop-all.sh                 

也可以分别关闭,只需要将all改成yarn或者namenode等。

以下是一些配置文件的内容及意义,未配置则选择默认配置。



注:<Hadoop搭建主要步骤>

安装jdk

安装hadoop

配置环境变量

[/etc/environment]

JAVA_HOME=/usr/soft/jdk1.7.0_79
PATH="....:/usr/soft/jdk1.7.0_79/bin"
[/etc/environmnet]
...
HADOOP_INSTALL=/usr/soft/hadoop-2.7.1
:/usr/soft/hadoop-2.7.1/bin
:/usr/soft/hadoop-2.7.1/sbin
【可选】:{
新建用户
修改权限拥有
}
安装ssh
配置ssh
修改host
ip
<取决于电脑IP>:

ma 192.168.255.133

sla1 192.168.255.135
sla2 192.168.255.134
sla3 192.168.255.136<名称自定>

无密码访问

配置hadoop
<!-- core-site.xml -->
<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://ma/</value>
  </property>
</configuration>

 A typical hdfs-site.xml 
<!-- hdfs-site.xml -->
<configuration>
    <property>
    <name>dfs.replication</name>
    <value>3</value>
  </property>

  <property>
<name>dfs.secondary.http.address</name>
<value>ma:50090</value>
    </property>
</configuration>

mapreduce:

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


A typical yarn-site.xml file
<?xml version="1.0"?>
<!-- yarn-site.xml -->
<configuration>
  <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>ma</value>
  </property>
 

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

格式化HDFS
启动
验证jps
source /etc/profile
单词计数
启动命令:
hadoop jar /usr/soft/hadoop-2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount /input /output

www.htsjk.Com true http://www.htsjk.com/Hadoop/41675.html NewsArticle Hadoop搭建, 这里以虚拟机为例,介绍Hadoop2.7.1的搭建过程 一、更新、升级、安装ssh服务 更新:sudo apt-get update (也可以先更改下软件源,在source.list里面,因为国内属网易163软件源最快,...
相关文章
    暂无相关文章
评论暂时关闭