Linux 下搭建 Hadoop 环境


环境要求#

操作系统:CentOS 7

需要准备两个节点,一个是 master 节点,另一个是 slave 节点。

其中 master 节点的 IP:192.168.100.130

slave 节点的 IP:192.168.100.131

并且参考Linux 下配置 hosts 并设置免密登录先配置好两个免密登录

JDK 版本:8u181

Hadoop 版本:2.7.5

如果使用的软件版本不一致,请以官方搭建文档为准。

安装步骤

准备软件目录

mkdir /datalake

上传之前下载好的安装包到 /datalake 目录下

jdk-8u181-linux-x64.gz

hadoop-2.7.5.tar.gz

批量解压这几个安装包

cd /datalake
ls * | xargs -n1 tar xzvf

将解压的软件移动到 /usr/local 目录

cd /datalake
mv jdk1.8.0_181 /usr/local/jdk
mv hadoop-2.7.5 /usr/local/hadoop

配置环境变量

vi /etc/profile

添加如下内容

export JAVA_HOME=/usr/local/jdk
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

应用环境变量

source /etc/profile

关闭防火墙,在 master 和 slave 下分别执行

systemctl stop firewalld.service

以下的配置,在 master 和 slave 上都要

vi $HADOOP_HOME/etc/hadoop/core-site.xml

<configuration></configuration>节点之间添加如下内容

<property>
  <name>fs.default.name</name>
  <value>hdfs://master:9000</value>
</property>
<property>
  <name>hadoop.tmp.dir</name>
  <value>/usr/local/hadoop/tmp</value>
</property>

配置 hadoop 使用的 jdk,执行

vi $HADOOP_HOME/etc/hadoop/hadoop-env.sh

将 jdk 配置为

export JAVA_HOME=/usr/local/jdk
vi $HADOOP_HOME/etc/hadoop/hdfs-site.xml

<configuration></configuration>节点之间添加如下内容

<property>
  <name>dfs.replication</name>
  <value>1</value>
</property>
<property>
  <name>dfs.permissions</name>
  <value>false</value>
</property>

执行

cd $HADOOP_HOME/etc/hadoop && cp mapred-site.xml.template mapred-site.xml

然后执行

vi $HADOOP_HOME/etc/hadoop/mapred-site.xml

<configuration></configuration>节点之间添加如下内容

<property>
  <name>mapred.job.tracker</name>
  <value>master:9001</value>
</property>

执行

vi $HADOOP_HOME/etc/hadoop/slaves

替换为如下内容

master
slave

在 master 上把 hadoop 的上述配置文件改好以后,可以执行

cd /usr/local && scp -r hadoop slave:/usr/local/

将配置拷贝到 slave,就无需在 slave 上做同样繁琐的配置操作了。

然后,在 master 节点上进行格式化,执行

hadoop namenode -format

SH 复制 全屏

最后,在 master 上启动 hadoop

start-dfs.sh

启动成功后,在 master 和 slave 上分别执行 jps,可以看到 hadoop 相关的进程已经正常启动

master 上

[root@master local]# jps
13984 SecondaryNameNode
1579 QuorumPeerMain
14108 Jps
13693 NameNode
13821 DataNode

本站声明:
1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;

2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;

3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;

4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;

5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/294609.html

(0)
上一篇 2022年12月4日
下一篇 2022年12月5日

相关推荐

发表回复

登录后才能评论