论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
大数据
›
数据仓库与分析
›
Hadoop伪分布式配置教程
Hadoop伪分布式配置教程
我爱普洱茶
金牌会员
|
2024-9-19 07:38:41
|
显示全部楼层
|
阅读模式
楼主
主题
622
|
帖子
622
|
积分
1866
目次
一、创建Hadoop用户
1.创建Hadoop用户
2.更换用户
二、更新Apt,安装SSH,配置SSH无密码登录
1.更新Apt
2.安装SSH
3.配置SSH无密码登陆
三、安装Java环境
四、安装 Hadoop
1.下载Hadoop
2.安装Hadoop
五、Hadoop单机配置(非分布式)
六、Hadoop伪分布式配置
七、运行Hadoop伪分布式实例
一、创建Hadoop用户
1.
创建Hadoop用户
输入如下命令创建新用户 :
sudo useradd -m hadoop -s /bin/bash
复制代码
这条命令创建了可以登陆的 hadoop 用户,并使用 /bin/bash 作为 shell。
接着使用如下命令设置密码,可简单设置为 hadoop,按提示输入两次密码:
sudo passwd hadoop
复制代码
可为 hadoop 用户增加管理员权限,方便部署,制止一些对新手来说比力棘手的权限问题:
sudo adduser hadoop sudo
复制代码
2.更换用户
关闭终端,注销当前用户,选择Hadoop用户登录
二、更新Apt,安装SSH,配置SSH无密码登录
1.更新Apt
用 hadoop 用户登录后,我们先更新一下 apt,后续我们使用 apt 安装软件,假如没更新可能有一些软件安装不了。按 Ctrl+Alt+T打开终端窗口,执行如下命令:
sudo apt-get update
复制代码
2.安装SSH
安装 SSH server,执行如下命令:
sudo apt-get install openssh-server
复制代码
输入“Y”,按回车继承安装
安装后,可以使用如下命令登陆本机:
ssh localhost
复制代码
输入“yes”,后输入密码按回车即可
3.配置SSH无密码登陆
首先输入以下代码:
exit
复制代码
退出刚才的 ssh localhost
输入以下代码:
cd ~/.ssh/
复制代码
进入到ssh目次中
输入以下代码:
ssh-keygen -t rsa
复制代码
利用ssh-keygen天生密匙
出现提示后,按回车键即可
输入以下代码:
cat ./id_rsa.pub >> ./authorized_keys
复制代码
将密钥加入到授权中
此时再用ssh localhost命令,无需输入密码就可以直接登陆了
ssh localhost
复制代码
三、安装Java环境
输入以下代码,安装Openjdk-8-jdk
sudo apt-get install openjdk-8-jdk
复制代码
输入“Y”,按回车继承安装
输入以下代码,查看已安装的Java版本
java -version
复制代码
输入以下代码,配置Java环境文件
gedit ~/.bashrc
复制代码
在文件最前面添加如下单独一行(注意,等号“=”前后不能有空格),然后保存退出:
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
复制代码
接下来,要让环境变量立刻生效,请执行如下代码:
source ~/.bashrc
复制代码
执行上述命令后,可以检验一下是否设置正确:
echo $JAVA_HOME
java -version
$JAVA_HOME/bin/java -version
复制代码
四、安装 Hadoop
1.下载Hadoop
使用Ubuntu体系内置的Firefix浏览器下载Hadoop-3.2.4
Hadoop下载地址:Index of /apache/hadoop/common/hadoop-3.2.4
2.安装Hadoop
输入以下代码:(注意C要大写)
sudo tar -zxf ~/下载/hadoop-3.2.4.tar.gz -C /usr/local
复制代码
将Hadoop解压安装到/usr/local文件夹内
输入以下代码:
cd /usr/local/
sudo mv ./hadoop-3.2.4/ ./hadoop # 将文件夹名改为hadoop
sudo chown -R hadoop ./hadoop
复制代码
并将文件夹名改为hadoop,和修改文件权限
输入如下命令来检查 Hadoop 是否可用,乐成则会表现 Hadoop 版本信息:
cd /usr/local/hadoop
./bin/hadoop version
复制代码
五、Hadoop单机配置(非分布式)
Grep 例子
将 input 文件夹中的所有文件作为输入,筛选当中符合正则表达式 dfs[a-z.]+ 的单词并统计出现的次数,末了输出效果到 output 文件夹中
cd /usr/local/hadoop
mkdir ./input
cp ./etc/hadoop/*.xml ./input
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+'
cat ./output/*
复制代码
Hadoop 默认不会覆盖效果文件,因此再次运行上面实例会提示堕落,必要先将 ./output 删除。
rm -r ./output
复制代码
六、Hadoop伪分布式配置
Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 中,伪分布式必要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。
修改配置文件 core-site.xml
cd /usr/local/hadoop
gedit ./etc/hadoop/core-site.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
gedit ./etc/hadoop/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 的格式化:
./bin/hdfs namenode -format
复制代码
接着开启 NameNode 和 DataNode 保卫进程
./sbin/start-dfs.sh
复制代码
启动完成后,可以通过命令jps来判断是否乐成启动
jps
复制代码
乐成启动后,可以访问 Web 界面 http://localhost:9870 查看 NameNode 和 Datanode 信息,还可以在线查看 HDFS 中的文件
七、运行Hadoop伪分布式实例
要使用 HDFS,首先必要在 HDFS 中创建用户目次:
cd /usr/local/hadoop
./bin/hdfs dfs -mkdir -p /user/hadoop
复制代码
接着将 ./etc/hadoop 中的 xml 文件作为输入文件复制到分布式文件体系中,即将 /usr/local/hadoop/etc/hadoop 复制到分布式文件体系中的 /user/hadoop/input 中
./bin/hdfs dfs -mkdir input
./bin/hdfs dfs -put ./etc/hadoop/*.xml input
复制代码
复制完成后,可以通过如下命令查看文件列表:
./bin/hdfs dfs -ls input
复制代码
将 input 文件夹中的所有文件作为输入,筛选当中符合正则表达式 dfs[a-z.]+ 的单词并统计出现的次数,末了输出效果到 output 文件夹中
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep input output 'dfs[a-z.]+'
复制代码
查看运行效果的命令(查看的是位于 HDFS 中的输出效果):
./bin/hdfs dfs -cat output/*
复制代码
将运行效果取回到当地:
rm -r ./output
./bin/hdfs dfs -get output ./output
cat ./output/*
复制代码
Hadoop 运行程序时,输出目次不能存在,否则会提示错误
因此若要再次执行,必要执行如下命令删除 output 文件夹:
./bin/hdfs dfs -rm -r output
复制代码
若要关闭 Hadoop,则运行:
./sbin/stop-dfs.sh
复制代码
参考文章:Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0(2.7.1)/Ubuntu14.04(16.04)_厦大数据库实验室博客
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
我爱普洱茶
金牌会员
这个人很懒什么都没写!
楼主热帖
Java 中怎样将 bytes 转换为 long 类型 ...
time.sleep(6)!华为AI生成图片发布会 ...
事务
OpenHarmony轻量系统开发【1】初始Open ...
Python教程:高级特性
如何优雅的备份MySQL数据?看这篇文章 ...
总算给女盆友讲明白了,如何使用stream ...
Taurus .Net Core 微服务开源框架:Adm ...
Welcome to YARP - 8.分布式跟踪
【深入浅出系列】之代码可读性 ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表