前言:实际环境中会在window上进行程序的开发,打成jar包在放到Linux上的Hadoop集群中运行,所以在window上也安装一下hadoop环境,实用xshell(在windows上操作linux的工具)操做。
环境:
windows:jdk8,hadoop3.2.1,xshell,idea
linxu:jdk8 hadoop3.2.1服务端(集群)
1.预备知识
1.1 linux须知
- linux微内核的特性,vmware安装linux
- centos:稳定
- linux目录:/bin,/usr,/etc
- xshell:实用xshell操作centos
- linux记事本:vi/vim
1.2 常用命令
- 帮助:man
- 目录:mkdir,rmdir,mv,ls,rm -rf,cd
- 文件:touch/vi,cat,cp,rm,more,grep
- 搜索:which,whereis,find
- 时间:date ,date -s
- 用户和组管理:useradd…,groupadd…
- 进程:ps -ef,kill -9 进程id,pkill -p id 或者/-f 进程
- 网络:netstat -aux
- 磁盘:df
- 压缩和解压:zip,unzip,tar
- tar -zcvf 压缩
- tar -zxvf 解压
- 软件:yum
- yum list
- yum install
- yum remove
- rpm -ivh,evh:了解
- 上传、下载:rz,sz
- 定时任务:crontab -e
- min,h,d,m,week
- crontab -l
- crontab -r:删除
1.3 shell脚本
-
变量:x,$x
-
运算符:$[3+6]
-
判断:if [];then fi
-
循环:
for(()) 或者 for x in list
do
done
while []
do
done
-
函数: function fun(){} fun
2.hadoop之windows配置
- 解压hadoop压缩文件
- 指定HADOOP_HOME
- 指定path:/bin,/sbin
- 测试:hadoop version
3.在linux上搭建hadoop集群
3.1 安装jdk8,hadoop3.2.1
-
上传压缩文件并解压
-
设置环境变量
export JAVA_HOME=/usr/jdk8
export HADOOP_HOME=/usr/hadoop321
export PATH=PATH:PATH:PATH:JAVA_HOME/bin:HADOOPHOME/bin:HADOOP_HOME/bin:HADOOPHOME/bin:HADOOP_HOME/sbin -
激活配置文件
. /etc/profile
-
测试:
hadoop version
3.2 hdfs配置
-
core-site.xml
fs.defaultFS hdfs://master:9000
-
hdfs-site.xml
dfs.replication 2 dfs.http.address 0.0.0.0:5700 dfs.namenode.name.dir file:///root/hadoop/dfs/namenode dfs.datanode.data.dir file:///root/hadoop/dfs/datanode dfs.webhdfs.enabled true
-
初始化namenode:hdfs namenode -format
-
start-dfs.sh,stop-dfs.sh
#设置用户
HDFS_NAMENODE_USER=root
HDFS_DATANODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root -
hadoop-env.sh
export JAVA_HOME=/usr/jdk8
3.3 集群成员配置
-
域名与ip绑定
192.168.85.129 master
192.168.85.130 slave1
192.168.85.131 slave2 -
配置workers(工作节点)
slave1
slave2
-
修改副本数量(数据节点数量)
dfs.replication 2
3.4 yarn配置
-
yarn-site.xml
yarn.nodemanager.aux-services mapreduce_shuffle yarn.resourcemanager.hostname master yarn.resourcemanager.webapp.address master:8088 yarn.application.classpath /usr/hadoop321/etc/hadoop:/usr/hadoop321/share/hadoop/common/lib/*:/usr/hadoop321/share/hadoop/common/*:/usr/hadoop321/share/hadoop/hdfs:/usr/hadoop321/share/hadoop/hdfs/lib/*:/usr/hadoop321/share/hadoop/hdfs/*:/usr/hadoop321/share/hadoop/mapreduce/lib/*:/usr/hadoop321/share/hadoop/mapreduce/*:/usr/hadoop321/share/hadoop/yarn:/usr/hadoop321/share/hadoop/yarn/lib/*:/usr/hadoop321/share/hadoop/yarn/*
-
mapred-site.xml
mapreduce.framework.name yarn
-
start-yarn.sh,stop-yarn.sh
YARN_RESOURCEMANAGER_USER=root
YARN_NODEMANAGER_USER=root
3.5 cnetos克隆
-
修改主机名
hostnamectl set-hostanme 主机名
-
删除/tmp目录下的文件,使数据节点在浏览器端能看见(注意:防火墙关闭)
systemctl disable firewalld(开机不自启)
3.6 master免密登录slave
-
在root目录创建密钥:
ssh-keygen
-
authorized_keys拷贝到slave上
cat id_rsa.pub >> authorized_keys
scp 拷贝到salve的.ssh文件夹下
scp authorized_keys root@slave1:/root/.ssh
3.7 启动hadoop集群
-
在master上启动
start-all.sh
-
测试
jps
-
查看节点
hdfs dfsadmin -report
本文详细介绍了如何在Linux环境下搭建Hadoop3.2.1集群,包括预备知识如Linux常用命令、shell脚本,Windows上的Hadoop配置,以及Linux集群的安装步骤,包括JDK和Hadoop的安装、HDFS与YARN的配置、集群成员配置、免密登录等,最后启动并测试了Hadoop集群。

3850

被折叠的 条评论
为什么被折叠?



