【Hadoop】伪分布式安装
创建hadoop用户
创建用户命令:
sudo useradd -m hadoop -s /bin/bash
创建好后需要更改hadoop用户的密码,命令如下:
sudo passwd hadoop
然后给予hadoop用户sudo权限,方便配置部署。
这里使用编辑/etc/sudoers文件的方式,来赋权。在文件中添加一行hadoop ALL=(ALL) ALL,保存后完成赋值。
Java安装
安装Java的命令如下:
sudo yum install -y java-1.8.0-openjdk-devel
测试Java是否安装成功的命令:
java -version
结果如图所示:

此方法的JAVA_HOME环境变量为:
export JAVA_HOME=/etc/alternatives/java_sdk_1.8.0
SSH登入权限设置
首先需要安装SSH server,命令如下:
sudo yum install -y openssh-server
测试安装成功的命令:
ssh localhost
此时是需要密码登入的。
免密SSH登入
在hadoop用户下,输入如下命令:
ssh-keygen -t rsa # 会有提示,都按回车就可以
cat ./id_rsa.pub >> ./authorized_keys # 加入授权
再次ssh local则不需要密码了。
Hadoop伪分布式安装
下载并解压
下载Hadoop,这里下载的版本是2.7.1。
将hadoop-2.7.1.tar.gz解压到/usr/local目录下。并修改文件名,修改文件权限。
tar -zxvf hadoop-2.7.1.tar.gz -C /usr/local
cd /usr/local/
sudo mv ./hadoop-2.6.0/ ./hadoop
sudo chown -R hadoop ./hadoop
检查Hadoop是否可用,在hadoop目录下输入下面命令:
./bin/hadoop version
结果如下:

伪分布式配置
Hadoop的配置文件位于/usr/local/hadoop/etc/hadoop/中,切换到此目录下,修改两个配置文件core-site.xml和hdfs-site.xml
core-size.xml文件的配置
修改为如下
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
hdfs-site.xml文件的配置
修改为如下:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
名称节点格式化
配置完成后执行NameNode的格式化
cd /usr/local/hadoop
./bin/hdfs namenode -format
结果如下:

启动Hadoop
./sbin/start-all.sh
使用jps指令来检查是否启动成功
Word Count
在hdfs中创建/user/hadoop/input目录,命令如下:
./bin/hdfs dfs -mkdir -p /user/hadoop/input
文本file.txt:
Hello world! Hello Java! Hello Hadoop! Hello BigData!
将被计数的文本拷贝到hdfs的刚创建目录下,命令为:
./bin/hdfs dfs -put ./input/file.txt /user/hadoop/input
启动wordcount实例进行计数:
./bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount input output
查看结果
./bin/hdfs dfs -cat output/part-r-00000

参考
【Hadoop】伪分布式安装的更多相关文章
- hadoop伪分布式安装之Linux环境准备
Hadoop伪分布式安装之Linux环境准备 一.软件版本 VMare Workstation Pro 14 CentOS 7 32/64位 二.实现Linux服务器联网功能 网络适配器双击选择VMn ...
- apache hadoop 伪分布式安装
1. 准备工作 1.1. 软件准备 1.安装VMWare 2.在VMWare上安装CentOS6.5 3.安装XShell5,用来远程登录系统 4.通过rpm -qa | grep ssh 检查cen ...
- Hadoop 伪分布式安装、运行测试例子
1. 配置linux系统环境 centos 6.4 下载地址:http://pan.baidu.com/s/1geoSWuv[VMWare专用CentOS.rar](安装打包好的VM压缩包) 并配置虚 ...
- 【Hadoop学习之二】Hadoop伪分布式安装
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 伪分布式就 ...
- hadoop 伪分布式安装
0. 关闭防火墙 重启后失效 service iptables start ;#立即开启防火墙,但是重启后失效. service iptables stop ;#立即关闭防火墙,但是重启后失效. 重启 ...
- 基于centos6.5 hadoop 伪分布式安装
步骤1:修改IP 地址和主机名: vi /etc/sysconfig/network-scripts/ifcfg-eth0 如果该文件打开为空白文件代表你计算机上的网卡文件不是这个名称“ifcfg-e ...
- Hadoop伪分布式安装步骤(hadoop0.20.2版本)
最近在学习hadoop,自己下了个视频教程,他的教学版本是hadoop0.20.2版本,现在的最新版本都到了3.0了,版本虽然有点老,但是还是学了一下,觉得有借鉴的价值. 不废话了,开始介绍: 先说一 ...
- [大数据] hadoop伪分布式安装
注意:节点主机的hostname不要带"_"等字符,否则会报错. 一.安装jdk rpm -i jdk-7u80-linux-x64.rpm 配置java环境变量: vi + /e ...
- hadoop伪分布式安装
hadoop的伪分布安装:一台实体机或虚拟机的安装. 环境:Windows7.VMWare.CentOS 1.1 设置ip地址 说明:在CentOS中的网络的类型: 仅主机模式:虚拟机在Windows ...
- macbook 下hadoop伪分布式安装
1 准备原材料 1.1 jdk 1.8.0_171(事先安装并配置环境变量HAVA_HOME,PATH) 1.2 Hadoop 2.8.3 2 免密登陆配置(否则安装过程需要不断输入密码) 2.1 ...
随机推荐
- Spark Java创建DataFrame
以前用Python和Scala操作Spark的时候比较多,毕竟Python和Scala代码写起来要简洁很多. 今天一起来看看Java版本怎么创建DataFrame,代码写起来其实差不多,毕竟公用同一套 ...
- VSCode优雅编码
安装eslint 修改eslint配置 rules: { 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off', ...
- [] !== [] is true
这周工作看见一个小伙伴给我私信发了这样的一个问题,我深剖了一下,希望大家能早点脱掉这个坑. Question: 如果定义了一个空数组,在开发过程中经常会做这样的一个判断,就是这个数组里发生变化不再是空 ...
- MonoBehaviour生命周期与对象数据池应用
预热游戏对象: tempObject = Instantiate(cubePrefab) as GameObject ; tempObject .SetActive( false ); 游戏对象tem ...
- Lct 动态链接树
通过树链剖分能了解轻重边 Acdreamer 的博客 http://blog.csdn.net/acdreamers/article/details/10591443 然后看杨哲大大的论文,能了解轻重 ...
- 【Gin-API系列】实现路由分组(七)
在之前的文章介绍中我们已经完成了一个API服务的全链路请求设计.调用方式可以看Test目录的代码 // src/test/request_test.go func TestAPI_Request(t ...
- 15_Python的模块module
1.模块的概述 1.模块是Python程序架构的一个核心概念,每一个以.py结尾的Python源代码文件都是一个模块 2.模块名和标识符的命名规则一样,由数字字母下划线组成且不能以数字开头,也不要和系 ...
- leetcode刷题-40组合总和2
题目 给定一个数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合. candidates 中的每个数字在每个组合中只能使用 ...
- selenium常用webdriver api汇总
1.driver.current_url:用于获得当前页面的URL 2.driver.title:用于获取当前页面的标题 3.driver.page_source:用于获取页面html源代码 4.dr ...
- python 3 continue 循环控制