CentOS 7 部署Hadoop-2.7.2

网友投稿 225 2022-11-23

CentOS 7 部署Hadoop-2.7.2

环境准备

主机名 IP 系统 HDFS
master 192.168.154.135 CentOS 7 NameNode + DataNode 主节点
slave1 192.168.154.139 CentOS 7 DataNode
slave2 192.168.154.140 CentOS 7 DataNode +SecondaryNamenode

部署过程

一、基础环境配置

在3台服务器上面操作:

1.防火墙关闭

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/configsetenforce 0systemctl stop firewalldsystemctl disable firewalld

2.修改主机名

hostnamectl set-hostname master && bashhostnamectl set-hostname slave1 && bashhostnamectl set-hostname slave2 && bash

3.配置/etc/hosts文件

vi /etc/hosts

#末尾添加:

192.168.154.135 master 192.168.154.139 slave1 192.168.154.140 slave2

在master上面操作:

4.免密登陆认证

1. 使用rsa加密技术,生成公钥和私钥。一路回车即可

cd ~ssh-keygen -t rsa

2.推送公钥

ssh-copy-id masterssh-copy-id slave1ssh-copy-id slave2

3. 进行验证

ssh master

软件部署

1.jdk的安装

rpm -qa | grep jdk #如果有,请卸载 rpm -e xxx --nodeps #将查询到的内置jdk代替xxx

2.上传jdk1.8

将jdk-8u221-linux-x64.tar.gz上传到linux环境

3.解压jdk到/usr/local下

tar -zxvf jdk-8u221-linux-x64.tar.gz -C /opt/apps

4.更名java

cd /usr/localmv jdk1.8.0_221/ java

5.配置jdk的环境变量

sed -i '$aJAVA_HOME=/usr/local/java\nCLASSPATH=$JAVA_HOME/lib\nPATH=$PATH:$JAVA_HOME/bin\nexport PATH JAVA_HOME CLASSPATH' /etc/profile

6.更新环境变量

source /etc/profile

7.验证jdk环境

java -version

三、Hadoop部署

1.上传并解压Hadoop

unzip hadoop-2.7.2.zip

2.配置hadoop的环境变量

vim /etc/profile

#在最后加入以下两行

export HADOOP_HOME=/usr/local/hadoop-2.7.2 export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

3.使当前配置生效

source /etc/profile

4.完全分布式的相关文件的配置

1.配置core-site.xml文件

cd /usr/local/hadoop-2.7.2/etc/hadoopvim core-site.xml

hadoop.tmp.dir /usr/local/hadoop-2.7.2/tmp fs.default.name hdfs://master:9000

2.配置hdfs-site.xml文件

vim hdfs-site.xml

dfs.replication 3 dfs.name.dir file:///usr/local/hadoop-2.7.2/tmp/namenode dfs.data.dir file:///usr/local/hadoop-2.7.2/tmp/datanode dfs.secondary.http.address slave2:50090

3.配置mapred-site.xml文件

vim mapred-site.xml

mapreduce.framework.name yarn

4.配置hadoop-site.xml文件

vim yarn-site.xml

yarn.nodemanager.aux-services mapreduce_shuffle yarn.resourcemanager.webapp.address master:8089 yarn.resourcemanager.hostname master YARN集群主节点所在节点

5.配置hadoop-env.sh脚本文件和yarn-env.sh文件

vim hadoop-env.sh

#修改这2处:

export JAVA_HOME=/usr/local/java export HADOOP_CONF_DIR=/usr/local/hadoop-2.7.2/etc/hadoop

vim yarn-env.sh

export JAVA_HOME=/usr/local/java

6.配置slaves文件,此文件用于指定datanode守护进程所在的机器节点主机名

vim slaves

master slave1 slave2

5.配置另外两台机器,使用scp

cd /usr/localscp -r ./hadoop-2.7.2 slave1:/usr/local scp -r ./hadoop-2.7.2 slave2:/usr/local

6.同步/etc/profile到slave节点上

scp /etc/profile slave1:/etc/ scp /etc/profile slave2:/etc/

7. slave节点上的同步jdk。

scp -r ./java slave1:/usr/local scp -r ./java slave2:/usr/local

8.检查是否同步了/etc/hosts文件

scp /etc/hosts slave1:/etc/ scp /etc/hosts slave2:/etc/

9.格式化NameNode

1.在master机器上运行命令

hdfs namenode -format

2.格式化的相关信息解读

1. 生成一个集群唯一标识符:clusterid 2. 生成一个块池唯一标识符:BlockPoolId 3. 生成namenode进程管理内容(fsimage)的存储路径: 默认配置文件属性hadoop.tmp.dir指定的路径下生成dfs/name目录 4. 生成镜像文件fsimage,记录分布式文件系统根路径的元数据 5. 其他信息都可以查看一下,比如块的副本数,集群的fsOwner等

10.启动集群相关命令

1. 启动脚本 -- start-dfs.sh :用于启动hdfs集群的脚本   -- start-yarn.sh :用于启动yarn守护进程   -- start-all.sh :用于启动hdfs和yarn 2. 关闭脚本   -- stop-dfs.sh :用于关闭hdfs集群的脚本   -- stop-yarn.sh :用于关闭yarn守护进程   -- stop-all.sh :用于关闭hdfs和yarn 3. 单个守护进程脚本   -- hadoop-daemons.sh :用于单独启动或关闭hdfs的某一个守护进程的脚本   -- hadoop-daemon.sh :用于单独启动或关闭hdfs的某一个守护进程的脚本   -- yarn-daemons.sh :用于单独启动或关闭hdfs的某一个守护进程的脚本   -- yarn-daemon.sh :用于单独启动或关闭hdfs的某一个守护进程的脚本

11.jps查看进程

master进程:

slave1 进程:

slave2 进程:

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:0001 - CM&CDH入门指南
下一篇:USB Type-C将成为消费电子领域连接器的新动能
相关文章

 发表评论

暂时没有评论,来抢沙发吧~