Hadoop分布式集群部署

简介: Hadoop分布式集群部署

环境准备

IP HOSTNAME SYSTEM
192.168.131.129 hadoop-master CentOS 7.6

192.168.131.135 hadoop-slave1 CentOS 7.6
192.168.131.137 hadoop-slave2 CentOS 7.6
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
[root@localhost ~]# sestatus
SELinux status:                 disabled
[root@localhost ~]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)
[root@localhost ~]# hostnamectl set-hostname --static hadoop-master
[root@localhost ~]# hostnamectl set-hostname --static hadoop-slave1
[root@localhost ~]# hostnamectl set-hostname --static hadoop-slave2

配置免密

[root@hadoop-master ~]# cat >> /etc/hosts <<EOF
192.168.131.129 hadoop-master
192.168.131.135 hadoop-slave1
192.168.131.137 hadoop-slave2
EOF
[root@hadoop-master ~]# ssh-keygen
[root@hadoop-master ~]# ssh-copy-id hadoop-slave1
[root@hadoop-master ~]# ssh-copy-id hadoop-slave2
[root@hadoop-master ~]# scp /etc/hosts hadoop-slave1:/etc/hosts
hosts                                                              100%  248   151.9KB/s   00:00
[root@hadoop-master ~]# scp /etc/hosts hadoop-slave2:/etc/hosts
hosts                                                              100%  248   220.9KB/s   00:00

配置java环境

[root@hadoop-master ~]# tar xf jdk-8u211-linux-x64.tar.gz -C /usr/local/
[root@hadoop-master ~]# ln -s /usr/local/jdk1.8.0_211/ /usr/local/java
[root@hadoop-master ~]# ll /usr/local/
total 0
drwxr-xr-x. 2 root root   6 Apr 11  2018 bin
drwxr-xr-x. 2 root root   6 Apr 11  2018 etc
drwxr-xr-x. 2 root root   6 Apr 11  2018 games
drwxr-xr-x. 2 root root   6 Apr 11  2018 include
lrwxrwxrwx  1 root root  24 Sep  7 14:49 java -> /usr/local/jdk1.8.0_211/
drwxr-xr-x  7   10  143 245 Apr  2  2019 jdk1.8.0_211
drwxr-xr-x. 2 root root   6 Apr 11  2018 lib
drwxr-xr-x. 2 root root   6 Apr 11  2018 lib64
drwxr-xr-x. 2 root root   6 Apr 11  2018 libexec
drwxr-xr-x. 2 root root   6 Apr 11  2018 sbin
drwxr-xr-x. 5 root root  49 Mar 30  2019 share
drwxr-xr-x. 2 root root   6 Apr 11  2018 src
[root@hadoop-master ~]# vim /etc/profile
export JAVA_HOME=/usr/local/java/
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
[root@hadoop-master ~]# source /etc/profile
[root@hadoop-master ~]# java -version
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)

部署hadoop

[root@hadoop-master ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz
[root@hadoop-master ~]# tar xf hadoop-2.7.7.tar.gz -C /opt/
[root@hadoop-master ~]# vim /etc/profile
export HADOOP_HOME=/opt/hadoop-2.7.7
export PATH=$HADOOP_HOME/bin:$PATH
[root@hadoop-master ~]# source /etc/profile
[root@hadoop-master ~]# cd /opt/hadoop-2.7.7/
[root@hadoop-master hadoop-2.7.7]# ls
bin  etc  include  lib  libexec  LICENSE.txt  NOTICE.txt  README.txt  sbin  share
[root@hadoop-master hadoop-2.7.7]# cd etc/hadoop/
[root@hadoop-master hadoop]# ll
total 152
-rw-r--r-- 1 1000 ftp  4436 Jul 19  2018 capacity-scheduler.xml
-rw-r--r-- 1 1000 ftp  1335 Jul 19  2018 configuration.xsl
-rw-r--r-- 1 1000 ftp   318 Jul 19  2018 container-executor.cfg
-rw-r--r-- 1 1000 ftp   774 Jul 19  2018 core-site.xml
-rw-r--r-- 1 1000 ftp  3670 Jul 19  2018 hadoop-env.cmd
-rw-r--r-- 1 1000 ftp  4224 Jul 19  2018 hadoop-env.sh
-rw-r--r-- 1 1000 ftp  2598 Jul 19  2018 hadoop-metrics2.properties
-rw-r--r-- 1 1000 ftp  2490 Jul 19  2018 hadoop-metrics.properties
-rw-r--r-- 1 1000 ftp  9683 Jul 19  2018 hadoop-policy.xml
-rw-r--r-- 1 1000 ftp   775 Jul 19  2018 hdfs-site.xml
-rw-r--r-- 1 1000 ftp  1449 Jul 19  2018 httpfs-env.sh
-rw-r--r-- 1 1000 ftp  1657 Jul 19  2018 httpfs-log4j.properties
-rw-r--r-- 1 1000 ftp    21 Jul 19  2018 httpfs-signature.secret
-rw-r--r-- 1 1000 ftp   620 Jul 19  2018 httpfs-site.xml
-rw-r--r-- 1 1000 ftp  3518 Jul 19  2018 kms-acls.xml
-rw-r--r-- 1 1000 ftp  1527 Jul 19  2018 kms-env.sh
-rw-r--r-- 1 1000 ftp  1631 Jul 19  2018 kms-log4j.properties
-rw-r--r-- 1 1000 ftp  5540 Jul 19  2018 kms-site.xml
-rw-r--r-- 1 1000 ftp 11801 Jul 19  2018 log4j.properties
-rw-r--r-- 1 1000 ftp   951 Jul 19  2018 mapred-env.cmd
-rw-r--r-- 1 1000 ftp  1383 Jul 19  2018 mapred-env.sh
-rw-r--r-- 1 1000 ftp  4113 Jul 19  2018 mapred-queues.xml.template
-rw-r--r-- 1 1000 ftp   758 Jul 19  2018 mapred-site.xml.template
-rw-r--r-- 1 1000 ftp    10 Jul 19  2018 slaves
-rw-r--r-- 1 1000 ftp  2316 Jul 19  2018 ssl-client.xml.example
-rw-r--r-- 1 1000 ftp  2697 Jul 19  2018 ssl-server.xml.example
-rw-r--r-- 1 1000 ftp  2250 Jul 19  2018 yarn-env.cmd
-rw-r--r-- 1 1000 ftp  4567 Jul 19  2018 yarn-env.sh
-rw-r--r-- 1 1000 ftp   690 Jul 19  2018 yarn-site.xml

部署hadoop

[root@hadoop-master ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz
[root@hadoop-master ~]# tar xf hadoop-2.7.7.tar.gz -C /opt/
[root@hadoop-master ~]# vim /etc/profile
export HADOOP_HOME=/opt/hadoop-2.7.7
export PATH=$HADOOP_HOME/bin:$PATH
[root@hadoop-master ~]# source /etc/profile
[root@hadoop-master ~]# cd /opt/hadoop-2.7.7/
[root@hadoop-master hadoop-2.7.7]# ls
bin  etc  include  lib  libexec  LICENSE.txt  NOTICE.txt  README.txt  sbin  share
[root@hadoop-master hadoop-2.7.7]# cd etc/hadoop/
[root@hadoop-master hadoop]# ll
total 152
-rw-r--r-- 1 1000 ftp  4436 Jul 19  2018 capacity-scheduler.xml
-rw-r--r-- 1 1000 ftp  1335 Jul 19  2018 configuration.xsl
-rw-r--r-- 1 1000 ftp   318 Jul 19  2018 container-executor.cfg
-rw-r--r-- 1 1000 ftp   774 Jul 19  2018 core-site.xml
-rw-r--r-- 1 1000 ftp  3670 Jul 19  2018 hadoop-env.cmd
-rw-r--r-- 1 1000 ftp  4224 Jul 19  2018 hadoop-env.sh
-rw-r--r-- 1 1000 ftp  2598 Jul 19  2018 hadoop-metrics2.properties
-rw-r--r-- 1 1000 ftp  2490 Jul 19  2018 hadoop-metrics.properties
-rw-r--r-- 1 1000 ftp  9683 Jul 19  2018 hadoop-policy.xml
-rw-r--r-- 1 1000 ftp   775 Jul 19  2018 hdfs-site.xml
-rw-r--r-- 1 1000 ftp  1449 Jul 19  2018 httpfs-env.sh
-rw-r--r-- 1 1000 ftp  1657 Jul 19  2018 httpfs-log4j.properties
-rw-r--r-- 1 1000 ftp    21 Jul 19  2018 httpfs-signature.secret
-rw-r--r-- 1 1000 ftp   620 Jul 19  2018 httpfs-site.xml
-rw-r--r-- 1 1000 ftp  3518 Jul 19  2018 kms-acls.xml
-rw-r--r-- 1 1000 ftp  1527 Jul 19  2018 kms-env.sh
-rw-r--r-- 1 1000 ftp  1631 Jul 19  2018 kms-log4j.properties
-rw-r--r-- 1 1000 ftp  5540 Jul 19  2018 kms-site.xml
-rw-r--r-- 1 1000 ftp 11801 Jul 19  2018 log4j.properties
-rw-r--r-- 1 1000 ftp   951 Jul 19  2018 mapred-env.cmd
-rw-r--r-- 1 1000 ftp  1383 Jul 19  2018 mapred-env.sh
-rw-r--r-- 1 1000 ftp  4113 Jul 19  2018 mapred-queues.xml.template
-rw-r--r-- 1 1000 ftp   758 Jul 19  2018 mapred-site.xml.template
-rw-r--r-- 1 1000 ftp    10 Jul 19  2018 slaves
-rw-r--r-- 1 1000 ftp  2316 Jul 19  2018 ssl-client.xml.example
-rw-r--r-- 1 1000 ftp  2697 Jul 19  2018 ssl-server.xml.example
-rw-r--r-- 1 1000 ftp  2250 Jul 19  2018 yarn-env.cmd
-rw-r--r-- 1 1000 ftp  4567 Jul 19  2018 yarn-env.sh
-rw-r--r-- 1 1000 ftp   690 Jul 19  2018 yarn-site.xml
修改hadoop-env.sh和yarn-env.sh中JAVA_HOME参数
[root@hadoop-master hadoop]# sed -i 's#export JAVA_HOME=.*#export JAVA_HOME='/usr/local/java'#g' hadoop-env.sh
[root@hadoop-master hadoop]# sed -i 's#.*export JAVA_HOME=.*#export JAVA_HOME='/usr/local/java'#g' yarn-env.sh
[root@hadoop-master hadoop]# grep "export JAVA_HOME" hadoop-env.sh
export JAVA_HOME=/usr/local/java
[root@hadoop-master hadoop]# grep "export JAVA_HOME" yarn-env.sh
export JAVA_HOME=/usr/local/java
编辑core-site.xml
[root@hadoop-master hadoop]# vim core-site.xml
<configuration>
   <property>
      <name>fs.default.name</name>
      <value>hdfs://192.168.131.129:9000</value>
   </property>
   <property>
      <name>hadoop.tmp.dir</name>
      <value>/opt/hadoop/tmp</value>
   </property>
</configuration>
编辑hdfs-site.xml
[root@hadoop-master hadoop]# vim hdfs-site.xml
<configuration>
   <property>
      <name>dfs.replication</name>
      <value>2</value>
   </property>
   <property>
      <name>dfs.namenode.name.dir</name>
      <value>file:/opt/hadoop/dfs/name</value>
   </property>
   <property>
      <name>dfs.datanode.data.dir</name>
      <value>file:/opt/hadoop/dfs/data</value>
   </property>
</configuration>
编辑mapred-site.xml
[root@hadoop-master hadoop]# cp mapred-site.xml.template mapred-site.xml
[root@hadoop-master hadoop]# vim mapred-site.xml
<configuration>
   <property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value>
   </property>
   <property>
      <name>mapreduce.jobhistory.address</name>
      <value>192.168.131.129:10020</value>
   </property>
   <property>
      <name>mapreduce.jobhistory.webapp.address</name>
      <value>192.168.131.129:19888</value>
   </property>
</configuration>
编辑yarn-site.xml
[root@hadoop-master hadoop]# vim yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
   <property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
   </property>
   <property>
      <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
      <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
   <property>
      <name>yarn.resourcemanager.address</name>
      <value>192.168.131.129:8032</value>
   </property>
   <property>
      <name>yarn.resourcemanager.scheduler.address</name>
      <value>192.168.131.129:8030</value>
   </property>
   <property>
      <name>yarn.resourcemanager.resource-tracker.address</name>
      <value>192.168.131.129:8031</value>
   </property>
   <property>
      <name>yarn.resourcemanager.admin.address</name>
      <value>192.168.131.129:8033</value>
   </property>
   <property>
      <name>yarn.resourcemanager.webapp.address</name>
      <value>192.168.131.129:8088</value>
   </property>
</configuration>
编辑slaves
[root@hadoop-master hadoop]# vim slaves
hadoop-slave1
hadoop-slave2
把配置分发到各个节点
[root@hadoop-master opt]# scp -r hadoop-2.7.7/ hadoop-slave1:/opt/
[root@hadoop-master opt]# scp -r hadoop-2.7.7/ hadoop-slave2:/opt/
在主节点启动hadoop
初始化namenode
[root@hadoop-master ~]# hdfs namenode -format
启动HDFS
[root@hadoop-master ~]# cd /opt/hadoop-2.7.7/sbin/
[root@hadoop-master sbin]# ./start-dfs.sh
启动YARN
[root@hadoop-master sbin]# ./start-yarn.sh

测试

浏览器访问
YARN WEB地址:http://192.168.131.129:8088/
HDFS WEB地址:http://192.168.131.129:50070/


目录
相关文章
|
8天前
|
人工智能 安全 Java
智慧工地源码,Java语言开发,微服务架构,支持分布式和集群部署,多端覆盖
智慧工地是“互联网+建筑工地”的创新模式,基于物联网、移动互联网、BIM、大数据、人工智能等技术,实现对施工现场人员、设备、材料、安全等环节的智能化管理。其解决方案涵盖数据大屏、移动APP和PC管理端,采用高性能Java微服务架构,支持分布式与集群部署,结合Redis、消息队列等技术确保系统稳定高效。通过大数据驱动决策、物联网实时监测预警及AI智能视频监控,消除数据孤岛,提升项目可控性与安全性。智慧工地提供专家级远程管理服务,助力施工质量和安全管理升级,同时依托可扩展平台、多端应用和丰富设备接口,满足多样化需求,推动建筑行业数字化转型。
46 5
|
6月前
|
分布式计算 资源调度 Hadoop
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
147 2
|
3月前
|
存储 分布式计算 Hadoop
基于Java的Hadoop文件处理系统:高效分布式数据解析与存储
本文介绍了如何借鉴Hadoop的设计思想,使用Java实现其核心功能MapReduce,解决海量数据处理问题。通过类比图书馆管理系统,详细解释了Hadoop的两大组件:HDFS(分布式文件系统)和MapReduce(分布式计算模型)。具体实现了单词统计任务,并扩展支持CSV和JSON格式的数据解析。为了提升性能,引入了Combiner减少中间数据传输,以及自定义Partitioner解决数据倾斜问题。最后总结了Hadoop在大数据处理中的重要性,鼓励Java开发者学习Hadoop以拓展技术边界。
120 7
|
5月前
|
分布式计算 资源调度 Hadoop
【赵渝强老师】部署Hadoop的本地模式
本文介绍了Hadoop的目录结构及本地模式部署方法,包括解压安装、设置环境变量、配置Hadoop参数等步骤,并通过一个简单的WordCount程序示例,演示了如何在本地模式下运行MapReduce任务。
145 0
|
6月前
|
分布式计算 NoSQL Java
Hadoop-32 ZooKeeper 分布式锁问题 分布式锁Java实现 附带案例和实现思路代码
Hadoop-32 ZooKeeper 分布式锁问题 分布式锁Java实现 附带案例和实现思路代码
103 2
|
6月前
|
分布式计算 Hadoop
Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer
Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer
124 1
|
6月前
|
存储 数据采集 分布式计算
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
108 1
|
6月前
|
分布式计算 Hadoop 网络安全
Hadoop-08-HDFS集群 基础知识 命令行上机实操 hadoop fs 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
Hadoop-08-HDFS集群 基础知识 命令行上机实操 hadoop fs 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
87 1
|
6月前
|
存储 机器学习/深度学习 缓存
Hadoop-07-HDFS集群 基础知识 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
Hadoop-07-HDFS集群 基础知识 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
129 1
|
6月前
|
分布式计算 资源调度 Hadoop
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
118 1

热门文章

最新文章

下一篇
oss创建bucket