一、环境选择

1,服务器选择

阿里云服务器:入门型(按量付费)

操作系统:linux CentOS 6.8

Cpu:1核

内存:1G

硬盘:40G

ip:39.108.77.250

2,配置选择

JDK:1.8 (jdk-8u144-linux-x64.tar.gz)

Hadoop:2.8.2 (hadoop-2.8.2.tar.gz)

3,下载地址

官网地址:

JDK:

http://www.oracle.com/technetwork/java/javase/downloads

Hadopp:

http://www.apache.org/dyn/closer.cgi/hadoop/common

百度云:

链接:http://pan.baidu.com/s/1pLqS4kF 密码:yb79

二、服务器的相关配置

在配置Hadoop之前,应该先做以下配置

1,更改主机名

首先更改主机名,目的是为了方便管理。

输入:

hostname

查看本机的名称

然后输入:

vim /etc/sysconfig/network

修改主机名称

将HOSTNAME 的名称更改为你想要设置的名称



注:主机名称更改之后,要重启(reboot)才会生效。

输入

vim /etc/hosts

添加 主机IP 和对应的主机名称,做映射。

注:在配置文件中使用主机名的话,这个映射必须做!

2,关闭防火墙

关闭防火墙,方便外部访问。

CentOS 7版本以下输入:

关闭防火墙

service   iptables stop

CentOS 7 以上的版本输入:

systemctl   stop   firewalld.service

3,时间设置

输入:

date

查看服务器时间是否一致,若不一致则更改

更改时间命令

date -s ‘MMDDhhmmYYYY.ss’

三、Hadoop环境安装

1,下载jdk、hadoop

将下载下来的 jdk、hadoop 解压包放在home 目录下

并新建java、hadoop文件夹

3.1.1解压文件

输入:

tar -xvf jdk-8u144-linux-x64.tar.gz

tar -xvf hadoop-2.8.2.tar.gz

解压jdk和hadoop ,分别移动文件到java和hadoop文件下,

并将文件夹重命名为jdk1.8和hadoop2.8

2,JDK环境配置

首先输入

java -version

查看是否安装了JDK,如果安装了,但版本不适合的话,就卸载

3.2.1 profile 文件更改

编辑 /etc/profile 文件

输入:

vim /etc/profile

整体的配置文件:

export JAVA_HOME=/home/java/jdk1.8
export JRE_HOME=/home/java/jdk1.8/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=.:${JAVA_HOME}/bin:$PATH



注: JAVA_HOME的路径是 JDK的路径

使用vim 编辑之后 记得输入

source /etc/profile

使配置生效

配置完后,输入java -version 查看版本信息

3,Hadoop 环境配置

3.3.1 profile 文件更改

编辑 /etc/profile 文件

输入:

vim /etc/profile

整体的配置文件:

export HADOOP_HOME=/home/hadoop/hadoop2.8
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export PATH=.:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:$PATH



输入:

source  /etc/profile

使配置生效

修改配置文件

3.3.2新建文件夹

在修改配置文件之前,现在root目录下建立一些文件夹。

输入:

mkdir  /root/hadoop
mkdir /root/hadoop/tmp
mkdir /root/hadoop/var
mkdir /root/hadoop/dfs
mkdir /root/hadoop/dfs/name
mkdir /root/hadoop/dfs/data

注:在root目录下新建文件夹是防止被莫名的删除。

首先切换到 /home/hadoop/hadoop2.8/etc/hadoop/ 目录下

3.3.3修改 core-site.xml

输入:

vim core-site.xml

<configuration>添加:

<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/root/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://test1:9000</value>
</property>
</configuration>



说明: test1 可以替换为主机的ip。

3.3.4修改 hadoop-env.sh

输入:

vim hadoop-env.sh

${JAVA_HOME} 修改为自己的JDK路径

export   JAVA_HOME=${JAVA_HOME}

修改为:

export   JAVA_HOME=/home/java/jdk1.8

3.4.5修改 hdfs-site.xml

输入:

vim hdfs-site.xml

<configuration>添加:

<property>
<name>dfs.name.dir</name>
<value>/root/hadoop/dfs/name</value>
<description>Path on the local filesystem where theNameNode stores the namespace and transactions logs persistently.</description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/root/hadoop/dfs/data</value>
<description>Comma separated list of paths on the localfilesystem of a DataNode where it should store its blocks.</description>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
<description>need not permissions</description>
</property>

说明:dfs.permissions配置为false后,可以允许不要检查权限就生成dfs上的文件,方便倒是方便了,但是你需要防止误删除,请将它设置为true,或者直接将该property节点删除,因为默认就是true。

3.4.6 修改mapred-site.xml

如果没有 mapred-site.xml 该文件,就复制mapred-site.xml.template文件并重命名为mapred-site.xml

输入:

vim mapred-site.xml

修改这个新建的mapred-site.xml文件,在<configuration>节点内加入配置:

<property>
<name>mapred.job.tracker</name>
<value>test1:9001</value>
</property>
<property>
<name>mapred.local.dir</name>
<value>/root/hadoop/var</value>
</property>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

使用的命令:



到此 Hadoop 的单机模式的配置就完成了。

四、Hadoop启动

第一次启动Hadoop需要初始化

切换到 /home/hadoop/hadoop2.8/bin目录下输入

  ./hadoop  namenode  -format



初始化成功后,可以在/root/hadoop/dfs/name 目录下(该路径在hdfs-site.xml文件中进行了相应配置,并新建了该文件夹)新增了一个current 目录以及一些文件。

启动Hadoop 主要是启动HDFS和YARN

切换到/home/hadoop/hadoop2.8/sbin目录

启动HDFS

输入:

start-dfs.sh

登录会询问是否连接,输入yes ,然后输入密码就可以了

启动YARN

输入:

start-yarn.sh

可以输入 jps 查看是否成功启动

在浏览器输入:

http://39.108.77.250:8088/cluster

输入:

http://39.108.77.250:50070



注:当时忘记截图了,这张使用的是本地用虚拟机搭建环境的图片。

到此,Hadoop的单机配置就结束了。

大数据学习系列之一 ----- Hadoop环境搭建(单机)的更多相关文章

  1. 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机)

    引言 在大数据学习系列之一 ----- Hadoop环境搭建(单机) 成功的搭建了Hadoop的环境,在大数据学习系列之二 ----- HBase环境搭建(单机)成功搭建了HBase的环境以及相关使用 ...

  2. 大数据学习系列之六 ----- Hadoop+Spark环境搭建

    引言 在上一篇中 大数据学习系列之五 ----- Hive整合HBase图文详解 : http://www.panchengming.com/2017/12/18/pancm62/ 中使用Hive整合 ...

  3. 大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 图文详解

    引言 在之前的大数据学习系列中,搭建了Hadoop+Spark+HBase+Hive 环境以及一些测试.其实要说的话,我开始学习大数据的时候,搭建的就是集群,并不是单机模式和伪分布式.至于为什么先写单 ...

  4. 大数据学习系列之八----- Hadoop、Spark、HBase、Hive搭建环境遇到的错误以及解决方法

    前言 在搭建大数据Hadoop相关的环境时候,遇到很多了很多错误.我是个喜欢做笔记的人,这些错误基本都记载,并且将解决办法也写上了.因此写成博客,希望能够帮助那些搭建大数据环境的人解决问题. 说明: ...

  5. 大数据学习系列之Hadoop、Spark学习线路(想入门大数据的童鞋,强烈推荐!)

    申明:本文出自:http://www.cnblogs.com/zlslch/p/5448857.html(该博客干货较多) 1 Java基础: 视频方面:          推荐<毕向东JAVA ...

  6. 大数据学习——java操作hdfs环境搭建以及环境测试

    1 新建一个maven项目 打印根目录下的文件的名字 添加pom依赖 pom.xml <?xml version="1.0" encoding="UTF-8&quo ...

  7. 大数据学习系列之五 ----- Hive整合HBase图文详解

    引言 在上一篇 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机) 和之前的大数据学习系列之二 ----- HBase环境搭建(单机) 中成功搭建了Hive和HBase的环 ...

  8. 大数据学习系列之九---- Hive整合Spark和HBase以及相关测试

    前言 在之前的大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 中介绍了集群的环境搭建,但是在使用hive进行数据查询的时候会非常的慢,因为h ...

  9. 【转】RHadoop实践系列之一:Hadoop环境搭建

    RHadoop实践系列之一:Hadoop环境搭建 RHadoop实践系列文章,包含了R语言与Hadoop结合进行海量数据分析.Hadoop主要用来存储海量数据,R语言完成MapReduce 算法,用来 ...

随机推荐

  1. Python[1,1]

    ####################################################################################### //只是为了凑够150字 ...

  2. centos7 防火墙 配置

    1.查看Firewall 服务状态 systemctl status firewalld 2.查看Firewall 的状态 firewall-cmd --state 注意: firewalld默认配置 ...

  3. Introduction of Git, Github and Gitlab

    ========================================================================== Version control is a syst ...

  4. QT信号和槽

    QT信号和槽 ============ 信号和槽是一种高级接口,应用于对象之间的通信,它是 QT 的核心特性.要正确的处理信号和槽,必须借助一个称为 moc(Meta Object Compiler) ...

  5. 一场围绕着‘Deeping Learning’的高考

    Deep Learning的基本思想和方法 实际生活中,人们为了解决一个问题,如对象的分类(对象可是是文档.图像等),首先必须做的事情是如何来表达一个对象,即必须抽取一些特征来表示一个对象,如文本的处 ...

  6. Asp.Net MVC 中的 Cookie(译)

    Asp.Net MVC 中的 Cookie(译) Cookie Cookie是请求服务器或访问Web页面时携带的一个小的文本信息. Cookie为Web应用程序中提供了一种存储特定用户信息的方法.Co ...

  7. 插件lombok的介绍安装

    Lombok插件 介绍一个不错的Eclipse插件Lombok 该插件对Log4j简化的代码,因为不大,所以jar包也存在呢! Lombox是Eclipse的一个插件,用来自动生成Java代码,减少手 ...

  8. 【解决方案】纯js动态克隆表一行元素

    1 m = 0 ;// 用于区分input // 新增一条录入 function AddTR(){ m += 1; var tableObject = document.getElementById( ...

  9. jmockit学习

    下图为jmockit 类图.在我们编写代码时几乎都会用到Expectations(期望)和Verifications(校验),二者均继承自Invacations. 常会用到的注解有:@Mocked @ ...

  10. java oop详解

    近日来重温了一下java oop的知识.加深了对面向对象的理解.尤其时继承方面.故写一篇博客.记录一下自己的想法和心得 1.面向对象主要分为三大点(封装,继承,多态) 封装的思想促进了类的形成.相比于 ...