发布时间:2023-05-19 14:30
官网 http://hadoop.apache.org/
快速入门 http://hadoop.apache.org/docs/r1.0.4/cn/quickstart.html
在线文档 http://tool.oschina.net/apidocs/apidoc?api=hadoop
易百教程 https://www.yiibai.com/hadoop/
W3Cschool教程 https://www.w3cschool.cn/hadoop/?
1、操作系统 CentOS-7-x86_64-Minimal-2003.iso
下载地址
https://vault.centos.org/
虚拟机安装过程参考:
https://blog.csdn.net/llwy1428/article/details/89328381
安装4台虚拟机
Master:1台 2G内存 1核CPU
Slave :3台 2G内存 1核CPU
2、JDK版本:jdk1.8
安装配置过程
https://blog.csdn.net/llwy1428/article/details/111144659
3、工具:xshell5
4、VMware 版本:VMware Workstation Pro15
5、Hadoop:3.3.0
下载地址
https://mirror.bit.edu.cn/apache/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz
https://mirrors.bfsu.edu.cn/apache/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz
https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz
IP | 主机名 | 内存 | CPU | 磁盘 |
192.168.11.21 | master | 2G | 2核 | 50G |
192.168.11.22 | slave1 | 2G | 2核 | 50G |
192.168.11.23 | slave2 | 2G | 2核 | 50G |
192.168.11.24 | slave3 | 2G | 2核 | 50G |
1、虚拟机安装(安装4台虚拟机)
参考 https://blog.csdn.net/llwy1428/article/details/89328381
2、每台虚拟机均接入互联网(4个节点均要配置好网卡)
网卡配置可参考:
https://blog.csdn.net/llwy1428/article/details/85058028
3、修改主机名(4个节点均要修改主机名)
编辑集群中的各个节点主机名(以第一个节点 master 为例,slave1、slave2、slave3 略)
[root@localhost ~]# hostnamectl set-hostname master
4、JDK8环境安装配置(4个节点均要搭建)
安装配置过程
https://blog.csdn.net/llwy1428/article/details/111144659
5、配置防火墙(4个节点均要操作)
关闭防火墙,并设置开机禁止启动
关闭防火墙 : systemctl stop firewalld
查看状态 : systemctl status firewalld
开机禁用 : systemctl disable firewalld
6、配置静态IP
此处以 master 节点为例(其他节点 略):
[root@master ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
说明:红框内为修改、增加的部分
可参考:https://blog.csdn.net/llwy1428/article/details/85058028
7、配置 hosts 文件
此处以 master 节点为例:
[root@master ~]# vim /etc/hosts
8、安装基本工具
[root@master ~]# yum install -y vim lrzsz ntp zip unzip wget zip unzip net-tools tree java-1.8.0-openjdk-devel
(根据自身的网络情况,可能需要等待几分钟)
9、配置节点间免密登录
具体步骤参照:
https://blog.csdn.net/llwy1428/article/details/85911160
https://blog.csdn.net/llwy1428/article/details/85641999
10、集群各节点修改系统文件打开数
此处以 master 节点为例:
[root@master ~]# vim /etc/security/limits.conf
参考
https://blog.csdn.net/llwy1428/article/details/89389191
11、集群各节点配置时间同步
本文以阿里时间服务器为准,阿里云时间服务器地址:ntp6.aliyun.com
说明:如有专用时间服务器,请更改时间服务器的主机名或者IP地址,主机名需要在etc/hosts文件中做好映射。
以 master 节点为例:
设置系统时区为东八区(上海时区)
[root@master ~]# timedatectl set-timezone Asia/Shanghai
关闭ntpd服务
[root@master ~]# systemctl stop ntpd.service
设置ntpd服务禁止开机启动
[root@master ~]# systemctl disable ntpd
设置定时任务
[root@master ~]# crontab -e
写入以下内容(每10分钟同步一下阿里云时间服务器):
0-59/10 * * * * /usr/sbin/ntpdate ntp6.aliyun.com
重启定时任务服务
[root@master ~]# /bin/systemctl restart crond.service
设置定时任务开机启动
[root@master ~]# /bin/systemctl enable crond.service
集群中其他各个节点同 master 节点。
参考 https://blog.csdn.net/llwy1428/article/details/89330330
12、集群各节点禁用SELinux
以 master 节点为例:
[root@master ~]# vim /etc/selinux/config
修改如下内容后,保存并退出 :wq
集群中其他各个节点同 master 节点。
13、集群各节点禁用Transparent HugePages
参考 https://blog.csdn.net/llwy1428/article/details/89387744
14、配置系统环境为UTF8
以 master 节点为例:
[root@master ~]# echo \"export LANG=zh_CN.UTF-8 \" >> ~/.bashrc
[root@master ~]# source ~/.bashrc
集群中其他各个节点同 master 节点。
1、在每个节点上创建目录(slave1、slave2、slave3 均创建)
[root@master ~]# mkdir -p /usr/bigdata
2、下载 hadoop 安装文件
[root@master bigdata]# wget https://mirror.bit.edu.cn/apache/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz
3、解压文件
[root@master bigdata]# tar zxvf hadoop-3.3.0.tar.gz
4、查看目录
5、配置 HADOOP_HOME
[root@master ~]# vi /etc/profile
export HADOOP_HOME=\"/usr/bigdata/hadoop-3.3.0\"
PATH=$PATH:$HADOOP_HOME/bin
6、使配置生效并查看
[root@master ~]# source /etc/profile
[root@master ~]# echo $HADOOP_HOME
/usr/bigdata/hadoop-3.3.0
7、修改 HDFS 的配置文件
[root@master ~]# vim /usr/bigdata/hadoop-3.3.0/etc/hadoop/hadoop-env.sh
修改配置
export JAVA_HOME=/usr/lib/jvm/java-1.8.0
export HADOOP_HOME=/usr/bigdata/hadoop-3.3.0
8、创建目录
[root@master ~]# mkdir /usr/bigdata/hadoop-3.3.0/tmp
[root@master ~]# mkdir /usr/bigdata/hadoop-3.3.0/logs
9、指定 HDFS 主节点
[root@master ~]# vim /usr/bigdata/hadoop-3.3.0/etc/hadoop/core-site.xml
编辑内容
dfs.defaultFS
hdfs://master:9820
hadoop.tmp.dir
/usr/bigdata/hadoop-3.3.0/tmp
10、配置 hdfs-site.xml
[root@master ~]# vim /usr/bigdata/hadoop-3.3.0/etc/hadoop/hdfs-site.xml
dfs.replication
2
dfs.namenode.secondary.http-address
master:9821
dfs.permissions.enabled
false
11、编辑 workers 文件
[root@master ~]# vim /usr/bigdata/hadoop-3.3.0/etc/hadoop/workers
slave1
slave2
slave3
12、修改启动脚本 start-dfs.sh
[root@master ~]# vim /usr/bigdata/hadoop-3.3.0/sbin/start-dfs.sh
在开始位置加入(因为我的环境是基于 root 用户搭建的开发、测试环境,如果不配置 HDFS 相关的 root 启动权限,HDFS会默认使用 hdfs 用户启动,在 root 用户下会启动失败,提示权限不足 )
HDFS_DATANODE_USE=root
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
HDFS_DATANODE_SECURE_USER=root
13、修改停止脚本 stop-dfs.sh
[root@master ~]# vim /usr/bigdata/hadoop-3.3.0/sbin/stop-dfs.sh
在开始加入如下内容,原因同上
HDFS_DATANODE_USE=root
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
HDFS_DATANODE_SECURE_USER=root
14、修改脚本 hdfs
[root@master ~]# vim /usr/bigdata/hadoop-3.3.0/bin/hdfs
在最前面加上
HADOOP_SHELL_EXECNAME=\"root\"
15、把 master 上配置好的 hadoop 文件发售到其它各个节点
[root@master ~]# scp -r /usr/bigdata/hadoop-3.3.0 root@slave1:/usr/bigdata/
[root@master ~]# scp -r /usr/bigdata/hadoop-3.3.0 root@slave2:/usr/bigdata/
[root@master ~]# scp -r /usr/bigdata/hadoop-3.3.0 root@slave3:/usr/bigdata/
16、在其他各个节点上配置 HADOOP_HOME
略
17、在 master 节点上格式化
[root@master ~]# hdfs namenode -format
18、启动 HDFS 服务
[root@master ~]# /usr/bigdata/hadoop-3.3.0/sbin/start-dfs.sh
查看启动状态
19、停止 HDFS 服务
[root@master ~]# /usr/bigdata/hadoop-3.3.0/sbin/stop-dfs.sh
# 查看目录
hdfs dfs -ls /
# 创建目录
hdfs dfs -mkdir /hadoop
# 上传文件
hdfs dfs -put /opt/text.txt /hadoop
# 删除目录
hdfs dfs -rm -r /hadoop
1:创建目录;2:创建文件并上传 hdfs
查看启动状态
[root@master ~]# netstat -lntp
浏览器查看 HDFS
浏览器 地址栏 录入 http://192.168.11.21:9870/ 说明:192.168.11.21 是我 master 节点的IP地址
至此,Centos7.x 安装部署 Hadoop 3.x HDFS基础环境(非高可用集群)操作完毕,希望能够对您有所帮助!