1. 程式人生 > >Hadoop學習筆記—22.Hadoop2.x環境搭建與配置

Hadoop學習筆記—22.Hadoop2.x環境搭建與配置

自從2015年花了2個多月時間把Hadoop1.x的學習教程學習了一遍,對Hadoop這個神奇的小象有了一個初步的瞭解,還對每次學習的內容進行了總結,也形成了我的一個博文系列《Hadoop學習筆記系列》。其實,早在2014年Hadoop2.x版本就已經開始流行了起來,並且已經成為了現在的主流。當然,還有一些非離線計算的框架如實時計算框架Storm,近實時計算框架Spark等等。相信瞭解Hadoop2.x的童鞋都應該知道2.x相較於1.x版本的更新應該不是一丁半點,最顯著的體現在兩點:

(1)HDFS的NameNode可以以叢集的方式佈署,增強了NameNodes的水平擴充套件能力和高可用性,分別是:HDFS Federation

HA

(2)MapReduce將JobTracker中的資源管理及任務生命週期管理(包括定時觸發及監控),拆分成兩個獨立的元件,並更名為YARN(Yet Another Resource Negotiator);

因此,我決定趁著現在又變成了單身狗(滿滿的都是傷感)的時機,把Hadoop2.x學習一下,也順帶分享一些學習筆記的文章與園友們分享。

至於Hadoop2.x到底相較於1.x有哪些改變,如果你不太知道,那麼你可以先閱讀一下這篇文章《Hadoop2的改進內容簡介》大概瞭解一下,本篇內容將不會介紹這些,直接上環境搭建與配置的內容。

一、準備工作

  (1)一臺配置不錯的電腦或筆記本(主要是記憶體、記憶體、記憶體,重要的事情說三遍)

  (2)一個你使用過的虛擬機器軟體(可以是VMWare、Virtual Box或者其他的,我用的VMWare WorkStation)

  (3)一個你使用過的SSH客戶端軟體(可以使XShell,XFtp、WinSCP等等,我用的XShell+XFtp)

  (4)Hadoop2.4.1、JDK1.7的linux安裝包(當然你也可以直接線上下載)

  當然,體貼的我已為你準備了Hadoop2.4.1和JDK1.7的包,你可以通過這個連結下載:點我下載

二、偽分散式搭建

  2.1 基礎網路配置

  安裝完VMware Workstation之後,你的網路介面卡會多出來兩個,你要做的就是為多出來的第2個網絡卡設定靜態IP地址,我這裡是Ethernet 3

  這裡我們設定閘道器為192.168.22.1,為宿主機設定IP為192.168.22.2,也就是說我們的虛擬機器必須要在192.168.22.x這個網段內。

  然後我們再為虛擬機器設定網路連線方式,選擇VMNET8(NAT模式),如果你不知道NAT是什麼意思,請百度一下。

  2.2 為虛擬機器安裝Linux映象

  這裡我們選擇的是CentOS,你也可以選擇其他的Linux發行版本。

  2.3 設定靜態IP地址

  輸入命令 setup -> 進入Device Configuration -> 輸入service network restart重啟網絡卡

  另外,想要在宿主機訪問虛擬機器,需要開放埠,為了方便,我們直接將虛擬機器的防火牆關閉:sudo service iptables stop

  檢查狀態:sudo chkconfig iptables off

  2.4 設定完全命令列模式啟動

  輸入命令 sudo vi /etc/inittab -> 修改id:3 -> 輸入reboot重啟虛擬機器

  2.5 使用XShell代替VMware直接操作

  這個時候你就可以使用XShell而不再需要在VMware裡直接敲命令了,你會發現XShell用起來很爽!

  2.6 將hadoop使用者加入sudo使用者組

  由於linux下root使用者的許可權太大,經常使用root使用者會很不安全,所以我們一般使用一個一般使用者去操作,在用到需要高許可權時使用sudo命令去執行。因此,我們這裡需要將hadoop使用者加入sudo使用者組。

  輸入命令 su -> vi /etc/sudoers -> 找到這一行:root ALL=(ALL) ALL

  然後在它下面一行加上一行:hadoop  ALL=(ALL) ALL

  最後儲存退出。

  2.7 更改主機名與IP地址對映關係

  (1) sudo vi /etc/sysconfig/network -> hadoop-master.manulife -> reboot
    (2) sudo vi /etc/hosts -> 加一行: 192.168.22.100 hadoop-master.manulife

  2.8 建立一個專門放安裝包的資料夾(非必要)

  (1) rm -rf P* D* Music/ Videos/ Templates/
    (2) mkdir app -> 安裝後的地方
    (3) mkdir local -> 放置安裝包的地方

  2.9 安裝JDK

  (1)上傳jdk到虛擬機器,這裡藉助SFtp軟體

  (2)解壓jdk:tar -zvxf jdk -C ../app/

  (3)設定環境變數:

sudo vi /etc/profile
  export JAVA_HOME=/home/hadoop/app/jdk1.7.0_65
  export PATH=$PATH:$JAVA_HOME/bin;
source /etc/profile  

  2.10 安裝Hadoop

  (1)上傳jdk到虛擬機器,這裡藉助SFtp軟體

  (2)解壓jdk:tar -zvxf hadoop -C ../app/

  (3)刪除hadoop中share資料夾中的多餘doc檔案(非必要):rm -rf doc

  (4)設定hadoop中etc資料夾中的一些重要配置檔案:cd etc -> hadoop-env.sh,core-site.xml,hdfs-site.xml,yarn-site.xml,mapred-site.xml

  hadoop-env.sh

  vim hadoop-env.sh
  #第27行
  export JAVA_HOME=/home/hadoop/app/jdk  

  core-site.xml

  <!-- 指定HADOOP所使用的檔案系統schema(URI),HDFS的老大(NameNode)的地址 -->
  <property>
     <name>fs.defaultFS</name>
     <value>hdfs://hadoop-master.manulife:9000</value>
  </property>
  <!-- 指定hadoop執行時產生檔案的儲存目錄 -->
  <property>
      <name>hadoop.tmp.dir</name>
      <value>/home/hadoop/app/hadoop/tmp</value>
  </property>  

  hdfs-site.xml

  <!-- 指定HDFS副本的數量 -->
  <property>
     <name>dfs.replication</name>
     <value>1</value>
  </property>  

  yarn-site.xml

  <!-- 指定YARN的老大(ResourceManager)的地址 -->
  <property>
     <name>yarn.resourcemanager.hostname</name>
     <value>hadoop-master.manulife</value>
  </property>
  <!-- reducer獲取資料的方式 -->
  <property>
     <name>yarn.nodemanager.aux-services</name>
     <value>mapreduce_shuffle</value>
  </property>  

  mapred-site.xml (需要首先換個名字:mv mapred-site.xml.template mapred-site.xml)

  <!-- 指定mr執行在yarn上 -->
  <property>
     <name>mapreduce.framework.name</name>
     <value>yarn</value>
  </property>  

  (5)設定環境變數

sudo vi /etc/profile

export JAVA_HOME=/usr/java/jdk1.7.0_65
export HADOOP_HOME=/itcast/hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile

  (6)格式化NameNode

  hadoop namenode -format

  (7)啟動Hadoop兩大核心功能:HDFS與YARN

  首先編輯slaves配置檔案(這裡我們的主節點既是DataNode又是NameNode):vi slaves -> add hadoop-master.manulife

  啟動HDFS:sbin/start-dfs.sh

  啟動YARN:sbin/start-yarn.sh

  驗證是否啟動:jps

  (8)在宿主機中訪問Hadoop Manager

  首先將虛擬機器的IP地址和主機名加入Windows Hosts:windows/system32/etc -> 加一行 : 192.168.22.100 hadoop-master.manulife

  開啟瀏覽器輸入:http://hadoop-master.manulife:50070

  2.11 HDFS簡單測試

  上傳一個檔案至HDFS : hadoop fs -put xxxx.tar.gz hdfs://hadoop-master.manulife:9000/
    從HDFS下載一個檔案 : hadoop fs -get hdfs://hadoop-master.manulife:9000/xxxx.tar.gz

  2.12 MapReduce簡單測試

  這裡直接執行一個hadoop自帶的求圓周率的example:

  (1)cd /home/hadoop/app/hadoop/share/hadoop/mapreduce/
    (2)hadoop jar hadoop-mapreduce-examples-2.4.1.jar pi 5 5

  2.13 SSH免密碼登入

  一般linux分散式叢集中都會設定ssh免密碼登入,這裡我們首先將主節點設定為ssh免密碼登入:

  (1)ssh-keygen -t rsa
    (2)cd .ssh -> cp id_rsa.pub authorized_keys
    (3)ssh localhost

三、Java開發環境搭建

  3.1 準備工作 

  3.2 使用Java API操作HDFS

  3.3 簡單測試

四、完全分散式搭建

作者:周旭龍

本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連結。

相關推薦

Hadoop學習筆記22.Hadoop2.x環境搭建配置

自從2015年花了2個多月時間把Hadoop1.x的學習教程學習了一遍,對Hadoop這個神奇的小象有了一個初步的瞭解,還對每次學習的內容進行了總結,也形成了我的一個博文系列《Hadoop學習筆記系列》。其實,早在2014年Hadoop2.x版本就已經開始流行了起來,並且已經成為了現在的主流。當然,還有一些非

Hadoop學習筆記—21.Hadoop2的改進內容簡介

做的 說明 後者 實踐 管理系 一個 變化 它的 軟件 Hadoop2相比較於Hadoop1.x來說,HDFS的架構與MapReduce的都有較大的變化,且速度上和可用性上都有了很大的提高,Hadoop2中有兩個重要的變更: (1)HDFS的NameNode可以以集群的方式

Java學習筆記一:Java開發環境搭建

默認安裝 進制 二進制文件 text ase www. java學習 span home Java開發環境搭建 第一步:安裝JDK 1.下載地址:http://www.oracle.com/technetwork/java/javase/downloads 非

Django學習筆記——背景瞭解及環境搭建

背景瞭解 Django是什麼 Django是一個開放原始碼的Web應用框架,由Python寫成。採用了MVC的框架模式,即模型M,檢視V和控制器C。 特點 在Django中,控制器接受使用者輸入的部分由框架自行處理,所以 Django 裡更關注的是模型(

[基礎篇]ESP8266-NonOS學習筆記(一)之開發環境搭建

上篇文章我們瞭解了ESP8266到底是個什麼“東西”,瞭解了ESP8266在這個萬物互聯時代有哪些優勢,那我們不能光是瞭解,我們還需要去深入的學習一下,爭做物聯網時代的弄潮兒~繼往開來第二篇,本篇文章主要介紹一下幾種常見的ESP8266開發方式,感覺現在不管是學習硬體開發還是軟體開發,第一節課都是先學習一下開

SpringMVC學習筆記(一、環境搭建

SpringMVC主要功能 在獲取多個引數、檔案上傳、servlet功能單一方面都有很好的解決辦法 SpringMVC 環境搭建 構建一個空的WEB專案(記住勾選xml檔案) 匯入所需jar包 書寫主配置檔案: 建立resource資料夾 建立spring

React Native學習筆記2:Android環境搭建

背景 各位童鞋有木有感覺官方文件很坑啊,根據官網的描述,首先在chocolate就直接卡死了,VPN沒什麼卵用,於是逐個去官網下載,直到昨天才發現不用VPN也可以下!公司是windows環境,這裡就先用windows搭建。 因為本身是移動開發者,所以

C# Hadoop學習筆記(一)—環境安裝

一、安裝環境 1,前期準備:官網下載“NuGet Package Manager”,按自己已有的VS環境下載對應版本; 3,安裝。 4,通過HDInsight,安裝Windows Azure,目前是預覽版本。 二、測試DEMO using System; using

Python資料分析挖掘學習筆記一:庫和環境搭建

概念介紹: 資料分析:  用適當的統計分析方法對收集來的大量資料進行詳細研究和概括總結,以求最大化地發揮資料的作用,提取有用資訊和形成結論 資料探勘: 從大量資料中通過演算法搜尋隱藏於其中資訊的過程. 資料分析的三大作用:現狀分析、原因分析、預測分析。 資料分析的流程

基於centos的Hadoop2.x環境搭建

hadoop2.0環境搭建 1.安裝vmware 這裡就不介紹如何安裝了,不清楚可在網上找一些教程 2.vmware安裝centos6 2.1centos系統安裝 開啟vmware 點選檔案 ,點選檔案 ->新建虛擬機器 新建虛擬機器

Hadoop學習筆記(3)-搭建Hadoop偽分散式

0.前言 1.配置core-site.xml檔案 配置hadoop目錄下的etc/Hadoop/core-site.xml檔案。 新增如下內容: 官網上只配置了fs.defaultFS引數,這個引數是配置hdfs的url地址。配置好後就可

Lua學習筆記1:開發環境搭建(windows和linux)

一 windows 1 下載安裝“Lua For Windows” 2 安裝  3 編碼 開啟SciTE,輸入: print("hello,lua!"); 然後儲存,字尾名一定要是".lua",不然無法執行 4 執行 Tools-》Go,或者快捷鍵F5 二

Solr學習筆記一 ---Solr執行環境搭建(tomcat7 + solr 3.5 +ubuntu 10.04)

一、軟體下載 二、軟體安裝   1、安裝Tomcat7, 解壓apache-tomcat-7.0.26.tar.gz,增加環境變數      export $CATALINA_HOME=apache-tomcat-7.0.26    export $CATALINA_B

elk5.x環境搭建常用插件安裝

elk ELK 5.X 環境搭建與常用插件安裝環境介紹:ip: 192.168.250.131os: CentOS 7.1.1503 (Core)內存不要給的太低,至少4G吧,否則elasticsearch啟動會報錯。軟件及其版本 這裏軟件包都解壓在了/opt下,註意!logstash-

hadoop學習筆記(2)偽分佈模式配置

前面介紹了linux下hadoop的安裝和簡單配置,主要是獨立模式的配置,所謂獨立模式是指不需要執行任何守護程序(daemon),所有程式都再單個JVM上執行,由於在獨立模式下測試和除錯MapReduce程式較為方便,因此該模式適合用在開發階段。 這裡主要記錄了本人配置hadoop偽分佈模式的過程。所謂

Java環境搭建配置

下一步 javase 環境 分享 sys ++ jdk1.8 8.0 java環境搭建   JDK下載與安裝   俗話說,工欲善其事,必先利其器。首先開發Java,先需要下載JDK安裝包,官網下載地址:http://www.oracle.com/technetwork/ja

Linux-LAMP環境搭建配置

Linux-LAMP查詢Linux系統是多少位# uname -i下載# wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz # wget http://archive.apache.o

LAMP環境搭建配置

lin option defaults etc con 環境搭建 源碼包 com between 基本概念 LAMP是 Linux Apache MySQL PHP 的簡寫,LAMP一般用來組件Web應用平臺 Apache是最常用的Web服務軟件。 MySQL是小

Webpack + ES6 最新環境搭建配置

提升 mod 正則 scrip host 訪問 cti mode main.c 一,準備工作 1.下載node.js 和 npm 2.將鏡像源替換為淘寶鏡像 二,創建目錄及安裝webpack 創建項目 在命令行中輸入 npm init -y 我們看到了項目中多了一個p

Android 開發:(一)安卓開發環境搭建配置 (Windows和Mac )以及目錄結構介紹

(一)、windows版 一. 開發工具: 1.Android Studio:(http://www.androiddevtools.cn/) 2.Genymotion(虛擬機器):(http://www.genymotion.net/) (二)、Mac版 一