大資料零基礎由入門到實戰

weixin_34127717發表於2018-05-03

零基礎學習hadoop,沒有想象的那麼困難,也沒有想象的那麼容易。在剛接觸雲端計算,曾經想過培訓,但是培訓機構的選擇就讓我很糾結。所以索性就自己學習了。整個過程整理一下,給大家參考,歡迎討論,共同學習。

從一開始什麼都不懂,到能夠搭建叢集,開發。整個過程,只要有Linux基礎,虛擬機器化和java基礎,其實hadoop,沒有太大的困難。


11779266-c9f24a7cc2757702.jpg

首先整體說一下學習過程給大家借鑑:

首先查閱了資料,什麼是hadoop,至於這方面,你可以參考這個帖子hadoop新手學習指導。對這個有了整體的認識之後開始下面內容。(新手請務必參考hadoop新手學習指導,否則後面可能看不懂)

我們知道hadoop,有單機安裝,偽分佈安裝和分佈安裝。

同時hadoop的環境是Linux,所以我們還需要安裝Linux系統。因為我們的習慣是使用windows,所以對於Linux上來就安裝軟體之類的,困難度很大。並且我們要搭建叢集,需要多臺硬體的,不可能為了搭建叢集,去買三臺電腦。

從成本和使用我們需要懂虛擬化方面的知識。這裡的虛擬化其實就是我們需要懂得虛擬機器的使用。因為hadoop安裝在Linux中,才能真正發揮作用。所以我們也不會使用windows。

(這裡補充硬體的選擇:最關鍵的是記憶體,2G記憶體是有點卡的,4G有點勉強的,8G用起來順暢)

基於以上內容。所以我們需要懂得

1.虛擬化

2.Linux

3.java基礎

下面來詳細介紹

1.虛擬化

剛開始學習,上來就安裝了虛擬機器wmware station,然後建立虛擬機器,安裝Linux。但是問題來了。虛擬機器的網路難住,因為缺乏這方面的知識,所以不得不停下來,學習虛擬機器的網路,該怎麼搞。虛擬機器網路分為三種:

1.briage

2.host-only

3.nat

這不是很簡單的嗎?網上資料也不少。可是事情並沒有想象的那麼簡單,因為nat雖然能上網,但是虛擬系統無法和本區域網中的其他真實主機進行通訊。橋接模式全都需要手工配置,而且這裡還需要明白自己是本機撥號上網,還是路由撥號上網。host-only建立一個與網內其他機器相隔離的虛擬系統,這個更不行。這些都不適合我們的hadoop叢集。hadoop要求主機與虛擬機器與外部網路(能上網),這三者都是通的,在安裝的過程中,才不會遇到麻煩。

所以這就是虛擬化方面的困難。

下面總結了在虛擬化方面需要做的:

虛擬化零基礎入門

此文章讓你明白為什麼虛擬化,虛擬化的價值

虛擬機器入門二,虛擬機器的三種網路模式

詳細介紹了虛擬化三種網路模式

搭建叢集必備虛擬化網路知識

上面瞭解三種網路模式,這三種網路模式該如何才能上網。

對於上面你可能瞭解的還不夠,下面我們們論壇會員具體實踐指導,可以與他們相互交流:

叢集搭建:主機寬頻撥號上網,虛擬機器使用橋接模式,該如何ping通外網

叢集搭建必備:虛擬機器之一實現Host-only方式上網

叢集搭建必備:nat模式設定靜態ip,達到上網與主機相互通訊

上面是三種不同網路模式下,如何達到,虛擬機器,主機,網路三者互通。

上面的知識具備了我們開始動手:

第一步:下載軟體

VMware Workstation 10.0.0簡體中文正式版官方下載地址

ubuntu-desktop 版:是圖形介面

ubuntu-12.04-desktop-amd64

連結: http://pan.baidu.com/s/1eQxHLFO 密碼: nnkv 

新手指導windows使用虛擬機器安裝Linux(ubuntu):包括下載及安裝指導

上面的帖子很齊全,包括wmware下載Linux桌面版下載。還有安裝指導,包括下面需要講解的Linux安裝指導

第二步:

下載我們就需要安裝和使用

VMware workstation安裝linux(ubuntu)配置詳解

在這裡我們安裝完畢虛擬機器,安裝完畢Linux,我們需要返回第一步,進行網路設定。但是在網路設定中,我們會遇到各種各樣的困難,因為缺乏Linux知識。

同時這裡補充一些虛擬化的基礎知識:

虛擬網路卡概述

VMware虛擬機器網路設定方法

虛擬機器(Linux作業系統)三種網路模式切換遇到的問題

虛擬機器安裝Linux視訊

2.Linux

2.1、Linux基礎知識

對於Linux的學習也是一個過程,因為可能你連最簡單的開機和關機命令都不會,更不要談配置網路。這裡面給大家提供剛開始學習所查閱的資料和經驗總結。

首先我們需要使用一些命令,進行網路配置,但是在網路配置中,這裡面又必須懂得虛擬機器的一些知識,所以前面的虛擬機器知識需要掌握紮實一些。

對於網路配置:

叢集搭建:主機寬頻撥號上網,虛擬機器使用橋接模式,該如何ping通外網

叢集搭建必備:虛擬機器之一實現Host-only方式上網

叢集搭建必備:nat模式設定靜態ip,達到上網與主機相互通訊

其實還是上面三個,但是我們會遇到各種不會的命令,即使能查到命令,我們也不能使用。為什麼會這樣,因為各種有的命令,是需要使用安裝包的。我們在配置網路過程中,同樣會遇到各種各樣的奇怪的配置。在我們的Linux的系統,不能找到檔案。這裡只舉ubuntu。網路配置檔案/etc/network/interfaces。我們配置完畢之後,有各種網路重啟方式:

/etc/init.d/networking  restart

複製程式碼

這是一種網路重啟方式,但是有時候並不管用。

那麼這時候我們遇到困難了,剛接觸命令不起作用,該怎麼辦?

ifconfig eth0 down

複製程式碼

ifconfig eth0 up

複製程式碼

(這裡同樣需要明白,我這裡使用的是eth0上網的,如果你使用的是eth1,就需要替換成eth1)

上面的兩個命令能達到同樣的效果。

在舉一例:

我們需要配置網路檔案,在很多網路配置是使用下面的命令的

vim /etc/network/interfaces

複製程式碼

但是我們看到下面錯誤

The program vim can be found in the following package:

vim

vim -gnome

vim-tiny

vim-gtk

vim-nox

Try:sudo apt-get install

複製程式碼

這和我們看到的配置完全不一樣。這是因為我們安裝Linux之後,並沒有安裝vim包。所以我們又遇到了困難。如果你熟悉Linux的話,這個根本不是問題。

vi /etc/network/interfaces

複製程式碼

上面命令迎刃而解。一個vim,一個vi。在我們剛接觸這些肯定雲裡霧裡,所以你需要首先有成就感,然後在慢慢接觸。下面都是經過實踐的內容,也算是經驗,大家可以參考。

雲技術基礎:學習hadoop使用零基礎linux(Ubuntu)筆記

搭建叢集必知:Linux常用命令及修改檔案總結(不斷更新)    

Linux網路介面ifconfig命令及認識網路介面lo

linux入門詳細介紹

虛擬機器安裝linux網路配置資料大全

解決遇到Linux網路配置,從熟悉網路配置檔案入手(大體瞭解即可)

linux入門大全:包括零基礎入門,Linux詳細介紹

Linux重啟方式init 0 init1 init 3 init 5 init 6 這幾個啟動級別都代表什麼意思?

Ubuntu常用命令總結及修改DNS的多種方法總結

Linux關機各種關機命令總結

Linux基礎必懂:eth0,eth1,eth2,lo是什麼意思?

此篇文章幫助認識網路卡,判斷網路卡是否啟動,對於網路的也算是常識。

--------------------------------------------------------------------------------------------------------------------------------------------

linux中pwd命令詳解

這是瞭解你所處路徑的,起到輔助的作用。

linux之vi編輯器

此篇文章較為關鍵,因為經常用到,而且需要熟悉

編輯模式

命令模式

如何儲存,如何退出等各種操作

linux yum命令詳解

Linux下chkconfig命令詳解

熟悉他的作用就是能夠檢視軟體安裝是否成功

2.1、Linux安裝hadoop

上面切記浮躁,因為這也是上面一到兩個月的總結。我們不可能一天兩天就能完成。所以上面需要我們經過最起碼完全一週的時間。我們熟悉了Linux命令,熟悉了網路知識。後面我們進行的快多了。

部署叢集,首先需要安裝java,然後安裝hadoop。

首先我們還是從零基礎開始。

我們需要下載和本地電腦相匹配的jdk,是32位的下載32位,是64位的下載64位。這裡我們從最簡單的入手。在這過程中,可能遇到問題的是環境變數的配置,造成命令不能識別。而這裡你需要學習新的Linux知識。不過如果前面你已經配置完網路,有了這個基礎,在學習新的知識,壓力明顯變小了。

下面給大家分享一下,在Linux中如何安裝Java和hadoop。

(hadoop2搭建參考hadoop2.2完全分散式最新高可靠安裝文件

Hadoop安裝過程:Hadoop單機環境搭建權威指南(ubuntu) 

安裝完畢,我們該怎麼用,該怎麼測試安裝成功。

叢集安裝完畢,該如何測試和使用叢集-hadoop單機

通過上面帖子,我們很容易安裝完成,如果是剛熟悉Linux,需要補充下面知識,才能順利完成。

linux中Java jdk環境變數的含義

linux(ubuntu)安裝Java jdk環境變數設定及小程式測試

Linux中source命令學習

11779266-d92655ea9f338f8e.gif

今天在寫點內容,以上我們們已經會安裝叢集了,那麼我們就需要進入開發了。開發零基礎,該如何,我們們提供了相關的內容分別介紹下面文章

學習hadoop----java零基礎學習線路指導視訊(1)

這一篇我們使用什麼開發工具,甚至考慮使用什麼作業系統。然後就是Java基礎知識篇,包括變數、函式等。

學習hadoop---Java初級快讀入門指導(2)

第一篇是屬於思想篇,那麼這一篇屬於實戰篇,通過不同的方式,交給你怎麼編寫第一個小程式。

Java零基礎:一步步教你如何使用eclipse建立專案及編寫小程式例項

由於上面沒有真正抽象出eclipse的使用,所以這裡專門介紹了使用eclipse如何建立專案,及如何編寫小程式例項

java基礎:eclipse程式設計不得不知道的技巧

eclipse基本知識會了之後,我們在專案,這些技巧相當有用,而且經常用到

hadoop開發方式總結及操作指導

這是第三篇,我們上面熟悉之後,就可以開發hadoop。但是因為hadoop是屬於分散式,所以如果對Java越是熟悉,可能產生的問題就會越多。這裡總結了hadoop的開發方式。

在此我向大家推薦一個大資料學習交流群710219868: 裡面會分享一些資 深大資料工程師架構師錄製的視訊錄影 資料開發師必備的知識體系。還能領取免費的學習資源。注意 學習編號 填寫八月哦!!

相關文章