在ubuntu上安装hadoop完分布式

准备工作

Xshell安装包

Xftp7安装包

虚拟机安装包

Ubuntu镜像源文件

Hadoop包

Java包

一、安装虚拟机

创建ubuntu系统

完成之后会弹出一个新的窗口

跑完之后会重启一下

按住首先用ctrl+alt+f3进入命令界面,输入root,密码登录管理员账号

按Esc

然后输入

:wq

冒号也要输入

然后找到语言文件

复制代码
vi /etc/default/locale

最后一行加上以下语句后保存

复制代码
LC_ALL=zh_CN.UTF-8
reboot

完成之后

在按ctrl+alt+f1进入图形界面

配置完成之后先关闭虚拟机

先配置网络结构

点击设置

之后点击网络

修改完网络配置之后在重启ubuntu

连接Xshell

说明:需要提前先安装好 Xshell 和 Xftp

输入之后,可能中间会中断一次,不要担心,按enter继续就可以了

​编辑

将 jdk的包(Linux版)

Hadoop的镜像文件(Hadoop的包)

eclipse(linux版)

这几个包从winws转到虚拟机中

开始下一步操作

设置 hostname (3 个虚拟机都设置)

hostname 设置计划

主节点:master

从节点 1:slave1

从节点 2:slave2

切换到 root 用户

复制代码
su - //切换root用户

修改 hostname

复制代码
vi /etc/hostname

删掉原有内容,写入:master

按ESC

输入 :wq 分号也要输入

重启后显示新的 hostname

切换到hadoop用户

复制代码
su hadoop

允许hadoop用户使用超级权限(superprivileges,也称root权限)

注意:默认情况下,不允许普通用户使用超级权限,如果以sudo

作为开头输入指令,会出现如下提示,告知当前用户不在允许使用超级权限的文件内。

需要将当前用户添加到sudoers文件中。

切换到root用户

复制代码
su -

编辑/etc/sudoers文件

复制代码
vi /etc/sudoers

移动到文件底部,在rootALL=(ALL) ALL下添加:

username\]ALL=(ALL) ALL 添加后强制保存:wq! 退出。使用exit指令退出root用户(会返回到hadoop用户) exit ![](https://file.jishuzhan.net/article/1765607908348792833/e881df0762f26d3d784e2363a3ac8239.webp) 4. **关闭防火墙** **(3个虚拟机都设置)** 查看防火墙运行状态,返回running表示防火墙正在运行中。 sudo ufw status ![](https://file.jishuzhan.net/article/1765607908348792833/520d94baad13d05c6232272c281220c8.webp) ​ 临时关闭防火墙(系统重启后防火墙又会自动启动) sudo systemctl stop ufw.service 需要禁止防火墙自动启动(永久关闭) sudo systemctl disable ufw.service 查看防火墙运行状态,返回running表示防火墙正在运行中。 sudo ufw status 如果终端输出"Status: inactive",则表示防火墙已成功关闭。 ![](https://file.jishuzhan.net/article/1765607908348792833/e8121106c41b041117657b095d72e4ad.webp) **(5)设置IP地址** **(3个虚拟机都设置)** 注意:网段必须与VMnet8子网IP的网段保持一致,网段中xxx.xxx.xxx.1和xxx.xxx.xxx.2(网关(GATEWAY))这两个地址不能使用。例:本机的VMnet8网段为192.168.56.0,则192.168.56.1和192.168.56.2不能使用。可选的IP地址范围为:192.168.56.3-192.168.56.255。 IP地址分配计划 master 192.168.56.3 slave1 192.168.56.4 slave2 192.168.56.5 有命令和窗口页面两种操作方式 窗口页面操作 ![](https://file.jishuzhan.net/article/1765607908348792833/7d555c0707e766202f8a4936044bca71.webp) 点击设置(setting) ![](https://file.jishuzhan.net/article/1765607908348792833/d7deff748838010d8b3d433efebc622d.webp) ![](https://file.jishuzhan.net/article/1765607908348792833/71815ef8602e2aba2caab3b8aec01d1a.webp) ![](https://file.jishuzhan.net/article/1765607908348792833/10554ff77d4e50f966734d0a9a37d863.webp) 按照下面的图片内容填写 ![](https://file.jishuzhan.net/article/1765607908348792833/bbf9028db142257c5d16be69513234d9.webp) 查看IP地址 ip addr show ![](https://file.jishuzhan.net/article/1765607908348792833/9314829bc3bb514361e1727ad992f682.webp) **6)设置每台主机hostname到IP的映射关系** **3个虚拟机都设置)** sudo vi /etc/hosts ![](https://file.jishuzhan.net/article/1765607908348792833/48c2a69e6032b5715fba5a7f6c28f4ed.webp) **(** 在配置文件中追加3行 192.168.126.3 master 192.168.126.4 slave1 192.168.126.5 slave2 测试hostname是否可用 sudo vi /etc/hosts ![](https://file.jishuzhan.net/article/1765607908348792833/d357a28c24275969def6143d96dcab66.webp) 终止按钮 ctrl c ![](https://file.jishuzhan.net/article/1765607908348792833/34a36df685abd11ce633b01dfd1fa850.webp) **配置SSH免密登录** **(1)生成秘钥对** ssh-keygen -t rsa ![](https://file.jishuzhan.net/article/1765607908348792833/ca8b2353d95399b356559071da510eb3.webp) **2)发送公钥** **先发给自己(装完三个节点之后在发送给slave1、slave2)** 将master节点上hadoop用户的公钥发给各个节点的hadoop用户(包括自己) 在这样说明一点,要将三台hadoop配置完毕之后在发送其它两台的,下面的代码 要在master节点下一行一行输入 正在途中还要输入yes,密码, ssh-copy-id -i /home/hadoop/.ssh/id_rsa.pub hadoop@master ssh-copy-id -i /home/hadoop/.ssh/id_rsa.pub hadoop@slave1(slave1节点装完在输入) ssh-copy-id -i /home/hadoop/.ssh/id_rsa.pub hadoop@slave2(slave2节点装完在输入) ![](https://file.jishuzhan.net/article/1765607908348792833/04dfd5723573edfce2963b09581334a4.webp) ![](https://file.jishuzhan.net/article/1765607908348792833/ef40e0b64f55ec067ccbdf34bd9c5cd2.webp) ![](https://file.jishuzhan.net/article/1765607908348792833/b0ebc0ee49d06a74cc4303f31e0da277.webp) **3)测试免密登录** ssh master ![](https://file.jishuzhan.net/article/1765607908348792833/d1e5cb7b489550f2ae7ea72b157bd082.webp) (1)安装jdk和hadoop 先解压文件 输入代码 jdk-8u301-linux-x64.tar.gz 是文件名,要改成自己的文件名 hadoop-2.10.1.tar.gz 是文件名,要改成自己的文件名 tar -zxvf jdk-8u301-linux-x64.tar.gz tar -zxvf hadoop-2.10.1.tar.gz ![](https://file.jishuzhan.net/article/1765607908348792833/97138604b70e8d55b7a4ccab241dee70.webp) ![](https://file.jishuzhan.net/article/1765607908348792833/3e25ed21fac56a8cbc4faa1772c3ec17.webp) 移动至/usr/local 路径下 移动jdk sudo mv jdk1.8.0_301 /usr/local/jdk1.8.0 移动hadoop sudo mv hadoop-2.10.1 /usr/local/ 安装 vim 编辑器,不安装的话可以使用自带的 vi 编辑器 (功能相对少) sudo apt install vim 打开环境变量配置文件 sudo vim /etc/profile ![](https://file.jishuzhan.net/article/1765607908348792833/6e75aef5f9af8e217422dff9142c6f62.webp) 在文件末尾插入以下定义 export JAVA_HOME=/usr/local/jdk1.8.0 export HADOOP_HOME=/usr/local/hadoop-2.10.1 export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin 按Esc 然后输入 :wq $ source /etc/profile 测试是否配置成功 测试Hadoop是否安装完成 hadoop version 测试Java是否安装完成 java -version ![](https://file.jishuzhan.net/article/1765607908348792833/9d74f89f9fb89aea2e9142fa768be379.webp) 配置Hadoop 建立保存临时目录的路径 sudo mkdir -p /usr/data/hadoop/tmp Hadoop 默认启动的时候使用的是系统下的 /temp 目录下,但 是在每一次重启的时候系统都会将其自动清空 ,如果没有临 时的储存目录有可能会在下一次启动 Hadoop 的时候出现 问题。 为防止 Hadoop 运行时出现权限的问题,需要将/usr/data 目 录及其子目录的拥有者全部从 root 改为用户名。 (这里以本机用户名 silin 为例。) sudo chown sillin:silin -R /usr/data **(4)Hadoop分布式配置(master节点)** 进入hadoop安装文件下的/etc/hadoop/文件夹中。 cd /usr/local/hadoop-2.10.1/etc/hadoop 配置hadoop-env.sh脚本文件 将${JAVA_HOME}改为jdk的实际安装路径 vi hadoop-env.sh 将${JAVA_HOME}改为jdk的实际安装路径 ![](https://file.jishuzhan.net/article/1765607908348792833/43e3be3859706176f5fa362b077d9cb8.webp) 配置core-site.xml配置文件 vi core-site.xml hadoop.tmp.dir /usr/data/hadoop/tmp fs.defaultFS hdfs://hostname:9000 ![](https://file.jishuzhan.net/article/1765607908348792833/5739c1bb69750a20d835d1b520490e3f.webp) 配置hdfs-site.xml的配置文件 vi hdfs-site.xml dfs.replication 2 dfs.permissions false ![](https://file.jishuzhan.net/article/1765607908348792833/bdba8762e7c730cfdc964f85c97f12a3.webp) 将mapred-site.xml.template更名为mapred-site.xml并编辑 cp mapred-site.xml.template mapred-site.xml vi mapred-site.xml mapreduce.framework.name yarn ![](https://file.jishuzhan.net/article/1765607908348792833/6ef86e682d0a15796d0c61546cba3346.webp) 配置yarn-site.xml vi yarn-site.xml yarn.resourcemanager.hostname hostname yarn.nodemanager.aux-services mapreduce_shuffle ![](https://file.jishuzhan.net/article/1765607908348792833/5726b8f94874f259783fbe7c5001f64a.webp) vi slaves ![](https://file.jishuzhan.net/article/1765607908348792833/67a1fa11884216ba2e6ac6f01757568d.webp) 到这里master节点就完成了 但是我们需要配置三个节点 要用到虚拟机里面的复制 ![](https://file.jishuzhan.net/article/1765607908348792833/2125978426f90c7f4f02df3b935ff062.webp) ![](https://file.jishuzhan.net/article/1765607908348792833/492a22e6c5d7dfbfa27fa91fb622d0b1.webp) ![](https://file.jishuzhan.net/article/1765607908348792833/031eb77681d99fc37a138cf727bc0dcf.webp) 一定要选完全复制 ![](https://file.jishuzhan.net/article/1765607908348792833/348e9860f2beac5dff378866ea54ba6e.webp) 点击完成就行了 复制两份 要改里面的hostname,和hostname的文件 **(5)格式化namenode** hdfs namenode -format ![](https://file.jishuzhan.net/article/1765607908348792833/42e5578aae534a7651771dd693815690.webp) (9)启动(第一次启动需要输入yes) start-dfs.sh start-yarn.sh ![](https://file.jishuzhan.net/article/1765607908348792833/ceb39b99c64a8e1287412c7a4999bdc6.webp) 输入jps确认 jps Master节点 ![](https://file.jishuzhan.net/article/1765607908348792833/d002713aaaefc6e9e91fd3d3f21dcc9d.webp) Slave1节点 ![](https://file.jishuzhan.net/article/1765607908348792833/9009eb295f204a3e550b660e21fc2cd3.webp) Slave2节点 ![](https://file.jishuzhan.net/article/1765607908348792833/2866de0e68355d1010e37dbe27495427.webp) 参考链接: [在ubuntu上安装hadoop完分布式-CSDN博客](https://blog.csdn.net/weixin_66547608/article/details/136432935?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522170945430716800213055080%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=170945430716800213055080&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-5-136432935-null-null.nonecase&utm_term=hadoop&spm=1018.2226.3001.4450 "在ubuntu上安装hadoop完分布式-CSDN博客") [在Centos7下安装Hadoop的完全分布_在ubantu上下载hadoop-CSDN博客](https://blog.csdn.net/weixin_66547608/article/details/129461969?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522170945430716800213055080%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=170945430716800213055080&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-4-129461969-null-null.nonecase&utm_term=hadoop&spm=1018.2226.3001.4450 "在Centos7下安装Hadoop的完全分布_在ubantu上下载hadoop-CSDN博客") [如何在Ubuntu下安装伪分布hadoop_ubantu hadoop伪分布式-CSDN博客](https://blog.csdn.net/weixin_66547608/article/details/129131447?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522170945430716800213055080%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=170945430716800213055080&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-3-129131447-null-null.nonecase&utm_term=hadoop&spm=1018.2226.3001.4450 "如何在Ubuntu下安装伪分布hadoop_ubantu hadoop伪分布式-CSDN博客")

相关推荐
小卡车5551 分钟前
MySQL5.7递归查询
数据库
匹马夕阳12 分钟前
(二十二)安卓开发中的数据存储之SQLite简单使用
android·数据库·sqlite
Always_away41 分钟前
数据库系统概论|第三章:关系数据库标准语言SQL—课程笔记4
数据库·笔记·sql·学习
cg501742 分钟前
Spring Boot 中的自动配置原理
java·前端·数据库
杭州杭州杭州1 小时前
ubuntu 18.04安装tomcat,zookeeper,kafka,hadoop,MySQL,maxwell
hadoop·mysql·ubuntu·zookeeper·kafka·tomcat
程序猿John2 小时前
Mysql读写分离(2)-中间件mycat和实践方案
数据库·mysql·中间件
FreeBuf_2 小时前
美国国土安全部终止资助,CVE漏洞数据库项目面临停摆危机
数据库·安全·web安全
kinlon.liu2 小时前
使用Redis实现分布式限流
数据库·redis·分布式·缓存
神经星星3 小时前
覆盖40+主流模型及数据集,上海交大团队发布一站式蛋白质工程设计平台VenusFactory,一键部署教程已上线
数据库·人工智能·算法
uwvwko4 小时前
ctfshow——web入门191~194
前端·数据库·mysql·安全·ctf