京公网安备 11010802034615号
经营许可证编号:京B2-20210330
cd /opt/linuxsir
tar -zxvf hadoop-2.7.3.tar.gz
ls
mv hadoop-2.7.3 /opt/linuxsir/hadoop
在192.168.31.131虚拟机上编辑/root/.bashrc文件,然后复制到192.168.31.132、192.168.31.133
echo "" >> /root/.bashrc
echo "export HADOOP_PREFIX=/opt/linuxsir/hadoop" >> /root/.bashrc
echo "export HADOOP_HOME=$HADOOP_PREFIX" >> /root/.bashrc
echo "export HADOOP_COMMON_HOME=$HADOOP_PREFIX" >> /root/.bashrc
echo "export HADOOP_CONF_DIR=$HADOOP_PREFIX/etc/hadoop" >> /root/.bashrc
echo "export HADOOP_HDFS_HOME=$HADOOP_PREFIX" >> /root/.bashrc
echo "export HADOOP_MAPRED_HOME=$HADOOP_PREFIX" >> /root/.bashrc
echo "export HADOOP_YARN_HOME=$HADOOP_PREFIX" >> /root/.bashrc
echo "export PATH=$PATH:$HADOOP_PREFIX/sbin:$HADOOP_PREFIX/bin" >> /root/.bashrc
echo "export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"" >> /root/.bashrc
echo "export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native" >> /root/.bashrc
echo "export CLASSPATH=$CLASSPATH:/opt/linuxsir/hadoop/lib/*" >> /root/.bashrc
cat /root/.bashrc
\在192.168.31.131上,复制/root/.bashrc到132和133
scp -r /root/.bashrc root@192.168.31.132:/root/.bashrc
scp -r /root/.bashrc root@192.168.31.133:/root/.bashrc
\在192.168.31.131上,在131/132/133三台机器上运行/root/.bashrc,刷新环境
cd
source /root/.bashrc
ssh root@192.168.31.132 source /root/.bashrc
ssh root@192.168.31.133 source /root/.bashrc
cd /opt/linuxsir/hadoop \进入/opt/linuxsir/hadoop目录
rm -rf /opt/linuxsir/hadoop/tmp
rm -rf /opt/linuxsir/hadoop/hdfs
mkdir /opt/linuxsir/hadoop/tmp \创建tmp目录
mkdir -p /opt/linuxsir/hadoop/hdfs/data /opt/linuxsir/hadoop/hdfs/name \创建hdfs的data、name子目录
\还要针对hd-slave1,hd-slave2等两个节点上执行上述命令,然后再初始化hdfs
ssh root@192.168.31.132 rm -rf /opt/linuxsir/hadoop/tmp
ssh root@192.168.31.132 rm -rf /opt/linuxsir/hadoop/hdfs
ssh root@192.168.31.132 mkdir /opt/linuxsir/hadoop/tmp
ssh root@192.168.31.132 mkdir -p /opt/linuxsir/hadoop/hdfs/data /opt/linuxsir/hadoop/hdfs/name
ssh root@192.168.31.133 rm -rf /opt/linuxsir/hadoop/tmp
ssh root@192.168.31.133 rm -rf /opt/linuxsir/hadoop/hdfs
ssh root@192.168.31.133 mkdir /opt/linuxsir/hadoop/tmp
ssh root@192.168.31.133 mkdir -p /opt/linuxsir/hadoop/hdfs/data /opt/linuxsir/hadoop/hdfs/name
对若干配置文件进行设置,保证Hadoop能够正常启动。
(1) 主要的配置文件包括HADOOP_HOME目录下的
(2) 并且为如下文件配置环境变量
(3)master和slave
编辑/opt/linuxsir/hadoop/etc/hadoop目录下的core-site.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:///opt/linuxsir/hadoop/tmp</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hd-master:9000</value><!-- NameNode URI -->
</property>
<property>
<name>io.file.buffer.size</name>
<value>131702</value>
</property>
</configuration>
编辑/opt/linuxsir/hadoop/etc/hadoop目录下的hdfs-site.xml文件,内容如下
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///opt/linuxsir/hadoop/hdfs/name</value> <!-- 本机name目录for NameNode -->
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///opt/linuxsir/hadoop/hdfs/data</value> <!-- 本机data目录for DataNode -->
</property>
<property>
<name>dfs.replication</name> <!-- 数据块副本数量 -->
<value>2</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hd-master:9001</value>
</property>
</configuration>
在/opt/linuxsir/hadoop/etc/hadoop目录下,复制mapred-site.xml.template到mapred-site.xml,并且进行编辑
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value> <!--yarn or yarn-tez-->
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hd-master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hd-master:19888</value>
</property>
<property>
<name>mapreduce.map.memory.mb</name> <!-- memory for map task -->
<value>64</value>
</property>
<property>
<name>mapreduce.reduce.memory.mb</name> <!-- memory for reduce task -->
<value>128</value>
</property>
<property>
<name>mapreduce.task.io.sort.mb</name>
<value>32</value>
</property>
<property>
<name>mapreduce.map.java.opts</name> <!-- settings for JVM map task -->
<value>-Xms128m -Xmx256m</value>
</property>
<property>
<name>mapreduce.reduce.java.opts</name> <!-- settings for JVM reduce task -->
<value>-Xms128m -Xmx256m</value>
</property>
</configuration>
在/opt/linuxsir/hadoop/etc/hadoop编辑yarn-site.xml文件,对YARN资源管理器的ResourceManager和NodeManagers节点、端口、内存分配等进行配置
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hd-master</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>hd-master:9032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hd-master:9030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hd-master:9031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hd-master:9033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hd-master:9099</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>2048</value>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>2048</value>
</property>
<property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value>1024</value>
</property>
<property>
<name>yarn.app.mapreduce.am.resource.mb</name>
<value>1024</value>
</property>
<property>
<name>yarn.app.mapreduce.am.command-opts</name>
<value>-Xms128m -Xmx256m</value>
</property>
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
<property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>8</value>
</property>
<property>
<name>yarn.nodemanager.resource.cpu-vcores</name>
<value>1</value>
</property>
<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>
</configuration>
进入hadoop-env.sh脚本文件所在目录/opt/linuxsir/hadoop/etc/Hadoop
export JAVA_HOME=/opt/linuxsir/java/jdk
接着,设置/opt/linuxsir/hadoop/etc/hadoop目录下yarn-env.sh脚本文件的JAVA_HOME变量,内容如下
export JAVA_HOME=/opt/linuxsir/java/jdk
如果NodeManager因为内存不足,而启动不起来,那么yarn-env.sh文件需要做如下修改,即JAVA_HEAP_MAX改为3G
JAVA_HEAP_MAX=-Xmx3072m
修改/opt/linuxsir/hadoop/etc/hadoop/masters文件和/opt/linuxsir/hadoop/etc/hadoop/slaves文件,目的是指定主节点和从节点列表。
/opt/linuxsir/hadoop/etc/hadoop/masters文件的内容如下,即主节点为hd-master
hd-master
/opt/linuxsir/hadoop/etc/hadoop/slaves文件的内容如下,即从节点为hd-slave1和hd-slave2
hd-slave1
hd-slave2
从192.168.31.131虚拟机复制Hadoop到其它各个节点,包括192.168.31.132、192.168.31.133。 在192.168.31.131上运行如下命令
chmod a+rwx -R /opt/linuxsir \设置/opt/linuxsir的存取权限
ssh root@192.168.31.132 chmod a+rwx -R /opt/linuxsir
ssh root@192.168.31.133 chmod a+rwx -R /opt/linuxsir
scp -r /root/.bashrc root@192.168.31.132:/root/.bashrc \复制/root/.bashrc
scp -r /root/.bashrc root@192.168.31.133:/root/.bashrc
scp -r /opt/linuxsir/hadoop hd-slave1:/opt/linuxsir \复制/opt/linuxsir/hadoop
scp -r /opt/linuxsir/hadoop hd-slave2:/opt/linuxsir
source ~/.bashrc \刷新环境变量
ssh root@192.168.31.132 source ~/.bashrc
ssh root@192.168.31.133 source ~/.bashrc
这里分享一个你一定用得到的小程序——CDA数据分析师考试小程序。
它是专为CDA数据分析认证考试报考打造的一款小程序。可以帮你快速报名考试、查成绩、查证书、查积分,通过该小程序,考生可以享受更便捷的服务。
扫码加入CDA小程序,与圈内考生一同学习、交流、进步!

《CDA一级教材》适合CDA一级考生备考,也适合业务及数据分析岗位的从业者提升自我。完整电子版已上线CDA网校,累计已有10万+在读~

免费加入阅读:https://edu.cda.cn/goods/show/3151?targetId=5147&preview=0
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
人力资源专员是HR体系的执行入口。招聘信息发布、简历初筛、面试安排、考勤汇总、入离职手续、劳动合同与档案管理,大多由这个岗 ...
2026-10-22人力资源经理问“必学技巧”,真正要解决的不是知识清单不够长,而是时间有限、业务催得紧,学完却用不上。更有效的路径是:先用 ...
2026-10-22内容营销岗位的核心任务,不是“把文案写得更漂亮”,而是围绕目标受众,用持续的内容供给影响认知、推动转化并沉淀复购。它至少 ...
2026-10-22理财经理培训课程很多,难的是判断“先学什么、后学什么、学完能做什么”。与其按课程名称罗列,不如先看岗位任务:客户分层与维 ...
2026-10-22理财经理的知识结构,可以先用一句话概括:合规与产品知识决定“不出错”,客户经营与资产配置决定“够不够专业”,市场研判与数 ...
2026-10-22经济学背景做数据分析,优势不在工具,而在问题意识:供需如何相互作用、成本与收益如何权衡、变量之间是相关还是因果。真正的缺 ...
2026-10-22需要,但要把“需要”理解准确。经济学本身就在处理数据:GDP、物价、就业、企业营收、问卷调研,都是经济分析的原料。真正的区 ...
2026-10-22经济学分析能力不是单一技能,它至少由三层构成:把现实问题转成可检验假设的理论框架能力、用数据与统计方法验证假设的工具能力 ...
2026-10-22金融分析师的知识提升,先补的不是更多模型,而是让结论可复核的底层能力。按任务顺序,大致是四层:财务与业务理解、指标口径管 ...
2026-10-22金融分析师的“通用技能”,指换到不同机构、不同行业组仍用得上的底层能力,而非某家公司内部系统的操作经验。按任务拆,日常要 ...
2026-10-22先给结论:数据分析证书不是金融分析师的准入条件,招聘方也不会因为一张证书就直接判断你能做分析。要不要考,取决于你当前任务 ...
2026-10-22金融分析师的核心技能,不是“会看K线”或“会讲宏观”,而是能把一家公司、一个行业或一类资产,转化为可核查的数据判断与书面 ...
2026-10-22产品经理的知识提升,不是把需求文档、原型、SQL、数据分析、项目管理都学一遍,而是先对准目标岗位的真实任务,找出自己最缺的 ...
2026-10-22产品专员提升工作知识,最有效的方式不是先囤课程,而是围绕日常交付的四件事来补:需求调研与优先级判断、原型与PRD表达、竞品 ...
2026-10-22产品运营专员提升个人能力,常见误区是先把Excel、SQL、Python列成一张学习清单,然后从第一个工具开始学。更有效的做法是先回答 ...
2026-10-22产品运营的能力提升,最怕从“课程目录”出发:今天学增长模型,明天背SQL语法,学完却说不清自己负责的功能为什么激活率低。更 ...
2026-10-22产品经理的技能和影响力不是两条分开的赛道。技能决定你能不能把问题分析清楚、把方案设计对;影响力决定你的判断能否被团队接受 ...
2026-10-22产品经理要学的数据分析能力,不是“会写SQL”或“会用BI工具”这么简单。更准确地说,是围绕需求评估、功能迭代、指标监控、实 ...
2026-10-22产品经理的业务能力,不是“会用多少工具”,而是能否把业务目标翻译成可执行的指标、用数据验证判断、再推动方案落地并复盘。全 ...
2026-10-22产品经理快速提升职场技能,关键不在多报几门课,而在于先找出当前岗位上最影响产出的一两项能力缺口,围绕“业务理解—需求与指 ...
2026-10-22