大数据学习系列之一 ----- Hadoop环境搭建(单机)
一、环境选择
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环境搭建(单机)的更多相关文章
- 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机)
引言 在大数据学习系列之一 ----- Hadoop环境搭建(单机) 成功的搭建了Hadoop的环境,在大数据学习系列之二 ----- HBase环境搭建(单机)成功搭建了HBase的环境以及相关使用 ...
- 大数据学习系列之六 ----- Hadoop+Spark环境搭建
引言 在上一篇中 大数据学习系列之五 ----- Hive整合HBase图文详解 : http://www.panchengming.com/2017/12/18/pancm62/ 中使用Hive整合 ...
- 大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 图文详解
引言 在之前的大数据学习系列中,搭建了Hadoop+Spark+HBase+Hive 环境以及一些测试.其实要说的话,我开始学习大数据的时候,搭建的就是集群,并不是单机模式和伪分布式.至于为什么先写单 ...
- 大数据学习系列之八----- Hadoop、Spark、HBase、Hive搭建环境遇到的错误以及解决方法
前言 在搭建大数据Hadoop相关的环境时候,遇到很多了很多错误.我是个喜欢做笔记的人,这些错误基本都记载,并且将解决办法也写上了.因此写成博客,希望能够帮助那些搭建大数据环境的人解决问题. 说明: ...
- 大数据学习系列之Hadoop、Spark学习线路(想入门大数据的童鞋,强烈推荐!)
申明:本文出自:http://www.cnblogs.com/zlslch/p/5448857.html(该博客干货较多) 1 Java基础: 视频方面: 推荐<毕向东JAVA ...
- 大数据学习——java操作hdfs环境搭建以及环境测试
1 新建一个maven项目 打印根目录下的文件的名字 添加pom依赖 pom.xml <?xml version="1.0" encoding="UTF-8&quo ...
- 大数据学习系列之五 ----- Hive整合HBase图文详解
引言 在上一篇 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机) 和之前的大数据学习系列之二 ----- HBase环境搭建(单机) 中成功搭建了Hive和HBase的环 ...
- 大数据学习系列之九---- Hive整合Spark和HBase以及相关测试
前言 在之前的大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 中介绍了集群的环境搭建,但是在使用hive进行数据查询的时候会非常的慢,因为h ...
- 【转】RHadoop实践系列之一:Hadoop环境搭建
RHadoop实践系列之一:Hadoop环境搭建 RHadoop实践系列文章,包含了R语言与Hadoop结合进行海量数据分析.Hadoop主要用来存储海量数据,R语言完成MapReduce 算法,用来 ...
随机推荐
- Python[1,1]
####################################################################################### //只是为了凑够150字 ...
- centos7 防火墙 配置
1.查看Firewall 服务状态 systemctl status firewalld 2.查看Firewall 的状态 firewall-cmd --state 注意: firewalld默认配置 ...
- Introduction of Git, Github and Gitlab
========================================================================== Version control is a syst ...
- QT信号和槽
QT信号和槽 ============ 信号和槽是一种高级接口,应用于对象之间的通信,它是 QT 的核心特性.要正确的处理信号和槽,必须借助一个称为 moc(Meta Object Compiler) ...
- 一场围绕着‘Deeping Learning’的高考
Deep Learning的基本思想和方法 实际生活中,人们为了解决一个问题,如对象的分类(对象可是是文档.图像等),首先必须做的事情是如何来表达一个对象,即必须抽取一些特征来表示一个对象,如文本的处 ...
- Asp.Net MVC 中的 Cookie(译)
Asp.Net MVC 中的 Cookie(译) Cookie Cookie是请求服务器或访问Web页面时携带的一个小的文本信息. Cookie为Web应用程序中提供了一种存储特定用户信息的方法.Co ...
- 插件lombok的介绍安装
Lombok插件 介绍一个不错的Eclipse插件Lombok 该插件对Log4j简化的代码,因为不大,所以jar包也存在呢! Lombox是Eclipse的一个插件,用来自动生成Java代码,减少手 ...
- 【解决方案】纯js动态克隆表一行元素
1 m = 0 ;// 用于区分input // 新增一条录入 function AddTR(){ m += 1; var tableObject = document.getElementById( ...
- jmockit学习
下图为jmockit 类图.在我们编写代码时几乎都会用到Expectations(期望)和Verifications(校验),二者均继承自Invacations. 常会用到的注解有:@Mocked @ ...
- java oop详解
近日来重温了一下java oop的知识.加深了对面向对象的理解.尤其时继承方面.故写一篇博客.记录一下自己的想法和心得 1.面向对象主要分为三大点(封装,继承,多态) 封装的思想促进了类的形成.相比于 ...