Hadoop完全分布式搭建

news2024/12/28 5:03:50

       主机设置

三台主机关闭防火墙

三台主机关闭SeLinux安全机制 

给每台主机修改主机名 

配置三台主机地址映射

 设置免密登录

安装JDK

解压安装

配置jdk的环境变量 

 测试安装成功

分发JDK  

安装配置 Hadoop 

解压安装

Hadoop环境配置文件 - hadoop-env.sh 

修改Hadoop配置文件core-site.xml

HDFS 配置文件hdfs-site.xml

YARN 配置文件yarn-site.xml

 MapReduce 配置文件vim mapred-site.xml

配置worekers

进行初始化


 

sudo cp /etc/hosts /etc/hosts.bak
sudo nano /etc/hosts

主机设置

三台主机关闭防火墙

#关闭服务
systemctl stop firewalld
#关闭开机自启动
systemctl disable firewalld

三台主机关闭SeLinux安全机制 

vim /etc/sysconfig/selinux

 将enforcing改为disabled

给每台主机修改主机名 

        分别修改为master、slave1、slave2

hostnamectl set-hostname 主机名

配置三台主机地址映射

vim /etc/hosts

 设置免密登录

cd /root/.ssh

 

        master免密登录master、slave1和slave2

生成秘钥对 

ssh-keygen -t rsa

        输入连敲3次回车

拷贝三台主机公钥 

ssh-copy-id root@主机名

免密登录

#登录
ssh 主机名
#登出
exit

安装JDK

解压安装

        解压安装包到opt目录下

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

        修改目录名 

mv jdk1.8.0_162 jdk1.8

 

配置jdk的环境变量 

vim /etc/profile
export JAVA_HOME=/opt/jdk1.8
export PATH=$PATH:$JAVA_HOME/bin

保存配置 

source /etc/profile

 测试安装成功

java -version

分发JDK  

scp -r $JAVA_HOME root@slave1:/opt
scp -r $JAVA_HOME root@slave2:/opt

 

安装配置 Hadoop 

hadoop官方下载:Apache Hadoop 

解压安装

        解压安装包到opt目录下

tar -zxvf hadoop-3.1.3.tar.gz -C /opt

        添加hadoop环境变量 

vim /etc/profile

export HADOOP_HOME=/opt/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root

        注意:另外两台主机也要进行相应的环境变量设置

 保存配置环境

source /etc/profile

 测试安装成功

hadoop version

Hadoop环境配置文件 - hadoop-env.sh 

cd $HADOOP_HOME/etc/hadoop
vim hadoop-env.sh
export JAVA_HOME=/opt/jdk1.8
export HADOOP_HOME=/opt/hadoop-3.1.3
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

 

修改Hadoop配置文件core-site.xml

cd $HADOOP_HOME/etc/hadoop
vim core-site.xml

        写入如下内容

<configuration>
    <!--用来指定hdfs的老大-->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
    </property>
    <!--用来指定hadoop运行时产生文件的存放目录-->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/hadoop-3.1.3/tmp</value>
    </property>    
    <property>
		<name>hadoop.proxyuser.root.hosts</name>
		<value>*</value>
	</property>
	<property>
		<name>hadoop.proxyuser.root.groups</name>
		<value>*</value>
	</property>
</configuration>

HDFS 配置文件hdfs-site.xml

vim hdfs-site.xml
<configuration>
    <!--设置名称节点的目录-->
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/opt/hadoop-3.1.3/tmp/namenode</value>
    </property>
    <!--设置数据节点的目录-->
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/opt/hadoop-3.1.3/tmp/datanode</value>
    </property>
    <!--设置辅助名称节点-->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>master:50090</value>
    </property>
    <!--注意如果使用hadoop2,默认为50070-->
    <property>
        <name>dfs.namenode.http-address</name>
        <value>0.0.0.0:9870</value>
    </property>
    
    <!--是否启用hdfs权限,当值为false时,代表关闭-->
    <property>
        <name>dfs.permissions.enabled</name>
        <value>false</value>
    </property>
    <property>  
		<name>dfs.webhdfs.enabled</name>  
		<value>true</value>  
	</property> 
</configuration>

YARN 配置文件yarn-site.xml

vim yarn-site.xml
<configuration>
    <!--配置资源管理器:集群master-->
    <property>        
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
    </property>
    <!--配置节点管理器上运行的附加服务-->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <!--关闭虚拟内存检测,在虚拟机环境中不做配置会报错-->
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>
</configuration>

 MapReduce 配置文件vim mapred-site.xml

vim mapred-site.xml
<configuration>
    <!--配置MR资源调度框架YARN-->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>yarn.app.mapreduce.am.env</name>
        <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
    </property>
    <property>
        <name>mapreduce.map.env</name>
        <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
    </property>
    <property>
        <name>mapreduce.reduce.env</name>
        <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
    </property>
</configuration>

 

配置worekers

vim workers
slave1
slave2

 

分发配置好的Hadoop

scp -r $HADOOP_HOME root@slave1:/opt
scp -r $HADOOP_HOME root@slave2:/opt

进行初始化

hdfs namenode -format

        使用启动命令启动hadoop 

start-all.sh

 主节点进程:

从节点进程:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/560031.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【电商必备】增长销售和客户在线支持的网站即时聊天(一)

科技的进步无疑令商业世界更加国际化&#xff0c;你的公司一定有来自世界各地的客户。试想一下&#xff0c;你的公司本部在亚洲&#xff0c;但有国外的客户在非工作时间透过Google搜寻到你公司&#xff0c;并有疑问期望实时得到回复&#xff0c;我们可以如何解决时差的问题呢&a…

MySQL 事务篇

事务有哪些特性&#xff1f; 原子性&#xff1a; 一个事务中的所有操作&#xff0c;必须全部执行。要么全部完成要么就不完成。中间如果出现错误&#xff0c;就要回滚到初始状态。 持久性&#xff1a; 事务处理结束后&#xff0c;对数据的修改就是永久的&#xff0c;就是系统故…

使用CSS来实现爱心信封的效果

想必在520大家都和女朋友过了完美的节日&#xff0c;可是博主还没有女朋友鹅鹅鹅&#xff0c;还是写一个爱心信封来维护自己弱小的心灵吧鹅鹅鹅 个人名片&#xff1a; &#x1f60a;作者简介&#xff1a;一名大一在校生&#xff0c;web前端开发专业 &#x1f921; 个人主页&a…

用友助力中核集团建设财务共享中心新华发电分中心,实现业财融合

企业在进行决策时需要大量的财务信息作为依据&#xff0c;财务共享中心的建设可以帮助企业将财务和业务分离后重新有序融合&#xff0c;使得决策数据更有价值&#xff0c;也帮助企业的管理和决策更加贴合实际。 新华水力发电有限公司&#xff08;简称“新华发电”&#xff09;…

IPEmotion采集J1939协议信号

一 背景 由于商用车相对于乘用车更注重实用性&#xff0c;功能也较单一&#xff0c;且具有产量小的特点&#xff0c;因此在设计开发时需要进行约束&#xff0c;以更大程度实现软硬件的复用和成本的降低&#xff0c;在此需求下J1939协议便随之产生了。 J1939协议是由美国汽车工…

使用Fiddler工具抓取微信小程序中的图片,使用Fiddler工具抓取电脑访问的链接图片

背景&#xff1a; 开发微信小程序的时候&#xff0c;是不是经常看到别人的小程序中某个图标或者图片好看想用&#xff0c;下面小编给大家分享一下怎么获得微信小程序中的图片。 一.什么是Fiddler 官网&#xff1a;https://www.telerik.com/ 下载地址1&#xff1a;Fiddler4_官方…

✨概率论期末速成(三套卷)——试卷①✨

✨博主&#xff1a;命运之光 ✨专栏&#xff1a;概率论期末速成&#xff08;三套卷&#xff09; 目录 ✨一、填空题&#xff08;在下列各题填写正确答案&#xff0c;不填、填错&#xff0c;该题无分&#xff0c;每小题3分&#xff0c;共36分&#xff09;✨二、计算题(本大题6小…

《2023金融科技十大趋势报告》重磅发布:安全成为金融科技发展生命线

5月23日&#xff0c;由腾讯研究院、腾讯云、腾讯安全、微信支付、腾讯广告、腾讯优图实验室、招商银行、中信建投证券联合编制的《2023金融科技十大趋势报告》&#xff08;以下简称《报告》&#xff09;正式发布。《报告》从创新篇、智能篇、普惠篇、安全篇、融合篇五个方面总结…

虎牙直播在微服务改造的实践总结2

博主介绍&#xff1a;✌全网粉丝4W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战、定制、远程&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面…

常用的Jmeter参数化技巧总结,总有一个你不知道

说起接口测试&#xff0c;相信大家在工作中用的最多的还是Jmeter。 JMeter是一个100&#xff05;的纯Java桌面应用&#xff0c;由Apache组织的开放源代码项目&#xff0c;它是功能和性能测试的工具。具有高可扩展性、支持Web(HTTP/HTTPS)、SOAP、FTP、JAVA 等多种协议。 在做…

安全狗云原生安全能力亮相2023年智能汽车信息安全大会

5月19日&#xff0c;2023年智能汽车信息安全大会在上海顺利落幕。作为国内云原生安全领导厂商&#xff0c;安全狗受邀出席此次活动。 据悉&#xff0c;在领导致辞后&#xff0c;来自汽车行业以及网络安全行业的专家们就智能汽车涉及到的数据安全、安全合规、网络安全等话题展开…

Prompt Engineering | 迭代式优化和完善prompt

&#x1f604; 在尝试编写第一个 prompt时&#xff0c;满足上一博客说过的两个原则&#xff1a;清晰明确&#xff0c;并且给系统足够的时间思考。然后您可以运行它并查看结果。如果第一次效果不好&#xff0c;那么迭代的过程就是找出为什么指令不够清晰或为什么没有给算法足够的…

数据结构初阶——堆

目录 一&#xff0c;堆的概念 二&#xff0c;创建堆 2.1堆的结构 2.2堆的初始化 2.3堆的数据插入 2.4堆的数据的删除 注意点&#xff1a; 2.5 堆顶元素 2.6堆的长度 2.7堆的销毁 思维导图&#xff1a; 一&#xff0c;堆的概念 堆是什么&#xff1f;对于一个对于电脑储存结…

爆肝整理,接口测试到接口自动化测试小技巧,你的测试之路不再简单...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 Python自动化测试&…

Vue3 详细教程

文章目录 一、API 风格1.1 选项式 API1.2 组合式 API 二、Vue 指令2.1 {{}} 文本插值2.2 v-html 标签元素2.3 v-on 绑定事件2.4 v-show 隐藏元素2.5 v-if 消除元素2.6 v-bind 属性渲染2.7 v-for 列表渲染2.8 v-model 数据双向绑定 三、组件3.1 组件组合3.2 Props 组件交互3.3 自…

Linux:命令date、ntp查看和修改(校准)时间和地区。

Linux&#xff1a;命令date、ntp查看和修改&#xff08;校准&#xff09;时间和地区。 date -d 不仅可以1还可以加其他数字&#xff0c;表达后多久&#xff0c;-表达前多久&#xff1a; 备注&#xff1a;中国所在的时区是东八区 单独使用date时&#xff0c;会出现一串内容&…

Linux驱动入门——基础概念

文章目录 Linux内核简介Unix的历史Linux简介操作系统和内核简介单内核与微内核设计之比较小结 设备驱动简介驱动程序的角色划分内核设备和模块的分类安全问题版权条款 Linux驱动开发概述驱动程序概述设备驱动程序的作用设备驱动的分类Linux操作系统与驱动的关系Linux驱动开发编…

小程序容器技术在构建超级App的技术价值

今年来&#xff0c;随着软件及开源技术的发展&#xff0c;软件应用架构的概念也随之流行起来。它提供了一种组织和设计软件系统的有效方法&#xff0c;具有许多优势和好处&#xff1a; 模块化和可维护性&#xff1a;软件应用架构将系统拆分为模块化的组件&#xff0c;每个组件…

linux 部署jenkins

安装Jenkins 使用wget 命令下载Jenkins 先安装wget yum install wget ,如果已经安装过了&#xff0c;忽略直接到下一步; 若你的java环境为11~17&#xff0c;可以执行&#xff1a;wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war 若你的java环境为8&#xff0…

Python实战基础10-正则表达式

1、正则表达式 在处理字符串时&#xff0c;经常会有查找符合某些复杂规则的字符串需求。正则表达式就算用于描述这些规则的工具。换句话说&#xff0c;正则表达式就是记录文本规则的代码。 1.1 行定位符 行定位符就是用来描述字符串的边界&#xff0c;“A”表示行的开始&…