Hadoop分布式集群部署安装

mac2024-09-29  71

Linux 准备工作 : 

①  关闭防火墙      /etc/init.d/iptables  stop   

②  (重启之后不再开防火墙   chkconfig iptables off

③  关闭selinux :    vim   /etc/selinux/config            SELINUX   = enforcing     改为   :  SELINUX= disabled

④  修改主机名   :    vim /etc/sysconfig/network      HOSTNAME =  node01

⑤  ssh无密码拷贝数据 :  特别说明(在主节点 无密码 访问到从节点)    ssh-keygen   连续按下三次空格 生成 公钥 , 密钥

      ssh-copy-id  node01   ssh-copy-id  node02    ssh-copy-id  node03    主节点 和 从节点 互相拥有 无密码登录权限

⑥  jdk1.8 安装  (在jdk安装 文章中 有详细介绍)

Hadoop安装 : 

① 上传 Hadoop 压缩包  并 解压 : 

  

 配置 hadoop 环境变量  :  新建文件  /etc/profile.d/hadoop.sh ,编辑内容 

 export HADOOP_HOME=/export/servers/hadoop-2.6.0-cdh5.14.0

 export PATH=$PATH:$HADOOP_HOME/bin

③ 修改 hadoop 系统配置文件(可复制粘贴)

core-site.xml Hadoop 核心配置文件  :  第一台机器执行以下命令 

cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop

vim  core-site.xml

<configuration> 从 property 开始 复制 <property> <name>fs.defaultFS</name> <value>hdfs://node01:8020</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/tempDatas</value> </property> <!-- 缓冲区大小,实际工作中根据服务器性能动态调整 --> <property> <name>io.file.buffer.size</name> <value>4096</value> </property> <!-- 开启hdfs的垃圾桶机制,删除掉的数据可以从垃圾桶中回收,单位分钟 --> <property> <name>fs.trash.interval</name> <value>10080</value> </property> </configuration>

④ hdfs-site.xml 存储组件 的核心配置文件 : 第一台机器执行以下命令

cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop

vim  hdfs-site.xml

<configuration> <!-- NameNode存储元数据信息的路径,实际工作中,一般先确定磁盘的挂载目录,然后多个目录用,进行分割 --> <!-- 集群动态上下线 <property> <name>dfs.hosts</name> <value>/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/accept_host</value> </property> <property> <name>dfs.hosts.exclude</name> <value>/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/deny_host</value> </property> --> <property> <name>dfs.namenode.secondary.http-address</name> <value>node01:50090</value> </property> <property> <name>dfs.namenode.http-address</name> <value>node01:50070</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:///export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/namenodeDatas</value> </property> <!-- 定义dataNode数据存储的节点位置,实际工作中,一般先确定磁盘的挂载目录,然后多个目录用,进行分割 --> <property> <name>dfs.datanode.data.dir</name> <value>file:///export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/datanodeDatas</value> </property> <property> <name>dfs.namenode.edits.dir</name> <value>file:///export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/dfs/nn/edits</value> </property> <property> <name>dfs.namenode.checkpoint.dir</name> <value>file:///export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/dfs/snn/name</value> </property> <property> <name>dfs.namenode.checkpoint.edits.dir</name> <value>file:///export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/dfs/nn/snn/edits</value> </property> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> <property> <name>dfs.blocksize</name> <value>134217728</value> </property> </configuration>

⑤  mapred-site.xml 计算组件的核心配置文件   :第一台机器执行以下命令

cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop

vim  mapred-site.xml

<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.job.ubertask.enable</name> <value>true</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>node01:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>node01:19888</value> </property> </configuration>

⑥  yarn-site.xml  资源调度的核心配置文件 :第一台机器执行以下命令

cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop

vim  yarn-site.xml

<configuration> <property> <name>yarn.resourcemanager.hostname</name> <value>node01</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>

⑦ 验证 hadoop 支持 哪些算法  :   ./hadoop checknative

openssl  为 false  不支持,则需要 安装     yum -y install openssl-devel

⑧ 修改 slaves 文件  :第一台机器执行以下命令

cd  /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop

vim  slaves

node01 node02 node03

⑨ 创建文件存放目录  : 第一台机器执行以下命令      node01机器上面创建以下目录

mkdir -p /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/tempDatas mkdir -p /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/namenodeDatas mkdir -p /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/datanodeDatas mkdir -p /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/dfs/nn/edits mkdir -p /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/dfs/snn/name mkdir -p /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/dfs/nn/snn/edits

⑩ 安装包分发从节点    第一台机器执行以下命令

cd   /export/servers/

scp -r hadoop-2.6.0-cdh5.14.0/ node02:$/export/servers scp -r hadoop-2.6.0-cdh5.14.0/ node03:$/export/servers

⑪ 配置Hadoop环境变量 :三台机器都要进行配置Hadoop的环境变量 、三台机器执行以下命令

vim  /etc/profile.d/hadoop.sh

export HADOOP_HOME=/export/servers/hadoop-2.6.0-cdh5.14.0 export PATH=:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

配置完成之后 更新 生效   :   source /etc/profile

⑪  集群启动 :

启动 Hadoop 集群,需要启动 HDFSYARN 两个集群。

注意:首次启动HDFS时,不要对其进行格式化操作。本质上是一些清理和准备工作,因为此时的 HDFS 在物理上还是不存在的

bin/hdfs namenode  -format  或者  bin/Hadoop namenode –format

⑫ 脚本一键启动 HDFSYarn

如果配置etc/Hadoop/slavesssh 免密登录则可以使用程序脚本启动所有Hadoop 两个集群的相关进程,在主节点所设定的机器上执行

启动集群 : node01节点上执行以下命令  、第一台机器执行以下命令

cd /export/servers/hadoop-2.6.0-cdh5.14.0/sbin ./start-dfs.sh ./start-yarn.sh

停止集群:没事儿 不要去停止集群 !

./stop-dfs.sh ./stop-yarn.sh

⑬ 脚本一键启动所有

一键启动集群 ./start-all.sh 一键关闭集群 ./stop-all.sh

脚本位于 $HADOOP_PREFIX/sbin/  目录下。如果想要停止某个节点上某个角色,只需要把命令中的start 改为stop 即可。

⑭  浏览器 查看启动页面

hdfs集群访问地址:  http://192.168.100.201:50070/dfshealth.html#tab-overview       ip地址改为自己的地址

yarn集群 访问地址:   http://192.168.100.201:8088/cluster       ip地址改为自己的地址 


 

最新回复(0)