1.   下载hadoop 压缩包,   拷贝到 /usr/hadoop目录下   tar -zxvf  hadoop-2.7.1.tar.gz,

  比如:

  127.0.0.1       localhost

  192.168.31.129  hadoop2
  192.168.31.246 hadoop3
2.   进入  /usr/hadoop/hadoop-2.7.1/etc/hadoop      修改hadoop配置文件    hadoop-env.sh  

   1)    找到   export JAVA_HOME= ${JAVA_HOME}     ,   在底行模式输入(带:),     :echo   $JAVA_HOME     或命令模式下输入 echo $JAVA_HOME 查看当前

     JAVA_HOME变量具体值,   然后将查看结果替换成如下:

 export JAVA_HOME= /usr/java/jdk1.7.0_71

   2)  配置SSH无密码登陆 ,

1. 在hadoop1中使用root用户输入以下命令设置本地无密码登陆
  $ ssh-keygen  一路回车即可
  $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 这样就可以本机对本机进行ssh时免密了
2. 将公钥拷贝到其他机器上(hadoop2,hadoop3),
  $ scp id_rsa.pub root@hadoop2:~/.ssh/
3. 在hadoop2中将拷贝过来的公钥追加到 authorized_keys 文件中, 就可以实现 root 免密登录了

   $ cat id_rsa.pub >> ~/.ssh/authorized_keys

这样就可以在hadoop1中免密码登陆到hadoop2 和Hadoop3 中了

  4. 如果要普通用户之间可以进行免密登录,执行一下步骤

    4.1  在hadoop1 中切换成普通用户登录,  如cmcc用户登录

    4.2  执行 ssh-keygen  一路回车  这样就会在用户根目录中创建一个 .ssh 文件夹,  如:  /home/cmcc/.ssh

    4.3  进入目录 /home/cmcc/.ssh ,  同样将id_rsa.pub 追加到本机 authorized_keys

       $ cat id_rsa.pub >> authorized_keys
   4.4 拷贝到其他机器上, 只不过这次不能使用 root 拷贝
       $ scp id_dsa.pub cmcc@hadoop2:/home/cmcc/.ssh
   4.5 进入 hadoop2 中,进入目录 /home/cmcc/.ssh
   4.6 追加公钥到 authorized_keys 中
      $ cat id_rsa.pub >> ~/.ssh/authorized_keys
 

3. 修改 slaves

hadoop2
hadoop3

3.  如2.   修改core-site.xml文件

<configuration>
     <property>
<name>fs.defaultFS</name>
<value>hdfs://127.0.0.1:9000</value>
</property>
     <property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/tmp</value>
</property>
</configuration>

4. 修SecondaryNameNode 在那台机器上启动

1.  修改 masters 文件(添加主机名列表),  添加 hadoop2  (如果没有这个文件就新建)
2. 修改 hdfs-site.xml 文件 添加:
<property>
  <name>dfs.namenode.secondary.http-address</name>
<value>hadoop2:50090</value>
</property>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
   </property>

5.  如2.    修改hdfs-site.xml

<configuration>
     <!-- 配副本的数量, 如果副本是3 那么包括自己共3份 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

6.  如2.  修改 mapred-site.xml  ,   当前文件夹中没有 这个文件  但是有 mapred-site.xml.template,   所以拷贝一份,  进行修改  cp mapred-site.xml.template mapred-site.xml

<configuration>
     <!-- 告诉 hadoop 以后MR 运行在yarn 上-->
     <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

7.  如2.   修改yarn-site.xml

<configuration>
     <!-- NodeManger 获取数据的方式是 shuffle 方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
     <!-- 指定(resourcemanager) 的地址-->
     <property>
           <name>yarn.resourcemanager.webapp.address</name>
           <value>127.0.0.1</value>
     </property>
</configuration>

8.  将 hadoop 添加到环境变量, 运行  vim /etc/profile   添加 HADOOP_HOME 变量,  并且将它加入  path 中    如下:

export HADOOP_HOME=/usr/hadoop/hadoop-2.7.1

 export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

9.  运行  source /etc/profile   ,   使环境变量生效

10.   初始化 HDFS (格式化文件系统)  ,  本命令会出现namenode进程无法启动,   查询了好多资料也不能启动,  最后使用  hadoop namenode -format (已过时)来

  进行格式化,成功启动!!(进入bin目录下,   执行  ./hadoop namenode -format  进行格式化)

hdfs namenode –format

11.  将hadoop1 中的配置文件拷贝到 hadoop2   hadoop3 机器上,(进入 /home/hadoop/hadoop-2.7.1/etc/hadoop )下,执行  

scp ./* root@hadoop3:/home/hadoop/hadoop-2.7.1/etc/hadoop

12.  进入  /usr/hadoop/hadoop-2.7.1/sbin   目录中,启动 HDFS和YARN   执行  ./start-all.sh    等待执行完毕,    再执行   jps  出现如下结果,  说明安装成功(确实启动项,

  查看  /usr/hadoop/hadoop-2.7.1/logs  中日志)

29162 NodeManager
28845 SecondaryNameNode
29025 ResourceManager
29492 Jps
28581 DataNode
28435 NameNode

13.   但是当前 ./start-all.sh  已经过时,  使用   ./start-dfs.sh    ./start-yarn.sh   分开启动,

14.   在浏览器中输入如下地址进行验证 (192.168.88.128 为本机地址)

http://192.168.88.128:50070  (hdfs 管理界面)   
  1)如果看不到活着的 datanode, 可以试图关闭防火墙:
  
  2) 设置host, vi /etc/hosts, 将所有主机名和ip地址都写好
http://192.168.88.128:8088 (yarn 管理界面)

15.  修改 hadoop 中 ssh 链接端口 vi hadoop-env.sh

  export HADOOP_SSH_OPTS="-p 16022"

16.参考: https://segmentfault.com/a/1190000009580427

hadoop 配置安装的更多相关文章

  1. Hadoop配置安装手册

    本次Hadoop集群安装一共使用四个节点,各节点IP如下: Master 172.22.120.191 Slave1 172.22.120.192 Slave2 172.22.120.193 Slav ...

  2. Hadoop单机版安装,配置,运行

    Hadoop是最近非常流行的东东啦,但是乍一看都觉得是集群的东东,其实在单机版上安装Hadoop也是可以的,并且安装好以后可以很方便的进行程序的调试,调试好程序以后再丢到集群中,放心的算吧,呵呵.. ...

  3. hadoop的安装和配置(三)完全分布式模式

    博主会用三篇文章为大家详细说明hadoop的三种模式: 本地模式 伪分布模式 完全分布模式 完全分布式模式: 前面已经说了本地模式和伪分布模式,这两种在hadoop的应用中并不用于实际,因为几乎没人会 ...

  4. hadoop的安装和配置(二)伪分布模式

    博主会用三篇文章为大家详细的说明hadoop的三种模式: 本地模式 伪分布模式 完全分布模式 伪分布式模式: 这篇为大家带来hadoop的伪分布模式: 从最简单的方面来说,伪分布模式就是在本地模式上修 ...

  5. hadoop的安装和配置(一)本地模式

    博主会用三篇文章来为大家详细的说明hadoop的三种模式: 本地模式 伪分布模式 完全分布模式 本地模式: 思路走向 |--------------------| | ①:配置Java环境  | | ...

  6. Hadoop配置第2节-JDK的安装

    Hadoop配置-JDK的安装 总体目标:完成zookeeper+Hadoop+Hbase 整合平台搭建   进度:1:集群网络属性配置2:集群免密码登陆配置3:JDK的安装4:Zookeeper的安 ...

  7. Hadoop HDFS安装、环境配置

    hadoop安装 进入Xftp将hadoop-2.7.3.tar.gz 复制到自己的虚拟机系统下的放软件的地方,我的是/soft/software 在虚拟机系统装软件文件里,进行解压缩并重命名 进入p ...

  8. 在虚拟机上配置安装hadoop集群

    原本以为有大神已经总结的很清楚了,就不自己在写了, 但是在自己安装的过程中还是出现了一些问题, 所以打算以自己的方式重新总结一下.    参考https://blog.csdn.net/hliq539 ...

  9. Ubuntu16.04 下 hadoop的安装与配置(伪分布式环境)

    一.准备 1.1创建hadoop用户 $ sudo useradd -m hadoop -s /bin/bash #创建hadoop用户,并使用/bin/bash作为shell $ sudo pass ...

随机推荐

  1. Python3 使用requests库读取本地保存的cookie文件实现免登录访问

    1.  读取selenium模块保存的本地cookie文件来访问知乎 读取http://www.cnblogs.com/strivepy/p/9233389.html保存的本地cookie来访问知乎的 ...

  2. 原生ajax访问服务器所展现的现象

    <!DOCTYPE html><html><head><meta charset="UTF-8"><title>ajax ...

  3. Word文件乱码XML

    文章介绍 一个朋友写的文档因为异常关机,导致全部文件变成了xml的乱码,正好帮他解决了,感觉这些或许有些帮助,就先记录下来了. 破损文件介绍 文件破坏之后,打开全是xml格式的文档,结构如下. 恢复过 ...

  4. 编写高质量代码改善C#程序的157个建议——建议52:及时释放资源

    建议52:及时释放资源 垃圾回收机制自动为我们隐式地回收了资源(垃圾回收器会自动调用终结器),那我们为什么要主动释放资源呢? private void buttonOpen_Click(object ...

  5. web端访问文件没有权限的问题

    背景 : ftp的PHP项目中的某些文件没有写入的权限..系统报注意错误!!! 原因 : 一般情况下,web端访问网站一般使用的是WWW权限(有限制的权限组)去访问, 但是我们编程开发的时候, 有可能 ...

  6. Vue 兄弟组件通过事件广播传递数据

    非父子组件传值 通过事件广播实现非父子组件传值1.新建js,引入并实例化Vue import Vue from 'vue' var VueEvent = new Vue(); export defau ...

  7. c++类 初始化另一对象

    Cbox类中对象a  可以直接赋值给对象b,无论类中数据成员是私有还是共有.且在创建a时调用了一次构造函数,b调用的是另外的默认构造函数: #include<iostream> using ...

  8. iOS应用审核时间注意点

    1.重大节假日不审核 美国重大节假日期间不审核,具体审核时间查看官方通知

  9. python-webdriver库之Keys

    在使用webdriver时,有些时候我们需要做一些键盘上特殊键的操作,例如backspace,ctrl,shift等,这个时候就需要用到webdriver.common.keys.Keys方法来进行 ...

  10. php 中 include 与 require 的区别

    以下内容转自:https://blog.csdn.net/hsd2012/article/details/51089785 网上太多关于php中include与require区别.其实说的都是经不起验 ...