操作系统: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 -formatSH 复制 全屏
最后,在 master 上启动 hadoop
start-dfs.sh
启动成功后,在 master 和 slave 上分别执行 jps,可以看到 hadoop 相关的进程已经正常启动
master 上
[root@master local]# jps SecondaryNameNode QuorumPeerMain Jps NameNode DataNode
标签:Linux,搭建,Hadoop,操作系统,JDK,安装包,property 来源:
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。