彻底分布式Hadoop的搭建

前提工做:node

克隆2台虚拟机完成后:新的2台虚拟机,请务必依次修改3台虚拟机的ip地址和主机名称【建议三台主机名称依次叫作:master、node一、node2 】 上一篇博客web

(三台虚拟机都要开机)chrome

Hadoop2.6.0 的压缩包,这里我提供百度云,没有的能够进行下载shell

    连接:https://pan.baidu.com/s/1euN5AwSHHP-mqz4U_6ldEQ
    提取码:jh1m windows

一、设置主机名与ip的映射,修改配置文件命令:vi /etc/hosts浏览器

二、将hosts文件拷贝到node1和node2节点app

命令:ssh

scp /etc/hosts node1:/etc/hostswebapp

scp /etc/hosts node2:/etc/hostsoop

三、上述修改完成后,请依次重启三台虚拟机:重启命令:reboot

四、关闭防火墙(三台都要操做),使用命令:service iptables stop

五、关闭防火墙的自动启动(三台都要操做),使用命令:chkconfig iptables off

六、设置ssh免密码登陆(只在Master 这台主机操做

  主节点执行命令  ssh-keygen -t rsa     产生密钥 一直回车

  执行命令

七、将密钥拷贝到其余两个子节点,命令以下:

ssh-copy-id -i node1

ssh-copy-id -i node2

实现免密码登陆到子节点。

八、实现主节点master本地免密码登陆

首先进入到/root 命令:cd  /root

再进入进入到 ./.ssh目录下

命令:cd ./.ssh/

九、而后将公钥写入本地执行命令:

cat ./id_rsa.pub >> ./authorized_keys

如图

--------------------------------------------------------------------------如下操做都在master上进行-----------------------------------------------------------------------------------------------------------------------

十、将hadoop的jar包先上传到虚拟机/usr/local/soft目录下,主节点。可使用xshell拖拽

十一、解压。tar -zxvf hadoop-2.6.0.tar.gz 解压完后会出现 hadoop-2.6.0的目录

十二、修改master中hadoop的一个配置文件/usr/local/soft/etc/hadoop/slaves

 删除原来的全部内容,修改成以下(你的节点名称)

node1

node2

1三、修改hadoop的几个组件的配置文件 进入cd /usr/local/soft/hadoop-2.6.0/etc/hadoop 目录下(请必定要注意配置文件内容的格式,能够直接复制过去黏贴。不要随意改 !!!!!!!!)

* 修改hadoop-env.sh文件

加上一句:

export JAVA_HOME=/usr/local/soft/jdk1.8.0_171 (本身的jdk路径)

1四、修改 core-site.xml

将下面的配置参数加入进去修改为对应本身的

复制代码
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value> //这里的master是个人主机名
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/soft/hadoop-2.6.0/tmp</value> //你的Hadoop路径
</property>
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
</configuration>
复制代码

1五、修改 hdfs-site.xml 将dfs.replication设置为1  (由于我这里就只有一个主节点和两个子节点)

复制代码
<configuration>
<property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> </configuration>
复制代码

1六、修改文件yarn-site.xml

复制代码
 1 <configuration>
 2 <property>
 3 <name>yarn.resourcemanager.hostname</name>
 4 <value>master</value>                        //你的主机名
 5 </property>
 6 <property>
 7 <name>yarn.nodemanager.aux-services</name>
 8 <value>mapreduce_shuffle</value>
 9 </property>
10 <property>
11 <name>yarn.log-aggregation-enable</name>
12 <value>true</value>
13 </property>
14 <property>
15 <name>yarn.log-aggregation.retain-seconds</name>
16 <value>604800</value>
17 </property>
18 <property>  
19 <name>yarn.nodemanager.resource.memory-mb</name>  
20 <value>20480</value>  
21 </property>  
22 <property>  
23 <name>yarn.scheduler.minimum-allocation-mb</name>  
24 <value>2048</value>  
25 </property>  
26 <property>  
27 <name>yarn.nodemanager.vmem-pmem-ratio</name>  
28 <value>2.1</value>  
29 </property>  
30 </configuration>
复制代码

1七、(将mapred-site.xml.template 复制一份为 mapred-site.xml

命令:cp mapred-site.xml.template mapred-site.xml) 而后修改 mapred-site.xml

复制代码
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>  
<name>mapreduce.jobhistory.address</name>  
<value>master:10020</value>    //个人主节点名字叫master
</property>  
<property>  
<name>mapreduce.jobhistory.webapp.address</name>  
<value>master:19888</value>   //个人主节点名字叫master
</property> 
</configuration>
复制代码

1八、将hadoop的安装目录分别拷贝到其余子节点

 scp -r /usr/local/soft/hadoop-2.6.0  node1:/usr/local/soft/

 scp -r /usr/local/soft/hadoop-2.6.0  node2:/usr/local/soft/

1九、启动hadoop

首先看下hadoop-2.6.0目录下有没有tmp文件夹。

若是没有 执行一次格式化命令:

cd  /usr/local/soft/hadoop-2.6.0目录下

执行命令:

./bin/hdfs namenode -format

会生成tmp文件。

20、/usr/local/soft/hadoop-2.6.0目录下

  启动执行:./sbin/start-all.sh 

2一、启动完成后经过jps命令查看验证进程:jps

主节点进程为下面几个(下面是进程名称,不是命令):

Namenode

secondarnamenode

resourcemanager

2二、子节点进程 (在node1和node2上分别输入命令:jps)

datanode

nodenodemanager

2三、验证hdfs:

能够windows电脑登陆浏览器(强烈建议chrome浏览器)

地址:192.168.1.80:50070 (ip地址是master的地址)

看到下面页面证实 hdfs装好了

下图是我已经建立了一个hdfs上的目录,刚装好的hadoop应该是空的什么都没有

 

 

 

 

 

 

 

******* 若是第一次启动失败了,请从新检查配置文件或者哪里步骤少了。

再次重启的时候

1须要手动将每一个节点的tmp目录删除:

rm -rf /usr/local/soft/hadoop-2.6.0/tmp

而后执行将namenode格式化

2在主节点执行命令:

./bin/hdfs namenode -format

 

若是在put文件的过程当中出现了_COPYING_ could only be replicated to 0 nodes instead  of minReplication (=1).

的报错

1 格式化重来

2 若是不行,看下时间,防火墙

3 修改 hosts文件,把里面那两条删了

相关文章
相关标签/搜索