实验环境:
虚拟化软件:VMware® Workstation 16 Pro
镜像:ubuntu-22.04.2-live-server-amd64.iso
Hadoop版本:hadoop-3.3.4.tar.gz
ubuntu镜像链接
hadoop文件链接
-
配置虚拟机
(1)新建虚拟机,选择实验镜像【ubuntu-22.04.2-live-server-amd64.iso】
(2)调整硬件配置,配置如图
-
安装操作系统
(1)选择虚拟机语言,键盘布局
语言:English
键盘布局:美式键盘(ANSI)布局
(2)选择安装类型
保持默认选择 Ubuntu Server,选择 Done 继续
(3)网络配置
在 NAT 模式下,默认采用 DHCP 方式为虚拟机动态分配 IP 地址,我们需要让虚拟机主动“认领”属于自己的静态 IP 地址。
1)记录当前ip地址:192.168.110.142/24
记录当前ip地址是为了确定网络前缀,如本机的网络前缀为192.168.110,方便后续配置子网掩码和网关。
2)设置网络
·使用方向键选中图1所示界面的 [ens33 eth – ▶︎],回车进入子菜单
·选择 Edit IPv4
·选择 Automatic (DHCP)
·选择 Manual
·填写所有字段,保持 IPv4 地址前三段不变:
·选择 Save 保存设置
·等待屏幕底部 Applying changes 动画消失后,选择 Done 完成网络配置
3)代理服务器设置
代理服务器在使用企业网络时通常有用,本实验不需要,直接选择 Done 继续实验。
4)镜像源配置,使用中国科学技术大学的开源软件镜像源,填入以下地址:
http://mirrors.ustc.edu.cn/ubuntu
(4)磁盘格式化
1)进入硬盘格式化页面,使用方向键移动到【 [ ] Set up this disk as an LVM group 】上,按回车键取消勾选,随后继续至下一页。
2)检查格式化配置
(5)用户配置 设置管理员用户名supper,密码1234,主机名称namenode
(6)其他配置
1)是否升级到Ubuntu Pro
不需要 Ubuntu Pro 的功能,选择 Skip for now.
2)在新的页面,选择 【[ ] Install OpenSSH server】,按回车键勾选
3)下一个页面会询问我们是否需要一些主流环境。按下 Tab 键,选择 Done.
(7)系统安装
等待系统安装完成,系统安装完后重启
(8)登陆到系统
- 安装hadoop
(1)创建hadoop用户,并设置密码
【sudo adduser hadoop】
(2)创建 Hadoop 安装目录 【sudo mkdir /usr/local/hadoop】
(3)将本机的hadoop-3.3.4.tar.gz移入虚拟机
1)打开cmd,输入命令:
【scp hadoop-3.3.4.tar.gz super@192.168.178.100:/tmp】
2)将安装包移入创建的hadoop安装目录中
【sudo mv /tmp/hadoop-3.3.4.tar.gz /usr/local/hadoop】
3)前往hadoop目录 【cd /usr/local/hadoop】
4)解压压缩包
【sudo tar -zxf hadoop-3.3.4.tar.gz】
5)将压缩包内容移入上一级目录,并将文件夹【hadoop-3.3.4】删除
【sudo mv hadoop-3.3.4/* .】
【sudo rm -r hadoop-3.3.4】
6)赋予用户hadoop读取hadoop文件夹的权限
【sudo chown -R hadoop:hadoop .】
(4)修改profile
【sudo nano /etc/profile.d/hadoop.sh】
添加以下内容
export HADOOP_HOME=/usr/local/hadoop export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADOOP_HOME/sbin
(5)应用变更 【source /etc/profile】
- 安装Java
(1)安装 OpenJDK 包
【sudo apt -y install openjdk-8-jdk】
(2)修改 Hadoop 运行环境配置
【sudo nano /usr/local/hadoop/etc/hadoop/hadoop-env.sh】
修改JAVA_HOME环境变量,如图
- Hadoop配置
(1)切换到hadoop用户
【su – hadoop】
(2)进入hadoop目录
【cd $HADOOP_HOME/etc/hadoop】
(3)修改配置文件
1)core-site.xml文件
执行【nano core-site.xml】,在【】块内填写以下信息
<configuration> <!-- Namenode address --> <property> <name>fs.defaultFS</name> <value>hdfs://namenode:8020</value> </property> <!-- Hadoop data location --> <property> <name>hadoop.tmp.dir</name> <value>/usr/local/hadoop/data</value> </property> <!-- Static user - no login needed --> <property> <name>hadoop.http.staticuser.user</name> <value>hadoop</value> </property> </configuration>
2)hdfs-site.xml文件
执行【nano hdfs-site.xml】,在【】块内填写以下信息
<configuration> <property> <name>dfs.namenode.http-address</name> <value>namenode:9870</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>datanode2:9868</value> </property> </configuration>
3)yarn-site.xml文件
执行【nano yarn-site.xml】,在【】块内填写以下信息
<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>datanode1</value> </property> <property> <name>yarn.nodemanager.env-whitelist</name> <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value> </property> </configuration>
4)mapred-site.xml文件
执行【nano mapred-site.xml】,在【】块内填写以下信息
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
(4)修改workers文件
【nano workers】
移除【localhost】
添加以下内容
namenode datanode1 datanode2
(5)配置网络
1)登录supper用户,修改hosts文件
【sudo nano /etc/hosts】
2)在hosts文件中添加以下两行
192.168.178.101 datanode1 192.168.178.102 datanode2
(6)关机
(7)克隆虚拟机
克隆namenode为datanode1和datanode2
1)datanode1开机,登录到supper用户
2)修改主机名为datanode1
【sudo hostnamectl set-hostname datanode1】
3)修改IP设置
【sudo nano /etc/netplan/00-installer-config.yaml】
将【addresses:】下的192.168.110.100修改为datanode1的IP地址192.168.110.101
4)重启虚拟机
【sudo reboot】
5)登录到supper用户,输入命令验证IP是否修改
【ip addr】
同理,修改datanode2的主机名为datanode2,修改datanode2的IP为192.168.110.102
(8)同时运行三台虚拟机,并登陆到hadooop用户
(9)三台主机执行命令生成密钥对
【ssh-keygen -t ed25519】
(10)三台主机各自执行命令
【ssh-copy-id namenode】
【ssh-copy-id datanode1】
【ssh-copy-id datanode2】
5. 启动集群
(1)在namenode结点上用hadoop用户登录并格式化HDFS,启动集群
【hdfs namenode -format】
【start-dfs.sh】
(2)在datanode1结点用hadoop用户登录,启动yarn
【start-dfs.sh】
7. Hadoop搭建完成
(1)HDFS控制面板
在浏览器输入进入如下网址hdfs控制面板
【http://192.168.110.100:9870】
注意192.168.110.100是我的namenode节点的IP地址
(2)YARN控制面板 在浏览器输入进入如下网址yarn控制面板 【http://192.168.110.101:8088】
(3)Hadoop集群部署成功!
原文链接:https://blog.csdn.net/junqiduhang/article/details/129283028