Hadoop伪分布式安装配置 图文保姆级教程—全网最全
文章目录
声明一点,尽量跟着所有步骤一起来做,不要跳过其他步骤,比如你安装了Ubuntu,直接开始第三个Hadoop集群安装,那么我不知道你有没有下载相关的远程传输工具,其次我的Ubuntu也是英文的,所以尽量跟着我的步骤一步一步来
一、安装前需要
1.VMware安装配置:
个人博客:https://duanyx.blog.csdn.net/article/details/136539021
2.相关Hadoop软件包下载
(1)jdk-8u162-linux-x64.tar
(2)hadoop-3.1.3.tar
已分享到百度网盘:
链接:https://pan.baidu.com/s/1090ZBEQ2AFe3ZEfpuja6ig?pwd=0616
提取码:0616
3.Ubuntu镜像下载
(1).使用国内镜像下载清华大学开源软件镜像站
(2).跳转到网址后下滑页面选择 >>> ubuntu-releases
(3).根据个人体验,推荐选择20.04版本 >>> (点击)下图框住内容即可
(4).选择“ubuntu-20.04.4-desktop-amd64.iso”进行下载 >>> (点击)下图框住内容即可
(5).下载后记得放置合适的位置,尽量不要放在C盘
到这里前期的准备工作就做好了,有的教程会让你安装一些远程传输工具,Ubuntu系统中其实自带的
二、Ubuntu系统安装
前提声明:已安装可忽略此步(但要有远程传输VMwareTools,和英文版的Ubuntu)
1.创建文件夹(此步为让大家安装方便,可忽略)
我在D盘放置了一个:软件,然后里面放置了一个:VMware,然后VMware中放置一个:虚拟机-Hadoop1,虚拟机Hadoop2,虚拟机镜像三个文件
不要管《虚拟机-Ubuntu》那两个文件,是我之前安装好的,看红框框即可
2.文件操作
把下载好的镜像文件放置虚拟机镜像文件中
3.打开Vmware
4.点击创建新的虚拟机
5.选择自定义
6.默认操作
7.稍后安装
8.选择Linux,Ubuntu64位
9.放置在D:\软件\VMware\虚拟机-Hadoop1文件中
10.自定义下一步即可
11.使用网络地址转换
12.默认推荐即可
13.创建新虚拟磁盘
14.将虚拟机拆分成多个文件
此步中,有的教程是单文件,其实都可以,无伤大雅
15.下一步,默认选择即可
16.选择自定义硬件
17.在CD/DVD中,使用ISO映像文件,选择安装好的镜像地址,并选择启动时连接
如果不选择这一步,可能会导致虚拟机找不到镜像而无法启动
18.开启虚拟机,点击绿色小标箭头即可
18.等待启动
19.选择语言,默认English,就选择Englis,然后点击Install Ubuntu
20.点击右下角Continue
21.点击右下角Continue
22.点击Install Now
23.点击Continue
24.点击咋们国家的地图,显示:ShangHai,然后点击Continue
25.按照下图配置
Your name和Your computer’s name,这里就按照我的来,因为大部分教程都是在你创建你自己的用户之后又重新创建名称为:Hadoop的用户,并且把computer’s name改为了Master,这里直接改,就避免多此一举了
最后选择Log in automatically(自动登陆)
点击continue
26.等待Install,这里会比较慢
27.选择重启:Restart Now
注:到了黑框框的界面的之后记得回车一下,这里没有截图上
28.重启后Ubuntu系统就安装好了
到这里Ubuntu系统就安装好了,下面是对Hadoop集群的配置
三、Hadoop单机+伪分布式配置
好多博客都会让你在开始配置的时候创建一个叫Hadoop的用户,然后修改主机名为:Master
这里咋们再下载安装Ubuntu系统的时候就已经配置好了,没必要再多余创建用户(每次开机切换登陆也很麻烦)
1.更新apt
更新一下 apt,后续我们使用 apt 安装软件,如果没更新可能有一些软件安装不了。
按 ctrl+alt+t 打开终端窗口,执行如下命令:
sudo apt-get update
输入命令后输入用户密码即可执行操作
2.安装Vim
vim是文本编辑器,用于对文件的操作
sudo apt-get install vim
输入命令后输入Y确定即可
3.安装SSH
输入命令后,会提示输入:Y
sudo apt-get install openssh-server
安装后,可以使用如下命令登陆本机:
ssh localhost
此时会有如下提示(SSH首次登陆提示),输入 yes 。然后按提示输入密码 ,这样就登陆到本机了。
4.配置SSH无密码登陆
但这样登陆是需要每次输入密码的,我们需要配置成SSH无密码登陆比较方便。
退出刚才的 ssh
exit
回到我们原先的终端窗口
cd ~/.ssh/
利用 ssh-keygen 生成密钥,会有提示,都按回车就可(大概3个)
ssh-keygen -t rsa
并将密钥加入到授权中
cat ./id_rsa.pub >> ./authorized_keys # 加入授权
在使用ssh localhost即可无密码登陆
ssh localhost
5.安装Java环境
注:这里的安装包下载链接都在文章开头
在安装java和hadoop时都需要使用Vmwaretools工具,跟着上述的UbUntu系统安装,VmwareTools是安装好的,这里直接使用
把下载好的jdk-8u371-linux-x64.tar.gz下载到本地电脑,保存在虚拟机的“/home/linziyu/Downloads/”目录下。
点击桌面的hadoop文件
点击Downloads文件
如图所示
直接把下载好的压缩包拖动到虚拟机的Downloads文件夹内
为了下面hadoop安装的方便,也把下载好的hadoop的安装包拖动到Downloads文件夹内
如图所示
cd /usr/lib
创建/usr/lib/jvm目录用来存放JDK文件
sudo mkdir jvm
进入hadoop用户的主目录
cd ~
进入到Downloads目录下
cd Downloads
把JDK文件解压到/usr/lib/jvm目录下
sudo tar -zxvf ./jdk-8u162-linux-x64.tar.gz -C /usr/lib/jvm
JDK文件解压缩以后,可以执行如下命令到/usr/lib/jvm目录查看一下
cd /usr/lib/jvm
ls
在/usr/lib/jvm目录下有个jdk1.8.0_162目录。下面继续执行如下命令,设置环境变量
cd ~
vim ~/.bashrc
上面命令使用vim编辑器打开了hadoop这个用户的环境变量配置文件,请在这个文件的开头位置,添加如下几行内容
(“i”,进入编辑)
(编辑完成后,先Esc,然后输入:wq,回车)
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
保存.bashrc文件并退出vim编辑器。然后,继续执行如下命令让.bashrc文件的配置立即生效
source ~/.bashrc
这时,可以使用如下命令查看是否安装成功
java -version
如果能够在屏幕上返回如下信息,则说明安装成功
至此,就成功安装了Java环境。下面就可以进入Hadoop的安装。
6.安装Hadoop
解压到/usr/local中
sudo tar -zxf ~/downloads/hadoop-3.1.3.tar.gz -C /usr/local
将文件夹名改为hadoop
cd /usr/local/
sudo mv ./hadoop-3.1.3/ ./hadoop
修改文件权限
sudo chown -R hadoop ./hadoop
Hadoop 解压后即可使用。输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息,如下图所示。
cd /usr/local/hadoop
./bin/hadoop version
7.单机配置(非分布式)
此步骤为单机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-3.1.3.jar grep ./input ./output 'dfs[a-z.]+'
cat ./output/* # 查看运行结果
注意,Hadoop 默认不会覆盖结果文件,因此再次运行上面实例会提示出错,需要先将 ./output 删除
rm -r ./output
8.伪分布式配置
Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。
Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 中,伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。
修改配置文件 core-site.xml
gedit ./etc/hadoop/core-site.xml
将当中的
<configuration>
</configuration>
修改为下面配置:
<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>
</configuration>
修改为下面配置:
<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>
Hadoop配置文件说明:
Hadoop 的运行方式是由配置文件决定的(运行 Hadoop 时会读取配置文件),因此如果需要从伪分布式模式切换回非分布式模式,需要删除 core-site.xml 中的配置项。
此外,伪分布式虽然只需要配置 fs.defaultFS 和 dfs.replication 就可以运行(官方教程如此),不过若没有配置 hadoop.tmp.dir 参数,则默认使用的临时目录为 /tmp/hadoo-hadoop,而这个目录在重启时有可能被系统清理掉,导致必须重新执行 format 才行。所以我们进行了设置,同时也指定 dfs.namenode.name.dir 和 dfs.datanode.data.dir,否则在接下来的步骤中可能会出错。
配置完成后,执行 NameNode 的格式化:
cd /usr/local/hadoop
./bin/hdfs namenode -format
格式化后结果:
接着开启 NameNode 和 DataNode 守护进程。
cd /usr/local/hadoop
./sbin/start-dfs.sh #start-dfs.sh是个完整的可执行文件,中间没有空格
使用jps验证是否安装成功
jps
使用网址检查:http://localhost:9870
在系统的Firefox浏览器中输入http://localhost:9870
出现页面:
当四个节点同时出现并且网址正常,说明Hadoop伪分布式的安装就成功了
版权归原作者 VitalityBlend 所有, 如有侵权,请联系我们删除。