热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Spark新闻项目介绍及Linux集群准备

  从今天开始博主后面的已连续博客都是关于一个新闻项目的博客:卡弗卡大数据用户行为(日志)分析项目,从该项目可以学习整个Spark集群的环境配置以及大数据分析技术,完成实时数据分析。


 

 

(一)项目介绍

本课程基于企业大数据经典案例项目(大数据日志分析),全方位、全流程讲解 大数据项目的业务分析、技术选型、架构设计、集群规划、安装部署、整合继承与开发和web可视化交互设计。 不管是零基础的大数据技术爱好者,还是有基础的IT小白,都可以通过此课程快速的上升到一个新的高度。

1.适用人群

有hadoop理论基础的大学生,职场小白,大白

2.涉及技术

Hadoop2.x、Zookeeper、Flume、Hive、Hbase、Kafka、Spark2.x、SparkStreaming、MySQL、Hue、J2EE、websoket、Echarts

3.项目目标

1)能够独立完成大数据项目的架构设计,安装部署,架构继承与开发、用户可视化交互设计

2)能够独立完成实时在线数据分析

3)能独立完成离线数据分析

 

(二)需求分析与设计

1.案例需求分析

 业务需求:

  1)捕获用户浏览日志信息

  2)实时分析前20名流量最高的新闻话题

  3)实时统计当前线上已曝光的新闻话题

  4)统计哪个时段用户浏览量最高

  5)报表

2.系统架构图设计

 Spark新闻项目介绍及Linux集群准备

 

3.系统数据流程设计

 Spark新闻项目介绍及Linux集群准备

 

4.集群资源规划设计

 Spark新闻项目介绍及Linux集群准备

 

(三)Linux环境准备 

  新建虚拟机的操作这里就不再介绍了,不懂的可以参考博主以前的博文,下面直接进入Linux基本环境配置。

1.通信配置

 Spark新闻项目介绍及Linux集群准备

DEFROUTE=yes

PEERDNS=yes          

PEERROUTES=yes    

IPV4_FAILURE_FATAL=yes        

IPV6INIT=no

NAME="System eth0"               

IPADDR=192.168.86.131

BCAST=192.168.86.255 

GATEWAY=192.168.86.2       

NETMASK=255.255.255.0      

DNS1=192.168.86.2

DNS2=8.8.8.8 

  配置完后reboot重启

 Spark新闻项目介绍及Linux集群准备

  如上图表示通信配置成功。

 

2.配置网络映射

  首先配置Linux环境下的网络配置

[root@bigdata-pro01 Desktop]# vim /etc/hosts

 Spark新闻项目介绍及Linux集群准备

  然后配置Windows下的网络映射(博文结束后记得补全三个节点的配置)

 Spark新闻项目介绍及Linux集群准备

  保存后我们就可以在Windows上通过XShell根据连接到虚拟机,然后进行操作了。

  启动Xshell。新建一个连接如下:

 Spark新闻项目介绍及Linux集群准备

  然后我们就能连接上了。

 Spark新闻项目介绍及Linux集群准备

 

3.关闭防火墙

[kfk@bigdata-pro01 ~]$ sudo servivce iptables status

 

We trust you have received the usual lecture from the local System

Administrator. It usually boils down to these three things:

 

    #1) Respect the privacy of others.

    #2) Think before you type.

    #3) With great power comes great responsibility.

 

[sudo] password for kfk:

kfk is not in the sudoers file.  This incident will be reported.

[kfk@bigdata-pro01 ~]$ su

Password:

[root@bigdata-pro01 kfk]# visudo      //配置kfk用户sudo权限及免密码登陆

  然后添加以下内容:

 Spark新闻项目介绍及Linux集群准备

  关闭防火墙:

[root@bigdata-pro01 kfk]# su kfk

[kfk@bigdata-pro01 ~]$ sudo service iptables status                     //查看防火墙状态

Table: filter

Chain INPUT (policy ACCEPT)

num  target     prot opt source               destination        

1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0          

3    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0          

4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22

5    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

 

Chain FORWARD (policy ACCEPT)

num  target     prot opt source               destination        

1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

 

Chain OUTPUT (policy ACCEPT)

num  target     prot opt source               destination        

[kfk@bigdata-pro01 ~]$ sudo service iptables stop                       //关闭防火墙

iptables: Setting chains to policy ACCEPT: filter          [  OK  ]

iptables: Flushing firewall rules:                         [  OK  ]

iptables: Unloading modules:                               [  OK  ]

[kfk@bigdata-pro01 ~]$ sudo service iptables status

iptables: Firewall is not running.

[kfk@bigdata-pro01 ~]$ sudo chkconfig iptables off                     //永久禁用

[kfk@bigdata-pro01 ~]$ sudo vim /etc/sysc

sysconfig/   sysctl.conf 

[kfk@bigdata-pro01 ~]$ sudo vim /etc/sysconfig/selinux                 //配置每次自启动后防火墙都为关闭状态

 

 Spark新闻项目介绍及Linux集群准备

 

4.卸载自带的JDK

[kfk@bigdata-pro01 ~]$ sudo rpm -qa|grep java

java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64

java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64

tzdata-java-2013g-1.el6.noarch

[kfk@bigdata-pro01 ~]$ sudo rpm -e --nodeps java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64 java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64 tzdata-java-2013g-1.el6.noarch

[kfk@bigdata-pro01 ~]$ sudo rpm -qa|grep java

[kfk@bigdata-pro01 ~]$

 

 

5.克隆虚拟机并进行相关的配置

  前面我们已经做好了Linux的系统常规设置,接下来需要克隆虚拟机并进行相关的配置。

1)kfk用户下创建我们将要使用的各个目录

  #软件目录

  mkdir /opt/softwares

  #模块目录

  mkdir /opt/modules

  #工具目录

  mkdir /opt/tools

  #数据目录

  mkdir /opt/datas

[kfk@bigdata-pro01 ~]$ cd /

[kfk@bigdata-pro01 /]$ ls

bin  boot  dev  etc  home  lib  lib64  lost+found  media  misc  mnt  net  opt  proc  root  sbin  selinux  srv  sys  tmp  usr  var

[kfk@bigdata-pro01 /]$ sudo mkdir /opt/softwares

[kfk@bigdata-pro01 /]$ cd /opt/

[kfk@bigdata-pro01 opt]$ ls

rh  softwares

[kfk@bigdata-pro01 opt]$ sudo rm -rf ./rh

[kfk@bigdata-pro01 opt]$ ls

softwares

[kfk@bigdata-pro01 opt]$ sudo mkdir momdules

[kfk@bigdata-pro01 opt]$ ls

momdules  softwares

[kfk@bigdata-pro01 opt]$ ll

total 8

drwxr-xr-x 2 root root 4096 Oct 15 14:24 momdules

drwxr-xr-x 2 root root 4096 Oct 15 14:21 softwares

[kfk@bigdata-pro01 opt]$ sudo mkdir tools

[kfk@bigdata-pro01 opt]$ sudo mkdir datas

[kfk@bigdata-pro01 opt]$ ll

total 16

drwxr-xr-x 2 root root 4096 Oct 15 14:25 datas

drwxr-xr-x 2 root root 4096 Oct 15 14:24 momdules

drwxr-xr-x 2 root root 4096 Oct 15 14:21 softwares

drwxr-xr-x 2 root root 4096 Oct 15 14:25 tools

[kfk@bigdata-pro01 opt]$ sudo chown -R kfk:kfk /opt/*              //修改目录用户组为kfk

[kfk@bigdata-pro01 opt]$ ll

total 16

drwxr-xr-x 2 kfk kfk 4096 Oct 15 14:25 datas

drwxr-xr-x 2 kfk kfk 4096 Oct 15 14:24 momdules

drwxr-xr-x 2 kfk kfk 4096 Oct 15 14:21 softwares

drwxr-xr-x 2 kfk kfk 4096 Oct 15 14:25 tools

2)jdk安装

大数据平台运行环境依赖JVM,所以我们需要提前安装和配置好jdk。 前面我们已经安装了64位的centos系统,所以我们的jdk也需要安装64位的,与之相匹配

  a)将jdk安装包通过工具上传到/opt/softwares目录下

  b)解压jdk安装包

    #解压命令

    tar -zxf jdk-7u67-linux-x64.tar.gz /opt/modules/

    #查看解压结果

    ls

[kfk@bigdata-pro01 opt]$ cd softwares/

[kfk@bigdata-pro01 softwares]$ rz

-bash: rz: command not found

[kfk@bigdata-pro01 softwares]$ sudo yum -y install lrzsz

  安装完成后用sudo rz命令上传JDK

 Spark新闻项目介绍及Linux集群准备

  解压安装:

[kfk@bigdata-pro01 softwares]$ ls

jdk-8u60-linux-x64.tar.gz

 [kfk@bigdata-pro01 softwares]$ tar -zxvf jdk-8u60-linux-x64.tar.gz -C/opt/momdules/

 

c)配置Java 环境变量

Spark新闻项目介绍及Linux集群准备

 

[kfk@bigdata-pro01 momdules]$ vi /etc/profile(在末尾添加以下内容)

export JAVA_HOME=/opt/modules/jdk1.8.0_60

export PATH=$PATH:$JAVA_HOME/bin 

d)查看Java是否安装成功

[kfk@bigdata-pro01 momdules]$ source /etc/profile   //使配置文件生效

[kfk@bigdata-pro01 momdules]$ java -version

java version "1.8.0_60"

Java(TM) SE Runtime Environment (build 1.8.0_60-b27)

Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

 

3)克隆虚拟机

[kfk@bigdata-pro01 momdules]$ sudo halt   //关掉服务器

 

  在克隆虚拟机之前,需要关闭虚拟机,然后右键选中虚拟机——》选择管理——》选择克隆——》选择下一步——》选择下一步——》选择创建完整克隆,下一步——》选择克隆虚拟机位置(提前创建好),修改虚拟机名称为Hadoop-Linux-pro-2,然后选择完成即可。

  然后使用同样的方式创建第三个虚拟机Hadoop-Linux-pro-3。

4)修改克隆虚拟机配置

  克隆完虚拟机Hadoop-Linux-pro-2和Hadoop-Linux-pro-3之后,可以按照Hadoop-Linux-pro-1的方式配置好ip地址、hostname,以及ip地址与hostname之间的关系。

  第二台机子IP修改为192.168.86.152,第三台机子IP修改为192.168.86.153(具体网络配置参考博文虚拟机克隆及网络配置

 更改主机名

 Spark新闻项目介绍及Linux集群准备

Spark新闻项目介绍及Linux集群准备

  Reboot重启之后发现hostname已经更改了。

 在三台机器都加上域名映射

 Spark新闻项目介绍及Linux集群准备

   至此,该项目所需要三节点集群基础环境就全部搭建完了,下一次将介绍如何在此环境上布置Hadoop2.x分布式集群。


以上就是博主为大家介绍的这一板块的主要内容,这都是博主自己的学习过程,希望能给大家带来一定的指导作用,有用的还望大家点个支持,如果对你没用也望包涵,有错误烦请指出。如有期待可关注博主以第一时间获取更新哦,谢谢!同时也欢迎转载,但必须在博文明显位置标注原文地址,解释权归博主所有!


推荐阅读
  • 一次上线事故,30岁+的程序员踩坑经验之谈
    本文主要介绍了一位30岁+的程序员在一次上线事故中踩坑的经验之谈。文章提到了在双十一活动期间,作为一个在线医疗项目,他们进行了优惠折扣活动的升级改造。然而,在上线前的最后一天,由于大量数据请求,导致部分接口出现问题。作者通过部署两台opentsdb来解决问题,但读数据的opentsdb仍然经常假死。作者只能查询最近24小时的数据。这次事故给他带来了很多教训和经验。 ... [详细]
  • 众筹商城与传统商城的区别及php众筹网站的程序源码
    本文介绍了众筹商城与传统商城的区别,包括所售产品和玩法不同以及运营方式不同。同时还提到了php众筹网站的程序源码和方维众筹的安装和环境问题。 ... [详细]
  • Hadoop源码解析1Hadoop工程包架构解析
    1 Hadoop中各工程包依赖简述   Google的核心竞争技术是它的计算平台。Google的大牛们用了下面5篇文章,介绍了它们的计算设施。   GoogleCluster:ht ... [详细]
  • 【转】腾讯分析系统架构解析
    TA(TencentAnalytics,腾讯分析)是一款面向第三方站长的免费网站分析系统,在数据稳定性、及时性方面广受站长好评,其秒级的实时数据更新频率也获得业界的认可。本文将从实 ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 什么是大数据lambda架构
    一、什么是Lambda架构Lambda架构由Storm的作者[NathanMarz]提出,根据维基百科的定义,Lambda架构的设计是为了在处理大规模数 ... [详细]
  • Zookeeper为分布式环境提供灵活的协调基础架构。ZooKeeper框架支持许多当今最好的工业应用程序。我们将在本章中讨论ZooKeeper的一些最显着的应用。雅虎ZooKee ... [详细]
  • Java开发实战讲解!字节跳动三场技术面+HR面
    二、回顾整理阿里面试题基本就这样了,还有一些零星的问题想不起来了,答案也整理出来了。自我介绍JVM如何加载一个类的过程,双亲委派模型中有 ... [详细]
  • 本文_大数据之非常详细Sqoop安装和基本操作
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了大数据之非常详细Sqoop安装和基本操作相关的知识,希望对你有一定的参考价值。大数据大数据之 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 解决php错误信息不显示在浏览器上的方法
    本文介绍了解决php错误信息不显示在浏览器上的方法。作者发现php中的各种错误信息并不显示在浏览器上,而是需要在日志文件中查看。为了解决这个问题,作者提供了一种解决方式:通过修改php.ini文件中的display_errors参数为On,并重启服务。这样就可以在浏览器上直接显示php错误信息了。 ... [详细]
  • 原创 | 大数据入门基础系列之ClouderaManager版本的Hive安装部署
    添加服务,一 ... [详细]
author-avatar
不爽我就来吐槽_320
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有