一.下载Hadoop192.168.120.129 hadoop-node1
192.168.120.130 hadoop-node2
192.168.120.131 hadoop-node3
hadoop下载
我在
这里选的是编译好的最新版本hadoop-3.3.2
上传到192.168.120.129服务器/opt目录下解压
tar -zxvf hadoop-3.3.2.tar.gz
二.配置服务器1.配置hosts,添加以下内容(每台节点都执行)
vim /etc/hosts
192.168.120.129 hadoop-node1
192.168.120.130 hadoop-node2
192.168.120.131 hadoop-node3
2.关闭防火墙和selinux(所有节点都执行)
$ systemctl stop firewalld
$ systemctl disable firewalld# 临时关闭(不用重启机器):
$ setenforce 0 ##设置SELinux 成为permissive模式# 永久关闭修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled
3.时间同步,安装 chrony(所有节点都执行)
yum -y install chrony
配置文件内容
vim /etc/chrony.conf
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#pool 2.centos.pool.ntp.org iburst (这一行注释掉,增加以下两行)
server ntp.aliyun.com iburst
server cn.ntp.org.cn iburst
重新加载配置并测试
$ systemctl restart chronyd.service
$ chronyc sources -v
4.配置ssh免密,生成秘钥,出现任何东西全部回车不需要你输入任何东西,都是默认。(在hadoop-node1上执行)
ssh-keygen -t rsa
将公钥信息保存在授权认证的文件中:
cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
二.多主机配置,使用同一份rsa 公私钥,拷贝整个.ssh文件夹到其它服务器
scp -r ~/.ssh [email protected]:~/
scp -r ~/.ssh [email protected]:~/
安装统一工作目录(所有节点都执行)
# 软件安装路径
$ mkdir -p /opt/bigdata/hadoop/server
# 数据存储路径
$ mkdir -p /opt/bigdata/hadoop/data
6.安装JDK,配置环境变量
# 在文件加入环境变量/etc/profile
export JAVA_HOME=/usr/local/jdk1.8
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
# source加载
$ source /etc/profile
# 查看jdk版本
$ java -version
进入/opt/hadoop-3.3.2/etc/hadoop目录
修改hadoop-env.sh
# 在hadoop-env.sh文件末尾追加
export JAVA_HOME=/usr/local/jdk1.8
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
修改core-site.xml #核心模块配置,在
fs.defaultFS
hdfs://hadoop-node1:8082
hadoop.tmp.dir
/opt/bigdata/hadoop/data/hadoop
hadoop.http.staticuser.user
root
hadoop.proxyuser.hosts
*
hadoop.proxyuser.root.groups
*
fs.trash.interval
1440
hdfs-site.xml #hdfs文件系统模块配置,在
dfs.namenode.secondary.http-address
hadoop-node2:9868
dfs.webhdfs.enabled
true
修改mapred.xml #MapReduce模块配置
mapreduce.framework.name
yarn
mapreduce.jobhistory.address
hadoop-node1:10020
mapreduce.jobhistory.webapp.address
hadoop-node1:19888
yarn.app.mapreduce.am.env
HADOOP_MAPRED_HOME=${HADOOP_HOME}
mapreduce.map.env
HADOOP_MAPRED_HOME=${HADOOP_HOME}
mapreduce.reduce.env
HADOOP_MAPRED_HOME=${HADOOP_HOME}
修改yarn-site.xml #yarn模块配置
yarn.resourcemanager.hostname
hadoop-node1
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.nodemanager.pmem-check-enabled
false
yarn.nodemanager.vmem-check-enabled
false
yarn.log-aggregation-enable
true
yarn.log.server.url
http://hadoop-node1:19888/jobhistory/logs
yarn.log-aggregation.retain-seconds
604880
修改workers 将下面内容覆盖文件,默认只有localhost
分发同步hadoop安装包到另外几台机器hadoop-node1
hadoop-node2
hadoop-node3
将hadoop添加到环境变量(所有节点)scp -r /opt/hadoop-3.3.2 hadoop-node2:/opt/
scp -r /opt/hadoop-3.3.2 hadoop-node3:/opt/
Hadoop集群启动(hadoop-node1上执行) 1)(首次启动)格式化namenode(只能执行一次)$ vi /etc/profile
export HADOOP_HOME=/opt/hadoop-3.3.2/
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH# 加载
$ source /etc/profile
- 首次启动HDFS时,必须对其进行格式化 *** 作
- format本质上初始化工作,进行HDFS清理和准备工作
$ hdfs namenode -format
在hadoop-node1上,使用软件自带的shell脚本一键启动。前提:配置好机器之间的SSH免密登录和works文件
Hadoop集群启停(HDFS+YARN)
$ start-all.sh
$ stop-all.sh
HDFS集群启停
$ start-dfs.sh
$ stop-dfs.sh# 查看java进程
$ jps
YARN集群启停
$ start-yarn.sh
$ stop-yarn.sh
# 查看java进程
$ jps
通过日志检查,日志路径:/opt/hadoop-3.3.2/logs
通过web页面访问, C:\Windows\System32\drivers\etc\hosts文件配置域名映射,hosts文件中增加如下内容:192.168.120.129 hadoop-node1
192.168.120.130 hadoop-node2
192.168.120.131 hadoop-node3
HDFS集群
这里地址为:http://hadoop-node1:9870
YARN集群
这里地址为:http://hadoop-node1:8088
到此为止,hadoop和yarn集群就已经部署完了~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)