前言

由于现在要用spark,而学习spark会和hdfs和hive打交道,之前在公司服务器配的分布式集群,离开公司之后,自己就不能用了,后来用ambari搭的三台虚拟机的集群太卡了,所以就上网查了一下hadoop+hive的单机部署,以便自己能进行简单的学习,这里记录一下,本来想把hadoop和hive的放在一起写,由于太多,就分成两篇写了。

1、首先安装配置jdk(我安装的1.8)

2、下载hadoop

下载地址:http://mirror.bit.edu.cn/apache/hadoop/common/,我下载的是hadoop-2.7.5.tar.gz
(由于我之前用的2.7.1是几年前下载保存在本地的,现在发现之前在配置spark那篇写的那个hadoop下载地址较慢,所以改成这个地址)

3、解压到/opt目录下(目录根据自己习惯)

tar -zxvf hadoop-2.7.5.tar.gz  -C /opt/

4、配置hadoop环境变量

vim /etc/profile
export HADOOP_HOME=/opt/hadoop-2.7.5
export PATH=$PATH:$HADOOP_HOME/bin
source /etc/profile

5、配置hadoop

5.1 配置hadoop-env.sh

vim /opt/hadoop-2.7.5/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/opt/jdk1.8.0_45

找到# The java implementation to use.将其下面的一行改为:

5.2 配置core-site.xml (5.2和5.3中配置文件里的文件路径和端口随自己习惯配置)

其中的IP:192.168.44.128为虚拟机ip,不能设置为localhost,如果用localhost,后面在windows上用saprk连接服务器(虚拟机)上的hive会报异常(win读取的配置也是localhost,这样localhost就为win本地ip了~也可以给ip加个映射,不过因为单机的我就没加)。

vim /opt/hadoop-2.7.5/etc/hadoop/core-site.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:///opt/hadoop-2.7.5</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.44.128:8888</value>
</property>
</configuration>

5.3 配置hdfs-site.xml

vim /opt/hadoop-2.7.5/etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///opt/hadoop-2.7.5/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///opt/hadoop-2.7.5/tmp/dfs/data</value>
</property>
</configuration>

6、SSH免密码登录

以下用三台centos为例,ip分别为192.168.44.138、192.168.44.139、192.168.44.140,分别对应别名master、slave1、slave2

1、首先在每个机器上执行

ssh-keygen -t rsa

将公钥导入到认证文件中一直按回车默认就好

将三个机器上id_rsa.pub的内容合并起来放在authorized_keys,可以用命令按下面的步骤来,也可以分别将三个机器的公钥拷贝出来放在一个文件里,之后分别复制到各自机器的authorized_keys,我用的是下面的命令

2.1 在master上执行

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

如果不能免密登录,可能是文件权限不对,执行下面的命令,再验证一下(这时如果配单机的话,就可以免密登录本机了,可以执行ssh localhost 或ssh master验证一下,如下图)

chmod  authorized_keys

然后将master的authorized_keys传到slave1上的.ssh目录下

scp -r authorized_keys root@slave1:~/.ssh 

2.2 在slave1上执行

cd ~/.ssh
cat id_rsa.pub>>authorized_keys
scp -r authorized_keys root@slave2:~/.ssh

2.3 在slave2上执行

这一步实际是将salve1的id_rsa.pub和master传过来的authorized_keys里的内容合并起来存到authorized_keys,然后将authorized_keys传到slave2机器上

cd ~/.ssh
cat id_rsa.pub>>authorized_keys
scp -r authorized_keys root@master:~/.ssh
scp -r authorized_keys root@slave1:~/.ssh

ssh master这一步实际是将salve2的id_rsa.pub和slave1传过来的authorized_keys里的内容合并起来存到authorized_keys,然后将authorized_keys传到master、slave1机器上。
到这里,每台机器上的authorized_keys都含有三台机器的公钥,在每台机器上验证一下是否可以免密ssh登录到三台机器上了。

ssh slave1
ssh slave2

如果都不需要输入密码,就代表配置成功!

7、启动与停止

第一次启动hdfs需要格式化:

cd /opt/hadoop-2.7.
./bin/hdfs namenode -format

Re-format filesystem in Storage Directory /opt/hadoop-2.7.5/tmp/dfs/name ? (Y or N)

输入:Y
(出现询问输入Y or N,全部输Y即可)
启动:

./sbin/start-dfs.sh

停止:

./sbin/stop-dfs.sh

验证,浏览器输入:http://192.168.44.128:50070

简单的验证hadoop命令:

hadoop fs -mkdir /test

在浏览器查看,出现如下图所示,即为成功

8、配置yarn

8.1 配置mapred-site.xml

cd /opt/hadoop-2.7./etc/hadoop/
cp mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
<configuration>
<!-- 通知框架MR使用YARN -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

8.2 配置yarn-site.xml

vim yarn-site.xml
<configuration>
<!-- reducer取数据的方式是mapreduce_shuffle -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

8.3 yarn启动与停止

启动:

cd /opt/hadoop-2.7.
./sbin/start-yarn.sh

停止:

./sbin/stop-yarn.sh
浏览器查看:http://192.168.44.128:8088


jps查看进程

到此,hadoop单机模式就配置成功了!

centos7 hadoop 单机模式安装配置的更多相关文章

  1. centos7 hive 单机模式安装配置

    前言:由于只是在自己的虚拟机上进行学习,所以对hive只是进行最简单的配置,其他复杂的配置文件没有配置. 1.前提 1.1 安装配置jdk1.8 1.2 安装hadoop2.x hadoop单机模式安 ...

  2. Hadoop单机模式的配置与安装

    Hadoop单机模式的配置与安装 单机hadoop集群正常启动后进程情况 ResourceManager NodeManager SecondaryNameNode NameNode DataNode ...

  3. Hadoop单机模式安装

    一.实验环境说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到桌面上的程序: ...

  4. 3-1.Hadoop单机模式安装

    Hadoop单机模式安装 一.实验介绍 1.1 实验内容 hadoop三种安装模式介绍 hadoop单机模式安装 测试安装 1.2 实验知识点 下载解压/环境变量配置 Linux/shell 测试Wo ...

  5. Hadoop单机模式安装-(3)安装和配置Hadoop

    网络上关于如何单机模式安装Hadoop的文章很多,按照其步骤走下来多数都失败,按照其操作弯路走过了不少但终究还是把问题都解决了,所以顺便自己详细记录下完整的安装过程. 此篇主要介绍在Ubuntu安装完 ...

  6. Hadoop单机模式安装-(2)安装Ubuntu虚拟机

    网络上关于如何单机模式安装Hadoop的文章很多,按照其步骤走下来多数都失败,按照其操作弯路走过了不少但终究还是把问题都解决了,所以顺便自己详细记录下完整的安装过程. 此篇主要介绍在虚拟机设置完毕后, ...

  7. Hadoop单机模式安装-(1)安装设置虚拟环境

    网络上关于如何单机模式安装Hadoop的文章很多,按照其步骤走下来多数都失败,按照其操作弯路走过了不少但终究还是把问题都解决了,所以顺便自己详细记录下完整的安装过程. 此篇主要介绍如何在Windows ...

  8. hadoop单机模式安装流程

    这里的安装是在Linux系统上安装的 参考博客 : https://blog.csdn.net/cafebar123/article/details/73500014 https://blog.csd ...

  9. centos7命令行模式安装&&配置_br0+kvm+虚拟机+添加硬盘+快照及恢复

    KVM创建虚拟机步骤 Submitted by zhaoley on October 18, 2016 - 10:43am 测试环境: 1: 43.243.130.89, CentOS Linux r ...

随机推荐

  1. 【MySQL】MyISAM和InnoDB存储引擎区别详解

    MyISAM 主键索引(引擎的索引文件和数据文件是分离的) (图片来自:https://blog.csdn.net/u010922732/article/details/82994253) 非主键索引 ...

  2. 项目中 SimpleDateFormat 的正确使用

    项目中 SimpleDateFormat 的正确使用 日常开发中,我们经常需要使用时间相关类,说到时间相关类,想必大家对 SimpleDateFormat 并不陌生.主要是用它进行时间的格式化输出和解 ...

  3. 官网下载Java连接MySql驱动jar包

    官网地址:http://dev.mysql.com/downloads/connector/ 1.选择下载驱动 2.选择下载 3.可以不登录直接下载 4.下载下来的是zip压缩包,解压之后,文件夹中有 ...

  4. CentOS上安装配置Python3.7

    一.安装依赖包,这个具体的作用我也不清楚,感觉好像是在安装的时候会要用到的工具. yum install zlib-devel bzip2-devel openssl-devel ncurses-de ...

  5. Consul+upsync+Nginx实现动态负载均衡

    上一篇文章 <C# HttpClient 使用 Consul 发现服务> 解决了内部服务之间的调用问题, 对外提供网关服务还没有解决, 最后我选择了 nginx-upsync-module ...

  6. discuz mlv3.x命令注入

    本次漏洞是由于Discuz! ML对于cookie字段的不恰当处理造成的cookie字段中的language参数未经过滤,直接被拼接希尔缓存文件中,而缓存文件随后被加载,造成代码执行. 共有60出利用 ...

  7. Rocket - tilelink - SourceShrinker

    https://mp.weixin.qq.com/s/1vyfhZuF4RyRE5Qjj6AGWA   简单介绍SourceShrinker的实现.   ​​   1. 基本介绍   用于把上游节点的 ...

  8. LeetCode 73,为什么第一反应想到的解法很有可能是个坑?

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是LeetCode第42篇文章,我们来看看LeetCode第73题矩阵置零,set matrix zeroes. 这题的难度是Mediu ...

  9. Physic Design:Floorplan算法概览

    仅用于学习交流,转载请联系本人. 1 floorplan是什么 floorplan常被翻译成布图规划,是指在芯片级别上对模块进行布局,也就是哪个单元放在什么地方,但是单元内部的具体布局并不关心.该步骤 ...

  10. Java实现 LeetCode 805 数组的均值分割 (DFS+分析题)

    805. 数组的均值分割 给定的整数数组 A ,我们要将 A数组 中的每个元素移动到 B数组 或者 C数组中.(B数组和C数组在开始的时候都为空) 返回true ,当且仅当在我们的完成这样的移动后,可 ...