自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何在Linux上安裝與配置Hadoop?

運維 系統(tǒng)運維 Hadoop
Hadoop的安裝非常簡單,大家可以在官網(wǎng)上下載到最近的幾個版本,在Unix上安裝Hadoop的過程與在Linux上安裝基本相同,因此本文主要講解如何在Linux上安裝與配置Hadoop。

Hadoop最早是為了在Linux平臺上使用而開發(fā)的,但是Hadoop在UNIX、Windows和Mac OS X系統(tǒng)上也運行良好。不過,在Windows上運行Hadoop稍顯復(fù)雜,首先必須安裝Cygwin以模擬Linux環(huán)境,然后才能安裝Hadoop。Hadoop的安裝非常簡單,大家可以在官網(wǎng)上下載到最近的幾個版本,在Unix上安裝Hadoop的過程與在Linux上安裝基本相同,因此下面不會對其進行詳細介紹。

  在Linux上安裝與配置Hadoop

  在Linux上安裝Hadoop之前,需要先安裝兩個程序:

  1. JDK 1.6或更高版本;

  2. SSH(安全外殼協(xié)議),推薦安裝OpenSSH。

  下面簡述一下安裝這兩個程序的原因:

  1. Hadoop是用Java開發(fā)的,Hadoop的編譯及MapReduce的運行都需要使用JDK。

  2. Hadoop需要通過SSH來啟動salve列表中各臺主機的守護進程,因此SSH也是必須安裝的,即使是安裝偽分布式版本(因為Hadoop并沒有區(qū)分集群式和偽分布式)。對于偽分布式,Hadoop會采用與集群相同的處理方式,即依次序啟動文件conf/slaves中記載的主機上的進程,只不過偽分布式中salve為localhost(即為自身),所以對于偽分布式Hadoop,SSH一樣是必須的。

  一、安裝JDK 1.6

  安裝JDK的過程很簡單,下面以Ubuntu為例。

  (1)下載和安裝JDK

  確保可以連接到互聯(lián)網(wǎng),輸入命令:

  sudo apt-get install sun-java6-jdk

  輸入密碼,確認,然后就可以安裝JDK了。

  這里先解釋一下sudo與apt這兩個命令,sudo這個命令允許普通用戶執(zhí)行某些或全部需要root權(quán)限命令,它提供了詳盡的日志,可以記錄下每個用戶使用這個命令做了些什么操作;同時sudo也提供了靈活的管理方式,可以限制用戶使用命令。sudo的配置文件為/etc/sudoers。

  apt的全稱為the Advanced Packaging Tool,是Debian計劃的一部分,是Ubuntu的軟件包管理軟件,通過apt安裝軟件無須考慮軟件的依賴關(guān)系,可以直接安裝所需要的軟件,apt會自動下載有依賴關(guān)系的包,并按順序安裝,在Ubuntu中安裝有apt的一個圖形化界面程序synaptic(中文譯名為“新立得”),大家如果有興趣也可以使用這個程序來安裝所需要的軟件。(如果大家想了解更多,可以查看一下關(guān)于Debian計劃的資料。)

  (2)配置環(huán)境變量

  輸入命令:

  sudo gedit /etc/profile

  輸入密碼,打開profile文件。

  在文件的最下面輸入如下內(nèi)容:

  #set Java Environment
  export JAVA_HOME= (你的JDK安裝位置,一般為/usr/lib/jvm/java-6-sun)
  export CLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH"
  export PATH="$JAVA_HOME/:$PATH"

  這一步的意義是配置環(huán)境變量,使你的系統(tǒng)可以找到JDK。

  (3)驗證JDK是否安裝成功

  輸入命令:

  java -version

  查看信息:

  java version "1.6.0_14"
  Java(TM) SE Runtime Environment (build 1.6.0_14-b08)
  Java HotSpot(TM) Server VM (build 14.0-b16, mixed mode)

#p#

二、配置SSH免密碼登錄

  同樣以Ubuntu為例,假設(shè)用戶名為u。

  1)確認已經(jīng)連接上互聯(lián)網(wǎng),輸入命令

  sudo apt-get install ssh

  2)配置為可以無密碼登錄本機。

  首先查看在u用戶下是否存在.ssh文件夾(注意ssh前面有“.”,這是一個隱藏文件夾),輸入命令:

  ls -a /home/u

  一般來說,安裝SSH時會自動在當(dāng)前用戶下創(chuàng)建這個隱藏文件夾,如果沒有,可以手動創(chuàng)建一個。

  接下來,輸入命令:

  ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

  解釋一下,ssh-keygen代表生成密鑰;-t(注意區(qū)分大小寫)表示指定生成的密鑰類型;dsa是dsa密鑰認證的意思,即密鑰類型;-P用于提供密語;-f指定生成的密鑰文件。(關(guān)于密鑰密語的相關(guān)知識這里就不詳細介紹了,里面會涉及SSH的一些知識,如果讀者有興趣,可以自行查閱資料。)

  在Ubuntu中,~代表當(dāng)前用戶文件夾,這里即/home/u。

  這個命令會在.ssh文件夾下創(chuàng)建兩個文件id_dsa及id_dsa.pub,這是SSH的一對私鑰和公鑰,類似于鑰匙及鎖,把id_dsa.pub(公鑰)追加到授權(quán)的key里面去。

  輸入命令:

  cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

  這段話的意思是把公鑰加到用于認證的公鑰文件中,這里的authorized_keys是用于認證的公鑰文件。

  至此無密碼登錄本機已設(shè)置完畢。

  3)驗證SSH是否已安裝成功,以及是否可以無密碼登錄本機。

  輸入命令:

  ssh -version

  顯示結(jié)果:

  OpenSSH_5.1p1 Debian-6ubuntu2, OpenSSL 0.9.8g 19 Oct 2007
  Bad escape character 'rsion'.

  顯示SSH已經(jīng)安裝成功了。

  輸入命令:

  ssh localhost

  會有如下顯示:

  The authenticity of host 'localhost (::1)' can't be established.
  RSA key fingerprint is 8b:c3:51:a5:2a:31:b7:74:06:9d:62:04:4f:84:f8:77.
  Are you sure you want to continue connecting (yes/no)? yes
  Warning: Permanently added 'localhost' (RSA) to the list of known hosts.
  Linux master 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:04:26 UTC 2009 i686
  To access official Ubuntu documentation, please visit:
  http://help.ubuntu.com/
  Last login: Mon Oct 18 17:12:40 2010 from master
  admin@Hadoop:~$

  這說明已經(jīng)安裝成功,第一次登錄時會詢問你是否繼續(xù)鏈接,輸入yes即可進入。

  實際上,在Hadoop的安裝過程中,是否無密碼登錄是無關(guān)緊要的,但是如果不配置無密碼登錄,每次啟動Hadoop,都需要輸入密碼以登錄到每臺機器的DataNode上,考慮到一般的Hadoop集群動輒數(shù)百臺或上千臺機器,因此一般來說都會配置SSH的無密碼登錄。#p#

  三、安裝并運行Hadoop

  介紹Hadoop的安裝之前,先介紹一下Hadoop對各個節(jié)點的角色定義。

  Hadoop分別從三個角度將主機劃分為兩種角色。第一,劃分為master和slave,即主人與奴隸;第二,從HDFS的角度,將主機劃分為NameNode和DataNode(在分布式文件系統(tǒng)中,目錄的管理很重要,管理目錄的就相當(dāng)于主人,而NameNode就是目錄管理者);第三,從MapReduce的角度,將主機劃分為JobTracker和TaskTracker(一個job經(jīng)常被劃分為多個task,從這個角度不難理解它們之間的關(guān)系)。

  Hadoop有官方發(fā)行版與cloudera版,其中cloudera版是Hadoop的商用版本,這里先介紹Hadoop官方發(fā)行版的安裝方法。

  Hadoop有三種運行方式:單節(jié)點方式、單機偽分布方式與集群方式。乍看之下,前兩種方式并不能體現(xiàn)云計算的優(yōu)勢,在實際應(yīng)用中并沒有什么意義,但是在程序的測試與調(diào)試過程中,它們還是很有意義的。

  你可以通過以下地址獲得Hadoop的官方發(fā)行版,下載Hadoop-0.20.2.tar.gz并將其解壓,這里會解壓到用戶目錄下,一般為:/home/[你的用戶名]/。

  單節(jié)點方式配置:

  安裝單節(jié)點的Hadoop無須配置,在這種方式下,Hadoop被認為是一個單獨的Java進程,這種方式經(jīng)常用來調(diào)試。

  偽分布式配置:

  你可以把偽分布式的Hadoop看做是只有一個節(jié)點的集群,在這個集群中,這個節(jié)點既是master,也是slave;既是NameNode也是DataNode;既是JobTracker,也是TaskTracker。

  偽分布式的配置過程也很簡單,只需要修改幾個文件,如下所示。

  進入conf文件夾,修改配置文件:

  Hadoop-env.sh:
  export JAVA_HOME=“你的JDK安裝地址”

  指定JDK的安裝位置:

  conf/core-site.xml:
  <configuration>
  <property>
  <name>fs.default.name</name>
  <value>hdfs://localhost:9000</value>
  </property>
  </configuration>

  這是Hadoop核心的配置文件,這里配置的是HDFS的地址和端口號。

  conf/hdfs-site.xml:
  <configuration>
  <property>
  <name>dfs.replication</name>
  <value>1</value>
  </property>
  </configuration>

  這是Hadoop中HDFS的配置,配置的備份方式默認為3,在單機版的Hadoop中,需要將其改為1。

  conf/mapred-site.xml:
  <configuration>
  <property>
  <name>mapred.job.tracker</name>
  <value>localhost:9001</value>
  </property>
  </configuration>

  這是Hadoop中MapReduce的配置文件,配置的是JobTracker的地址和端口。

  需要注意的是,如果安裝的是0.20之前的版本,那么只有一個配置文件,即為Hadoop-site.xml。

  接下來,在啟動Hadoop前,需格式化Hadoop的文件系統(tǒng)HDFS(這點與Windows是一樣的,重新分區(qū)后的卷總是需要格式化的)。進入Hadoop文件夾,輸入下面的命令:

  bin/Hadoop NameNode -format

  格式化文件系統(tǒng),接下來啟動Hadoop。

  輸入命令:

  bin/start-all.sh(全部啟動)

  最后,驗證Hadoop是否安裝成功。

  打開瀏覽器,分別輸入網(wǎng)址:

  http://localhost:50030 (MapReduce的Web頁面)
  http://localhost:50070 (HDFS的Web頁面)

  如果都能查看,說明Hadoop已經(jīng)安裝成功。

  對于Hadoop來說,安裝MapReduce及HDFS都是必須的,但是如果有必要,你依然可以只啟動HDFS(start-dfs.sh)或MapReduce(start-mapred.sh)。

責(zé)任編輯:黃丹 來源: it168
相關(guān)推薦

2015-11-30 15:05:01

Linux瀏覽器Docker

2017-08-15 11:58:15

LinuxCentOSApache Hado

2019-11-26 09:20:47

LinuxJava

2020-04-21 14:21:31

LinuxPython

2021-10-12 08:43:19

LinuxSambaWindows

2021-11-28 06:33:24

Discord消息收發(fā)應(yīng)用 Linux

2012-05-21 10:31:06

LinuxVMware Tool

2015-04-20 08:58:25

DHCPISC DHCP Se

2019-10-21 13:28:38

UbuntuPostgreSQL命令

2021-08-18 11:19:25

FedoraLinuxJava

2021-09-11 15:41:55

UbuntuDropbox云服務(wù)

2017-03-29 16:18:11

LinuxUbuntuRedmine

2021-07-12 14:47:16

UbuntuZlib代碼

2019-08-13 15:39:27

Linux應(yīng)用程序

2019-08-14 09:42:06

LinuxElasticsearKibana

2017-12-11 10:24:29

LinuxGoogleChrome 63

2018-10-23 09:45:05

Arch LinuxGRUB命令

2020-12-28 06:44:45

FedoraLinux RPM文件

2018-07-19 09:20:47

LinuxArchLinuxRPM包

2014-06-23 10:09:20

MacBook ProLinux
點贊
收藏

51CTO技術(shù)棧公眾號