hadoop集群搭建-三台主机
2017-11-05 11:56
507 查看
CentOS7 的配置
从零开始学大数据。记录一些东西复习。在进行hadoop的搭建之前,我们需要对CentOS进行一些配置,以兼容简化hadoop的运行环境。在进行配置之前,我们进入CentOS系统,在用户界面选择 NO Listed?输入用户名root以及你配置的密码,默认密码为root。进入系统,选择你习惯的语言,开始你的Linux之旅。
2.1.1系统配置
进入系统后,右键 Open in Termiral 打开命令终端。输入命令 hostname可以查看当前主机的主机名。
我们需要对主机名进行修改,
修改主机名的方法为输入命令 hostnamectl set-hostname <hostname>
我们将其他几台CentOS 7主机分别设置主机名为hadoop2,hadoop3以方便区分。
主机名配置完成。为了让虚拟机连接外网,修改网络设置。
修改静态IP,关闭IPV6
重启一次网络。
我们分别将CentOS001,CentOS002,CentOS003设置成以下配置,方便记忆与操作:
CentOS001 CentOS002 CentOS003
主机名 Hadoop1 hadoop2 hadoop3
Ip地址 10.250.62.151 10.250.62.152 10.250.62.153
静态ip到此设置完成。
第二步: 关闭防火墙和selinux
CentOS7 的防火墙配置跟以前版本有很大区别,CentOS7这个版本的防火墙默认使用的是firewall,与之前的版本使用iptables不一样
打开命令终端。输入systemctl stop firewalld.service关闭防火墙
继续输入命令禁止防火墙的开机启动,输入systemctl disable firewalld.service
输入firewall-cmd --state查看防火墙状态,确认关闭防火墙。
接下来关闭selinux:
打开命令终端,输入: vi/etc/selinux/config打开配置文件
# This file controlsthe state ofSELinux on the system.
# SELINUX= can take oneof these threevalues:
# enforcing -SELinux security policy isenforced.
# permissive- SELinux prints warningsinstead of enforcing.
# disabled -No SELinux policy is loaded.
#SELINUX=enforcing
SELINUX=disabled
# SELINUXTYPE= can takeone of thesetwo values:
# targeted -Targeted processes areprotected,
# mls - MultiLevel Security protection.
SELINUXTYPE=targeted
在vi模式下,按方向键移动光标,按i进入插入操作,将图中的SELINUX=enforcing修改为SELINUX=disabled ,按Esc退出插入模式,输入:wq保存文件并退出。将其他两台CentOS 7 主机的Selinux进行同样的设置。
第三步:修改host集群
打开命令终端,输入vi/etc/hosts ,修改配置文件,保存并退出。
在另外两台CentOS 7 主机上也进行相应的操作。操作完成后重启三台主机。
2.1.2SSH免密码登录
接下来的操作将在SecureCRT软件中进行,如果你不想使用,也可以在相应的主机中的命令终端中完成。打开软件。建立ssh免密码登录。
连续四次回车。使用
ssh-copy-id hadoop01
ssh-copy-id hadoop02
ssh-copy-id hadoop03 将密匙分发。
在hadoop02与hadoop03的主机进行相同的操作。使用 ssh hadoop0X命令保证可以互相无密码登录。
2.1.3 JDK的配置
由于hadoop是运行在jvm中,我们需要给每一台CentOS安装java环境。需要进入官方网址进行下载Linux版本的JDK。我们进入user文件夹,命令输入 cd /user/ ,创建一个software文件,命令为 mkdir softwares,输入cd softwares 进入文件夹。输入 vi /etc/profile 进入配置文件。
在文件的最后一行输入
export J
cc85
AVA_HOME=jdk目录
export PATH=$PATH:$JAVA_HOME/bin
保存退出。
source /ect/profile刷新配置。
在/usr/目录下,输入scp –rsoftware/ hadoop2:/usr/ 命令将software文件夹复制给hadoop2主机。
在/usr/目录下,输入scp –rsoftware/ hadoop3:/usr/ 命令将software文件夹复制给hadoop2主机。
然后修改hadoop2的配置文件,步骤与主机hadoop1相同。最后复制文件夹给hadoop3,修改hadoop3的配置文件。配置好三台主机的jdk环境即可。
刷新hadoop02与hadoop03的配置。保证三台机器的echo $JAVA_HOME命令可以运行。
2.1.4 hadoop的搭建与配置
类似于jdk的上传,使用相同的方法上传hadoop的压缩包到softwares的文件目录下。使用命令 tar –zxf Hadoop-2.7.1.tar.gz 将压缩包解压至当前文件夹。
点击进入etc文件夹,进入hadoop文件夹。
里面存放着需要修改使用的配置文件。
第一步:修改hadoop-env.sh ,将export JAVA_HOME=${JAVA_HOME}修改为你的java_home路径。
第二步:修改core-site.xml文件
配置文件为:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://10.250.62.151:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/softwares/hadoop-2.7.1/data/tmp</value>
</property>
<property>
<name>fs.trash.interval</name>
<value>10080</value>
</property>
</configuration>
第三步:修改hdfs-site.xml
配置文件为:
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
<property>
<name>dfs.namenode.http-address</name>
<value>10.250.62.151:50070</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>10.250.62.153:50090</value>
</property>
</configuration>
第四步:修改mapred-site.xml.temple 文件,首先修改文件名为mapred-site.xml
rm mapred-site.xml.temple mapred-site.xml
配置文件为:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>10.250.62.151:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>10.250.62.151:19888</value>
</property>
<property>
<name>mapreduce.job.ubertask.enable</name>
<value>true</value>
</property>
</configuration>
第五步:修改yarn-site.xml
配置文件为:
<configuration>
<!-- Site specific YARN configurationproperties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>10.250.62.182</value>
</property>
<property>
<name>yarn.web-proxy.address</name>
<value>10.250.62.182:18088</value>
</property>
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>8192</value>
</property>
<property>
<name>yarn.nodemanager.resource.cpu-vcores</name>
<value>8</value>
</property>
</configuration>
第六步:修改slaves文件
内容为所有主机ip地址。
第七步:
在hadoop目录下手动创建data文件夹。
mkdir data
在配置好hadoop的主机下的hadoop目录下运行命令符:
bin/hadoop namenode –format
初始化hadoop。初始化成功,会有相应的提示。
将初始化完成的hadoop文件复制到其他的主机。输入命令:
scp -r hadoop-2.7.1/ hadoop2:/usr/softwares/
scp -r hadoop-2.7.1/ hadoop3:/usr/softwares/
回到第一台主机,运行hadoop,在hadoop主目录下输入命令:
sbin/start-dfs.sh
运行完成后可以使用jps命令查询正在运行的进程。第一台主机应该多了一个Datanode以及Namenode进程。
第二台主机多出了DataNode进程。
第三台主机我们设置了SecondaryNameNode,所以多出了SecondaryNameNode进程。
我们在第二台主机(hadoop02)上启动yarn框架,根据配置文件,我们必须在相应的主机启动该框架。
启动之后,我们会在这台主机上看到多出了ResourceManager进程以及NodeManager进程。
在其他的主机上会多出NodeManager进程。
回到第一台主机(hadoop01),启动historyserver服务。输入命令:sbin/mr-jobhistory-deamon.sh start historyserver 启动该进程。
启动之后,该主机会多运行一个JobHistoryServer进程。
进入启动了yarn框架的主机,我们根据配置文件,在这台主机(hadoop02)上启动proxyserver进程。输入命令:sbin/yarn-deamon.sh startproxyserver命令。
启动之后,该主机会运行一个WebAppProxServer的进程。至此,hadoop启动完成。
我们可以在主机的浏览器窗口输入:10.250.62.151:50070以及10.250.62.182:8088查看相应的节点信息。我们看到存活的节点数为三个。
相关文章推荐
- Hadoop 三台主机 集群搭建 详解 <转>
- Hadoop 三台主机 集群搭建 详解 &lt;转&gt;
- Hadoop 三台主机 集群搭建 详解
- Hadoop 三台主机 集群搭建 详解
- Hadoop 三台主机 集群搭建 详解
- Hadoop 三台主机 集群搭建 详解(测试)
- Time的hadoop学习笔记之--搭建有三台主机的Hadoop集群
- Hadoop 三台主机 集群搭建 详解
- 在Docker上使用Weave搭建Hadoop和Spark跨主机容器集群
- Hadoop2.7.2之集群搭建(三台)
- 求解:基于docker搭建跨主机hadoop集群遇到的问题
- Hadoop2.7.2集群搭建详解(三台)
- Hadoop集群搭建(三台电脑)
- Hadoop2.7.2集群搭建详解(三台)
- 三台电脑搭建Hadoop集群
- 三台主机建立Hadoop小集群
- hadoop 三台主机环境搭建详细记录
- vmware10上三台虚拟机的Hadoop2.5.1集群搭建
- Mac电脑下,搭建三台Hadoop集群
- vmware10上三台虚拟机的Hadoop2.5.1集群搭建