可参考此文档:hadoop(2.x)以hadoop2.2为例完全分布式最新高可靠安装文档(非常详细)http://www.aboutyun.com/thread-7684-1-1.html

步骤一:下载并安装JDK

JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

[root@master vmware-share-folder]# cp * /usr/local/src/

[root@master src]# chmod +x jdk-6u45-linux-x64.bin

[root@master src]# ./jdk-6u45-linux-x64.bin

完成后设置环境变量:

[root@master src]# vim /etc/profile.d/java.sh
export JAVA_HOME=/usr/local/src/jdk1.8.0_141/
export PATH=$PATH:$JAVA_HOME/bin

[root@master src]# source /etc/profile.d/java.sh

[root@slave1 hadoop]# java -version
java version "1.8.0_141"
Java(TM) SE Runtime Environment (build 1.8.0_141-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.141-b15, mixed mode)

表示JDK安装成功!!!!

在slave1和slave2做同样的操作:      如果没有么有scp 命令:yum install -y openssh-clients openssh

[root@master src]# scp -r jdk1.8.0_141 slave1:/usr/local/src/

[root@master src]# scp -r jdk1.8.0_141 slave2:/usr/local/src/

之后操作如同master即可!!!!!!

步骤二:编辑hosts文件(每台机器上都操作)

[root@master src]# cat /etc/hosts

192.168.244.200 master
192.168.244.201 slave1
192.168.244.202 slave2

步骤三:关闭防火墙(每台机器上都操作)

[root@master src]# /etc/init.d/iptables stop

[root@master src]# chkconfig iptables off

[root@master src]# vim /etc/sysconfig/selinux

SELINUX=disabled

步骤四:部署免密码(SSH)

[root@master src]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
d6:9f:53:20:59:93:a4:08:c2:2d:b6:68:2e:01:a1:32 root@master
The key's randomart image is:
+--[ RSA 2048]----+
|.. .... .+. |
|o +... . +.. |
|E o o . + . |
|o.o . . . . |
| + S . . |
|. . . . o |
| . + |
| . |
| |
+-----------------+
[root@master src]# cd /root/.ssh/
[root@master .ssh]# ll
total 12
-rw------- 1 root root 1675 Jun 29 02:37 id_rsa
-rw-r--r-- 1 root root 393 Jun 29 02:37 id_rsa.pub
-rw-r--r-- 1 root root 794 Jun 29 02:20 known_hosts
[root@master .ssh]# cp id_rsa.pub authorized_keys

测试:

[root@master .ssh]# ssh slave1

[root@master .ssh]# ssh slave2

成功即可!!!!

步骤五:下载hadoop2.x 并解压

https://dist.apache.org/repos/dist/release/hadoop/common/hadoop-2.7.3/

[root@master src]# tar xf hadoop-2.7.3.tar.gz

步骤六:修改配置文件

涉及到的配置文件有7个:
~/hadoop-2.2.0/etc/hadoop/hadoop-env.sh
~/hadoop-2.2.0/etc/hadoop/yarn-env.sh
~/hadoop-2.2.0/etc/hadoop/slaves
~/hadoop-2.2.0/etc/hadoop/core-site.xml
~/hadoop-2.2.0/etc/hadoop/hdfs-site.xml
~/hadoop-2.2.0/etc/hadoop/mapred-site.xml
~/hadoop-2.2.0/etc/hadoop/yarn-site.xml
以上个别文件默认不存在的,可以复制相应的template文件获得。

1.修改hadoop-env.sh配置文件

[root@master hadoop]# pwd
/usr/local/src/hadoop-2.7.3/etc/hadoop

[root@master hadoop]# cat hadoop-env.sh |grep -i java_home

export JAVA_HOME=/usr/local/src/jdk1.6.0_45/

2.修改yarn-env.sh配置文件

[root@master hadoop]# cat yarn-env.sh

export JAVA_HOME=/usr/local/src/jdk1.6.0_45/

3.修改slaves配置文件

[root@master hadoop]# cat slaves 
slave1
slave2

4.修改core-site.xml配置文件

[root@master hadoop]# cat core-site.xml

<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://master:9000</value>
  </property>

  <property>
    <name>io.file.buffer.size</name>
    <value>131072</value>
  </property>

  <property>
    <name>hadoop.proxyuser.aboutyun.hosts</name>
    <value>*</value>
  </property>

  <property>
    <name>hadoop.proxyuser.aboutyun.groups</name>
    <value>*</value>
  </property>

  <property>

    <name>hadoop.tmp.dir</name>
    <value>file:/usr/local/src/hadoop-2.7.3/tmp</value>
    <description>Abase forother temporary directories.</description>
  </property>
</configuration>

5.修改hdfs-site.xml配置文件

[root@master hadoop-2.7.3]# mkdir dfs/{name,data} -p

[root@master hadoop]# cat hdfs-site.xml
<configuration>
  <property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>master:9001</value>
  </property>

  <property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/usr/local/src/hadoop-2.7.3/dfs/name</value>
  </property>

  <property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/usr/local/src/hadoop-2.7.3/dfs/data</value>
  </property>

  <property>
    <name>dfs.replication</name>
    <value>3</value>
  </property>

  <property>
    <name>dfs.webhdfs.enabled</name>
    <value>true</value>
  </property>
</configuration>

6.修改mapred-site.xml配置文件

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

  <property>
    <name>mapreduce.jobhistory.address</name>
    <value>master:10020</value>
  </property>
  

  <property>
    <name>mapreduce.jobhistory.webapp.address</name>
    <value>master:19888</value>
  </property>
</configuration>

7.修改yarn-site.xml配置文件

<configuration>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
  <property>
    <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
    <value>org.apache.hadoop.mapred.ShuffleHandler</value>
  </property>
  <property>
    <name>yarn.resourcemanager.address</name>
    <value>master:8032</value>
  </property>
  <property>
    <name>yarn.resourcemanager.scheduler.address</name>
    <value>master:8030</value>
  </property>
  <property>
    <name>yarn.resourcemanager.resource-tracker.address</name>
    <value>master:8035</value>
  </property>
  <property>
    <name>yarn.resourcemanager.admin.address</name>
    <value>master:8033</value>
  </property>
  <property>
    <name>yarn.resourcemanager.webapp.address</name>
    <value>master:8088</value>
  </property>
</configuration>

8.将master的hadoop 目录复制到slave1和slave2节点上:

[root@master src]# scp -r hadoop-2.7.3  root@slave1:/usr/local/src/

[root@master src]# scp -r hadoop-2.7.3  root@slave2:/usr/local/src/

9.设置环境变量

[root@master profile.d]# cat hadoop2.sh
export HADOOP2_HOME=/usr/local/src/hadoop-2.7.3
export PATH=$PATH:$HADOOP2_HOME/bin:HADOOP2_HOME/sbin
[root@master profile.d]# source hadoop2.sh

10 .启动Hadoop

先格式化:hadoop namenode -format

[root@master sbin]# ./start-dfs.sh

[root@master sbin]# ./start-yarn.sh

[root@master sbin]# jps
2714 NameNode
3051 ResourceManager
2892 SecondaryNameNode
3310 Jps

[root@slave1 hadoop]# jps
1904 NodeManager
2004 Jps
1797 DataNode

特别注意点:如果hadoop 版本是2.7 JDK一定要用1.7 以上版本,不然格式化namenode 会出现各种类找不到

hadoop 2.6 可以使用jdk 1.6 版本

########快照案例#################

HDFS快照是对目录进行设定,是某个目录的某一个时刻的镜像

 [root@master ~]# jps
Jps
NameNode
ResourceManager
SecondaryNameNode
[root@master ~]# hadoop fs -ls /
[root@master ~]# hadoop fs -mkdir /kuaizhao_dir
[root@master ~]# hadoop fs -ls /
Found items
drwxr-xr-x - root supergroup -- : /kuaizhao_dir
[root@master ~]# hadoop fs -mkdir /kuaizhao_dir/kz_test
[root@master ~]# hadoop fs /etc/passwd
passwd passwd-
[root@master ~]# hadoop fs -put /etc/passwd /kuaizhao_dir/kz_test
[root@master ~]# hadoop fs -cat /kuaizhao_dir/kz_test/passwd |head
root:x:::root:/root:/bin/bash
bin:x:::bin:/bin:/sbin/nologin
daemon:x:::daemon:/sbin:/sbin/nologin
adm:x:::adm:/var/adm:/sbin/nologin
lp:x:::lp:/var/spool/lpd:/sbin/nologin
sync:x:::sync:/sbin:/bin/sync
shutdown:x:::shutdown:/sbin:/sbin/shutdown
halt:x:::halt:/sbin:/sbin/halt
mail:x:::mail:/var/spool/mail:/sbin/nologin
uucp:x:::uucp:/var/spool/uucp:/sbin/nologin
 [root@master ~]# hdfs dfsadmin -allowSnapshot /kuaizhao_dir/kz_test
Allowing snaphot on /kuaizhao_dir/kz_test succeeded
[root@master ~]# hdfs dfs -createSnapshot /kuaizhao_dir/kz_test s0
Created snapshot /kuaizhao_dir/kz_test/.snapshot/s0
[root@master ~]# hadoop fs -ls /kuaizhao_dir/kz_test/.snapshot/s0
Found items
-rw-r--r-- root supergroup -- : /kuaizhao_dir/kz_test/.snapshot/s0/passwd

hadoop2.X集群安装与应用的更多相关文章

  1. Hadoop2.2集群安装配置-Spark集群安装部署

    配置安装Hadoop2.2.0 部署spark 1.0的流程 一.环境描写叙述 本实验在一台Windows7-64下安装Vmware.在Vmware里安装两虚拟机分别例如以下 主机名spark1(19 ...

  2. hadoop2.7集群安装

    1. 按照官方文档对单节点的配置,将etc/hadoop/core-site.xml中的localhost改成node13. http://hadoop.apache.org/docs/r2.7.3/ ...

  3. CentOS下Hadoop-2.2.0集群安装配置

    对于一个刚开始学习Spark的人来说,当然首先需要把环境搭建好,再跑几个例子,目前比较流行的部署是Spark On Yarn,作为新手,我觉得有必要走一遍Hadoop的集群安装配置,而不仅仅停留在本地 ...

  4. CentOS7+Hadoop2.7.2(HA高可用+Federation联邦)+Hive1.2.1+Spark2.1.0 完全分布式集群安装

    1 2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.9.1 2.9.2 2.9.2.1 2.9.2.2 2.9.3 2.9.3.1 2.9.3.2 2.9.3.3 2. ...

  5. hadoop-2.6.0.tar.gz的集群搭建(3节点)(不含zookeeper集群安装)

    前言 本人呕心沥血所写,经过好一段时间反复锤炼和整理修改.感谢所参考的博友们!同时,欢迎前来查阅赏脸的博友们收藏和转载,附上本人的链接http://www.cnblogs.com/zlslch/p/5 ...

  6. hadoop2.7.7 分布式集群安装与配置

    环境准备 服务器四台: 系统信息 角色 hostname IP地址 Centos7.4 Mster hadoop-master-001 10.0.15.100 Centos7.4 Slave hado ...

  7. [bigdata] spark集群安装及测试

    在spark安装之前,应该已经安装了hadoop原生版或者cdh,因为spark基本要基于hdfs来进行计算. 1. 下载 spark:  http://mirrors.cnnic.cn/apache ...

  8. kafka2.9.2的伪分布式集群安装和demo(java api)测试

    目录: 一.什么是kafka? 二.kafka的官方网站在哪里? 三.在哪里下载?需要哪些组件的支持? 四.如何安装? 五.FAQ 六.扩展阅读   一.什么是kafka? kafka是LinkedI ...

  9. ubuntu12.04+kafka2.9.2+zookeeper3.4.5的伪分布式集群安装和demo(java api)测试

    博文作者:迦壹 博客地址:http://idoall.org/home.php?mod=space&uid=1&do=blog&id=547 转载声明:可以转载, 但必须以超链 ...

随机推荐

  1. vue-router 的URL路径中#的意义

    传送门 https://router.vuejs.org/zh-c... Router 构造配置 routes 类型: Array<RouteConfig> RouteConfig 的类型 ...

  2. Linux进程管理(3):总结

    7. exit与_exit的差异    为了理解这两个系统调用的差异,先来讨论文件内存缓存区的问题. 在linux中,标准输入输出(I/O)函数都是作为文件来处理.对应于打开的每个文件,在内存中都有对 ...

  3. 【层次查询】Hierarchical Queries之亲兄弟间的排序(ORDER SIBLINGS BY)

    http://blog.itpub.net/519536/viewspace-624176 有关层次查询之前的文章参考如下. [层次查询]Hierarchical Queries之"树的遍历 ...

  4. [Algorithms] Quicksort algorithm using TypeScript

    Quicksort (also called partition sort and pivot sort) is arguably the most used sorting algorithm. I ...

  5. log4j:WARN Please initialize the log4j system properly解决的方法

    要解决问题很easy,建立LOG4J 的配置文件就可以. 在src 文件夹下创建配置文件,选 一.择菜单File > New > File,文件名称输入log4j.properties,文 ...

  6. Objective-C中单例

    单例模式,由于其简单好用容易理解.同时在出问题时也容易定位的特点,在开发中经常用到的一个设计模式. 一般在程序中,经常调用的类,如工具类.公共跳转类等,我都会采用单例模式 这个写法是苹果推荐的写法   ...

  7. PHP中curl获取本机虚拟主机接口

    在PHP的curl代码中增加header可解决此问题. $header = array( "Host: 你的域名(不能包含http://)", "Accept: text ...

  8. socketserver模块的使用

    import socketserver class MyTCPhandler(socketserver.BaseRequestHandler): def handle(self): # print(s ...

  9. 【转】git在公司内部的使用实践

    版本定义: 版本号使用x.x.x进行定义,第一个x代表大版本只有在项目有重大变更时更新 第二个x代表常规版本有新需求会更新第三个x代表紧急BUG修正一个常见的版本号类似于:0.11.10 分支定义: ...

  10. 使用 fcntl 函数 获取,设置文件的状态标志

    前言 当打开一个文件的时候,我们需要指定打开文件的模式( 只读,只写等 ).那么在程序中如何获取,修改这个文件的状态标志呢?本文将告诉你如何用 fcntl函数 获取指定文件的状态标志. 解决思路 1. ...