Spark新聞專案介紹及Linux叢集準備
(一)專案介紹
本課程基於企業大資料經典案例專案(大資料日誌分析),全方位、全流程講解 大資料專案的業務分析、技術選型、架構設計、叢集規劃、安裝部署、整合繼承與開發和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.系統架構圖設計
3.系統資料流程設計
4.叢集資源規劃設計
(三)Linux環境準備
新建虛擬機器的操作這裡就不再介紹了,不懂的可以參考博主以前的博文,下面直接進入Linux基本環境配置。
1.通訊配置
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重啟
如上圖表示通訊配置成功。
2.配置網路對映
首先配置Linux環境下的網路配置
[[email protected] Desktop]# vim /etc/hosts
然後配置Windows下的網路對映(博文結束後記得補全三個節點的配置)
儲存後我們就可以在Windows上通過XShell根據連線到虛擬機器,然後進行操作了。
啟動Xshell。新建一個連線如下:
然後我們就能連線上了。
3.關閉防火牆
[[email protected] ~]$ 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. [[email protected]-pro01 ~]$ su Password: [[email protected]-pro01 kfk]# visudo //配置kfk使用者sudo許可權及免密碼登陸
然後新增以下內容:
關閉防火牆:
[[email protected]pro01 kfk]# su kfk [[email protected]-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 [[email protected]-pro01 ~]$ sudo service iptables stop //關閉防火牆 iptables: Setting chains to policy ACCEPT: filter [ OK ] iptables: Flushing firewall rules: [ OK ] iptables: Unloading modules: [ OK ] [[email protected]-pro01 ~]$ sudo service iptables status iptables: Firewall is not running. [[email protected]-pro01 ~]$ sudo chkconfig iptables off //永久禁用 [[email protected]-pro01 ~]$ sudo vim /etc/sysc sysconfig/ sysctl.conf [[email protected]-pro01 ~]$ sudo vim /etc/sysconfig/selinux //配置每次自啟動後防火牆都為關閉狀態
4.解除安裝自帶的JDK
[[email protected] ~]$ 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 [[email protected]-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 [[email protected]-pro01 ~]$ sudo rpm -qa|grep java [[email protected]-pro01 ~]$
5.克隆虛擬機器並進行相關的配置
前面我們已經做好了Linux的系統常規設定,接下來需要克隆虛擬機器並進行相關的配置。
1)kfk使用者下建立我們將要使用的各個目錄
#軟體目錄
mkdir /opt/softwares
#模組目錄
mkdir /opt/modules
#工具目錄
mkdir /opt/tools
#資料目錄
mkdir /opt/datas
[[email protected] ~]$ cd / [[email protected]-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 [[email protected]-pro01 /]$ sudo mkdir /opt/softwares [[email protected]-pro01 /]$ cd /opt/ [[email protected]-pro01 opt]$ ls rh softwares [[email protected]-pro01 opt]$ sudo rm -rf ./rh [[email protected]-pro01 opt]$ ls softwares [[email protected]-pro01 opt]$ sudo mkdir momdules [[email protected]-pro01 opt]$ ls momdules softwares [[email protected]-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 [[email protected]-pro01 opt]$ sudo mkdir tools [[email protected]-pro01 opt]$ sudo mkdir datas [[email protected]-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 [[email protected]-pro01 opt]$ sudo chown -R kfk:kfk /opt/* //修改目錄使用者組為kfk [[email protected] 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
[[email protected] opt]$ cd softwares/ [[email protected]-pro01 softwares]$ rz -bash: rz: command not found [[email protected]-pro01 softwares]$ sudo yum -y install lrzsz
安裝完成後用sudo rz命令上傳JDK
解壓安裝:
[[email protected]pro01 softwares]$ ls jdk-8u60-linux-x64.tar.gz [[email protected]-pro01 softwares]$ tar -zxvf jdk-8u60-linux-x64.tar.gz -C/opt/momdules/
c)配置Java 環境變數
[[email protected] momdules]$ vi /etc/profile(在末尾新增以下內容) export JAVA_HOME=/opt/modules/jdk1.8.0_60 export PATH=$PATH:$JAVA_HOME/bin
d)檢視Java是否安裝成功
[[email protected] momdules]$ source /etc/profile //使配置檔案生效 [[email protected]-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)克隆虛擬機器
[[email protected] 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(具體網路配置參考博文虛擬機器克隆及網路配置)
更改主機名
Reboot重啟之後發現hostname已經更改了。
在三臺機器都加上域名對映
至此,該專案所需要三節點叢集基礎環境就全部搭建完了,下一次將介紹如何在此環境上佈置Hadoop2.x分散式叢集。
以上就是博主為大家介紹的這一板塊的主要內容,這都是博主自己的學習過程,希望能給大家帶來一定的指導作用,有用的還望大家點個支援,如果對你沒用也望包涵,有錯誤煩請指出。如有期待可關注博主以第一時間獲取更新哦,謝謝!同時也歡迎轉載,但必須在博文明顯位置標註原文地址,解釋權歸博主所有!