1. 安装JDK

  JDK安装包复制到/opt文件夹

  cd /opt

  rpm -ivh jdk-8u121-linux-x64.rpm

  vim /etc/profile

  增加 JAVA_HOME=/usr/java/default

  PATH=$JAVA_HOME/bin:$PATH

  source /etc/profile

  验证 echo $JAVA_HOME

  java -version

2. 配置SSH(免密码登录),Hadoop集群间登录使用。

  a> 在客户端进行如下操作:

    ssh-keygen -t rsa  生成密钥

    cat id_rsa.pub >> authorized_keys  客户端注册公钥

    cat id_rsa.pub | ssh root@bigdata.mysql "cat - >> ~/.ssh/authorized_keys"  注册公钥到服务器

  b> 在服务器段进行:  

    chmod 700 -R .ssh

    chmod 600 .ssh/authorized_keys

  或者:在客户端直接 ssh-copy-id ~/.ssh/id_rsa.pub root@bigdata.mysql

  c> 测试

    在客户端:ssh bigdata.mysql

3. Hadoop集群搭建-Master

  tar zxf hadoop-2.7.3.tar.gz

  vim /etc/profile

  增加 HADOOP_HOME=/opt/hadoop-2.7.3

  PATH增加$HADOOP_HOME/bin:段

  source /etc/profile

  检查 echo $HADOOP_HOME

  cd /opt/hadoop-2.7.3/etc/hadoop/

  配置:core-site.xml; hdfs-site.xml; yarn-site.xml; mapred-site.xml; slaves

  core-site.xml

<property>
<name>fs.default.name</name>
<value>hdfs://bigdata.hadoop.master:9000</value>
</property> <property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop-2.7.3/current/tmp</value>
</property> <property>
<name>fs.trash.interval</name>
<value>4320</value>
</property>

  mkdir -p /opt/hadoop-2.7.3/current/tmp

  hdfs-site.xml

<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop-2.7.3/current/data</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop-2.7.3/current/name</value>
</property> <property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hadoop-2.7.3/current/data</value>
</property> <property>
<name>dfs.replication</name>
<value>3</value>
</property> <property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property> <property>
<name>dfs.permission.superusergroup</name>
<value>staff</value>
</property> <property>
<name>dfs.permission.enabled</name>
<value>false</value>
</property>

  mkdir -p /opt/hadoop-2.7.3/current/name

  mkdir -p /opt/hadoop-2.7.3/current/data

  yarn-site.xml

<property>
<name>yarn.resourcemanager.hostname</name>
<value>bigdata.hadoop.master</value>
</property> <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>bigdata.hadoop.master:18040</value>
</property> <property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>bigdata.haddop.master:18030</value>
</property> <property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>bigdata.hadoop.master:18025</value>
</property> <property>
<name>yarn.resource.manager.admin.address</name>
<value>bigdata.hadoop.master:18141</value>
</property> <property>
<name>yarn.resourcemanager.webapp.address</name>
<value>bigdata.hadoop.master:18088</value>
</property> <property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property> <property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>86400</value>
</property> <property>
<name>yarn.log-aggregation.retain-check-interval-seconds</name>
<value>86400</value>
</property> <property>
<name>yarn.nodemanager.remote-app-log-dir</name>
<value>/tmp/logs</value>
</property> <property>
<name>yarn.nodemanager.remote-app-log-dir-suffix</name>
<value>logs</value>
</property>

  mapred-site.xml

  cp mapred-site.xml.template mapred-site.xml

  vim mapred-site.xml

 <property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property> <property>
<name>mapreduce.jobtracker.http.address</name>
<value>bigdata.hadoop.master:50030</value>
</property> <property>
<name>mapreduce.jobhistory.address</name>
<value>bigdata.hadoop.master:10020</value>
</property> <property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>bigdata.hadoop.master:19888</value>
</property> <property>
<name>mapreduce.jobhistory.done-dir</name>
<value>/jobhistory/done</value>
</property> <property>
<name>mapreduce.intermediate-done-dir</name>
<value>/jobhistory/done_intermediate</value>
</propery> <property>
<name>mapreduce.job.ubertask.enable</name>
<value>true</value>
</property>

  slaves

  bigdata.hadoop.master

  bigdata.hadoop.slave1

  bigdata.hadoop.slave2

  bigdata.hadoop.slave3

  vim /opt/hadoop-2.7.3/etc/hadoop/hadoop-env.sh

  export JAVA_HOME=/usr/java/default

4.  创建Slaves虚拟机

   bigdata.hadoop.slave1

  bigdata.hadoop.slave2

  bigdata.hadoop.slave3

5. SSH免密码登录

  在bigdata.hadoop.master上执行:

  ssh-keygen -t rsa  --生成密钥公钥,一路回车

  ssh-copy-id -i ~/.ssh/id_rsa.pub root@bigdata.hadoop.slave1

  ssh-copy-id -i ~/.ssh/id_rsa.pub root@bigdata.hadoop.slave2

  ssh-copy-id -i ~/.ssh/id_rsa.pub root@bigdata.hadoop.slave2

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

  测试免密码登录

  ssh bigdata.hadoop.slave1, ssh bigdata.hadoop.slave2, ssh bigdata.hadoop.slave3, ssh bigdata.hadoop.master

6. 关闭防火墙和SELIXNUX

  service iptables stop  --临时关闭防火墙

  chkconfig iptables off  --永久关闭

  chkconfig --list|grep iptables

  vi /etc/sysconfig/selinux

  SELINUX=disabled

  setenforce 0

  getenforce

7. Copy文件到虚拟机

  安装scp命令:yum install openssh-clients

  scp -r /opt/hadoop-2.7.3 root@bigdata.hadoop.slave1:/opt/

  配置Slaves的etc/profile

8. 格式化Hadoop

  在Master上执行: hdfs namenode -format

9. 启动Hadoop

  在Master上执行:/opt/hadoop-2.7.3/sbi/start-all.sh

10. 查看Hadoop状态

  在Master执行:JPS

    NodeManager;  NameNode;  SecondaryNameNode;  ResourceManager;  DataNode

  在Slaves上执行:JPS

    NodeManager;  DataNode;

  在外部访问:http://bigdata.hadoop.master:50070 和 http://bigdata.hadoop.master:18088

  打开ServiceHistoryServer

  /opt/hadoop-2.7.3/sbin/mr-jobhistory-daemon.sh start historyserver

  在外部访问:http://bigdata.hadoop.master:19888

11. 执行Map-Reduce任务

  词频统计

  1. 将1个txt文本上传到hdfs

    hdfs dfs -put testfile.txt /task1/input/testfile

  2. 执行Map-Reduce任务

    hadoop jar /opt/hadoop-2.7.3/share/hadoop/mareduce/hadoop-mapreduce-examples-2.7.3 jar wordcound /task1/input/testfile /task1/output

  3. 查看输出结果

    hdfs dfs -cat /task1/output/part-r-00000

  

  

BG.Hadoop.Master的更多相关文章

  1. Hadoop,master和slave简单的分布式搭建

    搭建过程中配置免密钥登录为了以后方便使用 [提醒]安装Hadoop中会遇到新建文件夹,配置路径等问题,这个不能生搬硬套,要使用自己配置的路径,灵活使用. Hadoop的部署配置文件在http://bl ...

  2. Hadoop分布式系统的安装部署

    1.关于虚拟机的复制 新建一台虚拟机,系统为CentOS7,再克隆两台,组成一个三台机器的小集群.正常情况下一般需要五台机器(一个Name节点,一个SecondName节点,三个Data节点.) 此外 ...

  3. 安装hadoop+zookeeper ha

    安装hadoop+zookeeper ha 前期工作配置好网络和主机名和关闭防火墙 chkconfig iptables off //关闭防火墙 1.安装好java并配置好相关变量 (/etc/pro ...

  4. Hadoop学习笔记—6.Hadoop Eclipse插件的使用

    开篇:Hadoop是一个强大的并行软件开发框架,它可以让任务在分布式集群上并行处理,从而提高执行效率.但是,它也有一些缺点,如编码.调试Hadoop程序的难度较大,这样的缺点直接导致开发人员入门门槛高 ...

  5. HADOOP安装指南-Ubuntu15.10和hadoop2.7.2

    Ubuntu15.10中安装hadoop2.7.2安装手册 太初 目录 1.      Hadoop单点模式... 2 1.1        安装步骤... 2 0.环境和版本... 2 1.在ubu ...

  6. 大数据系列(4)——Hadoop集群VSFTP和SecureCRT安装配置

    前言 经过前三篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,当然,我相信安装的过程肯定遇到或多或少的问题,这些都需要自己解决,解决的过程就是学习的过程,本篇的来介绍几个Hadoop环 ...

  7. hadoop伪分布式平台搭建(centos 6.3)

    最近要写一个数据量较大的程序,所以想搭建一个hbase平台试试.搭建hbase伪分布式平台,需要先搭建hadoop平台.本文主要介绍伪分布式平台搭建过程. 目录: 一.前言 二.环境搭建 三.命令测试 ...

  8. 搭建ubuntu14.04的hadoop集群【docker容器充当服务器】

    首先弄出来装有hadoop.java.ssh.vim的镜像起名badboyf/hadoop.做镜像有两种方法,一种是用Dockerfile来生成一个镜像,一种是基于ubuntu14.04的基础镜像生成 ...

  9. Hadoop安装及配置

    一.系统及软件环境 1.操作系统 CentOS release 6.5 (Final) 内核版本:2.6.32-431.el6.x86_64 master.fansik.com:192.168.83. ...

随机推荐

  1. web请求的状态码

    摘录于  https://www.cnblogs.com/lovychen/p/6256343.html 1xx消息 这一类型的状态码,代表请求已被接受,需要继续处理.这类响应是临时响应,只包含状态行 ...

  2. TOJ_12470

    #include <stdio.h> struct node{ int x; int y; int step;}first; int zx[4]={-1,0,1,0};int zy[4]= ...

  3. leetcode 91. 解码方法 JAVA

    题目: 一条包含字母 A-Z 的消息通过以下方式进行了编码: 'A' -> 1 'B' -> 2 ... 'Z' -> 26 给定一个只包含数字的非空字符串,请计算解码方法的总数. ...

  4. leetcode 73 矩阵置零 Python

    矩阵置零     给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0.请使用原地算法. 示例 1: 输入: [   [1,1,1],   [1,0,1],   [1 ...

  5. git 忽略某些文件的命令

    正常的,我们在提交项目版本的时候,经常会存在一些需要忽略的文件或者文件夹,那这个时候,我们就可以通过git的一些操作命令来实现! vim .gitignore 通过上面一句话进入编辑忽略文件/文件夹的 ...

  6. 深入理解Java接口和抽象类

    对于面向对象编程来说,抽象是它的一大特征之一.在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类.这两者有太多相似的地方,又有太多不同的地方.很多人在初学的时候会以为它们可以随意互换使用, ...

  7. 数据结构---散列表查找(哈希表)概述和简单实现(Java)

    散列表查找定义 散列技术是在记录的存储位置和它的关键字之间建立一个确定的对应关系f,是的每个关键字key对应一个存储位置f(key).查找时,根据这个确定的对应关系找到给定值的key的对应f(key) ...

  8. SQLAlchemy 代码学习

    1.Dialect:英文含义为方言,这边只模块对不同的数据库的连接以及操作的实现. 2.engine:引擎,代表到数据库的一个连接,数据库自身有一个连接最大限制,不能超过这个限制.这里引擎可以连接多个 ...

  9. Winform—C#读写config配置文件

    现在FrameWork2.0以上使用的是:ConfigurationManager或WebConfigurationManager.并且AppSettings属性是只读的,并不支持修改属性值. 一.如 ...

  10. J04-Java IO流总结四 《 FileReader和FileWriter 》

    FileReader和FileWriter的源码相对简单,下面通过分析它们的源码以更好地进行理解这两个流 1. FileReader FileReader实现了读取底层的字节数据并将其转换为字符数据的 ...