一、环境选择

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. 处理MySQL服务器无法启动的问题

    MySQL数据库在升级到5.7版本后,和之前的版本有些不一样,没有data文件夹,我们都知道MySQL数据库文件是保存在data文件夹中的,网上有人说把5.6版本的data文件夹拷贝一个,这种说法听听 ...

  2. LeetCode 90. Subsets II (子集合之二)

    Given a collection of integers that might contain duplicates, nums, return all possible subsets. Not ...

  3. _.contains is not a function

    在使用lodash的时候报_.contains is not a function,这是因为从lodash V3.10.1开始,将去掉contains函数,改用includes. 可以换为:_.con ...

  4. 用Python从零开始创建区块链

    本文主要内容翻译自Learn Blockchains by Building One 本文原始链接,转载请注明出处. 作者认为最快的学习区块链的方式是自己创建一个,本文就跟随作者用Python来创建一 ...

  5. Pendant

    Pendant Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  6. nginx服务部署 说明

    第1章 常用的软件 1.1 常用来提供静态服务的软件   Apache :这是中小型Web服务的主流,Web服务器中的老大哥,   Nginx :大型网站Web服务的主流,曾经Web服务器中的初生牛犊 ...

  7. 通过xinetd服务管理 rsync 实现开机自启动

    1.1 xinetd服务配置 1.1.1 检查xinetd服务是否安装 [root@backup ~]# rpm -qa xinetd [root@backup ~]# rpm -ql xinetd ...

  8. 文本宽度的测量--measureText

    HTML5中的canvas提供了文字宽度的测量方法: ctx.measureText(string).width var c=document.getElementById("myCanva ...

  9. Problem B: 农夫果园 简单点,出题的方式简单点

    我走过最长的路,就是教主的套路#include <iostream> #include <string> using namespace std; class Fruit { ...

  10. python是如何进行内存管理的

    Python引入了一个机制:引用计数. python内部使用引用计数,来保持追踪内存中的对象,Python内部记录了对象有多少个引用,即引用计数,当对象被创建时就创建了一个引用计数,当对象不再需要时, ...