Hadoop搭建新能源汽车大数据平台

前言

        为了实现这个平台,我们需要搭建一个Hadoop1集群。同时,下面是集群要求

1、集群至少要有三个节点;

2、由于条件有限,所以要求集群至少可以存储100G的数据;

3、将HDFS副本数设置为3;

4、NameNode要高可用,即运行两个NameNode进程,同一时刻只有一个对外提供服务的NameNode,如果活跃的NameNode进程所在机器宕机了,整个集群还是可以正常运行的;

5、可以正常提交MapReduce运行;

6、Hbase要集群部署,可正常建表、插入数据和查询数据等;

7、部署一个Mysql数据库,要求可以远程访问。

1.搭建三节点Hadoop集群

        1.1集群规划                        

        1.2复制虚拟机

        准备一台伪分布式虚拟机,具体可以参考我的Hadoop专栏的伪分布式Hadoop文章,或者是在网上寻找教程配置。

        然后就是克隆虚拟机:如果使用的虚拟机不支持克隆,可以选择直接复制整个虚拟机文件夹,复制3份,如果支持克隆。记得选择完全克隆,不然等于克隆了个蛋壳过来。

        把三台虚拟机都启动,且三台虚拟机命名为masterslave1slave2

         1.2配置完全分布式集群

修改master、slave1、slave2的虚拟机IP,只需要把三个节点的IP,分别修改为100、101和102。在修改完后记得 重新启动网卡,并且使用ping www.baidu.com 进行验证,保证三台机器能够正常连接外网。
# 打开网卡
vi /etc/sysconfig/network-scripts/ifcfg-ens33
# 重新启动网卡
systemctl restart network

在第一台机器执行  hostnamectl set-hostname master        修改主机名为master。在剩下的两台机器一样,一台是slave1另一台是slave2。修改完成后使用exit或者logout退出登录,重新登录查看,确保三台机器名字分别为master、slave1、slave2.

修改master、slave1和slave2的主机名与IP的映射

 

最重要的步骤来了:  把配置好的文件hosts分发给slave1和slave2

scp /etc/hosts root@slave1:/etc         

scp /etc/hosts root@slave1:/etc

接下来是设置免密登录和关闭防火墙。这个想想大家在伪分布式的时候已经配置好,没有的话记得回去配置好哦。              

删除三台虚拟机的hdfs数据,我的路径是/usr/local/hadoop-2.7.1/data,如果不知道的可以查看Hadoop的core-site.xml文件的hadoop.tmp.dir配置项查看自己的存储目录。

进入Hadoop的按照目录。我的是 /usr/local/hadoop-2.7.1/etc/hadoop

 修改core-site.xml

 <!-- hdfs分布式文件系统名字/地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
    </property>
    <!--存放namenode、datanode数据的根路径 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/mnt/newdisk/data</value>
    </property>

修改 hdfs-site.xml

<!-- 数据块副本数 -->
<property>
    <name>dfs.replication</name>
    <value>3</value>
</property>
<!-- secondary namenode 按照规划部署到slave1上 -->
<property>
    <name>dfs.secondary.http.address</name>
    <value>slave1:50090</value>
</property>

修改 yarn-site.xml slave  

<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>

<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>master</value>
</property>

 

把配置好的文件分发给剩下的两台虚拟机:

scp * root@slave1:`pwd`     

scp * root@slave2:`pwd`

时间同步,在三台虚拟机运行:ntpdate -u ntp1.aliyun.com

 NameNode格式化,这个命令只需要在master运行,并且只运行一次!!!

 hdfs namenode -format

启动Hadoop集群

在master上执行start-all.sh命令启动hadoop集群

使用jps查看进程。

master进程应该是:

DataNode

nameNode

Jps

ResourceManager

NodeManager

slave1进程应该是:

NodeManager

DataNode

Jps

SecondaryNameNode

slave2进程应该是:

NodeManager

Datanode

Jps

在进程前面的数字是端口号,另外如果少了进程记得去检查修改,记得修改后重新启动集群就行了,不需要格式化!!!

浏览器访问master的50070端口http://192.168.30.100:50070​​​​​​

 到这里我们完成了完全分布式搭建,同时也完成了要求1、2、3。那么问题来了,请问要求2和要求3在哪个配置文件实现的呢?

让我们回到 修改core-site.xml修改 hdfs-site.xml。 

hdfs-site.xml 那个小3就是配置HDFS副本

至于那个100g,就需要三台虚拟机准备3块硬盘

把硬盘分区一个主分区50g,然后挂载到目录中,接下来需要在挂载目录下创建data目录,把data目录放到core-site.xml的配置项中。这样子三台合起来就有100g存储数据了。

下一篇文章我讲具体的进HA的搭建。在专栏里可以找到哦。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

db_cy_2062

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值