高可用Hadoop平臺-Hue In Hadoop

1.概述

  前面一篇博客《高可用Hadoop平臺-Ganglia安裝部署》,爲你們介紹了Ganglia在Hadoop中的集成,今天爲你們介紹另外一款工具——Hue,該工具功能比較豐富,下面是今天爲你們分享的內容目錄:html

  • Hue簡述
  • Hue In Hadoop
  • 截圖預覽

  本文所使用的環境是Apache Hadoop-2.6版本,下面開始今天的內容分享。python

2.Hue簡述

  Hue是一個開源的Apache Hadoop UI系統,由Cloudera Desktop演化而來,最後Cloudera公司將其貢獻給Apache基金會的Hadoop社區,它是基於Python Web框架Django實現的。經過使用Hue咱們能夠在瀏覽器端的Web控制檯上與Hadoop集羣進行交互來分析處理數據,例如操做HDFS上的數據,運行MapReduce Job,執行Hive的SQL語句,瀏覽HBase數據庫等等。mysql

  Hue在數據庫方面,默認使用的是SQLite數據庫來管理自身的數據,包括用戶認證和受權,另外,能夠自定義爲MySQL數據庫、Postgresql數據庫、以及Oracle數據庫。其自身的功能包含有:git

  • 對HDFS的訪問,經過瀏覽器來查閱HDFS的數據。
  • Hive編輯器:能夠編寫HQL和運行HQL腳本,以及查看運行結果等相關Hive功能。
  • 提供Solr搜索應用,並對應相應的可視化數據視圖以及DashBoard。
  • 提供Impala的應用進行數據交互查詢。
  • 最新的版本集成了Spark編輯器和DashBoard
  • 支持Pig編輯器,並可以運行編寫的腳本任務。
  • Oozie調度器,能夠經過DashBoard來提交和監控Workflow、Coordinator以及Bundle。
  • 支持HBase對數據的查詢修改以及可視化。
  • 支持對Metastore的瀏覽,能夠訪問Hive的元數據以及對應的HCatalog。
  • 另外,還有對Job的支持,Sqoop,ZooKeeper以及DB(MySQL,SQLite,Oracle等)的支持。

  下面就經過集成部署,來預覽相關功能。github

3.Hue In Hadoop

  本文所使用的Hadoop環境是基於Apache社區版的Hadoop2.6,在集成到Hadoop上,Hue的部署過程是有點複雜的。Hue在CDH上是能夠輕鬆的集成的,咱們在使用CDH的那套管理系統是,能夠很是容易的添加Hue的相關服務。然而,在實際業務場景中,每每Hadoop集羣使用的並不是都是CDH版的,在Cloudera公司使用將其貢獻給Apache基金會後,在Hadoop的集成也有了較好的改善,下面就爲你們介紹如何去集成到Apache的社區版Hadoop上。web

3.1基礎軟件

  在集成Hue工具時,咱們須要去下載對應的源碼,該系統是開源免費的,能夠在GitHub上下載到對應的源碼,下載地址以下所示:sql

git@github.com:cloudera/hue.git

  咱們使用Git命令將其克隆下來,命令以下所示:數據庫

git clone git@github.com:cloudera/hue.git

  而後,咱們在Hadoop帳號下安裝Hue須要的依賴環境,命令以下所示:json

sudo yum install krb5-devel cyrus-sasl-gssapi cyrus-sasl-deve libxml2-devel libxslt-devel mysql mysql-devel openldap-devel python-devel python-simplejson sqlite-devel

  等待其安裝完畢。api

3.2編譯部署

  在基礎環境準備完成後,咱們開始對Hue的源碼進行編譯,編譯的時候,Python的版本須要是2.6+以上,否則在編譯的時候會出現錯誤,編譯命令以下所示:

[hadoop@nna ~]$ cd hue
[hadoop@nna ~]$ make apps

  等待其編譯完成,在編譯的過程當中有可能會出現錯誤,在出現錯誤時Shell控制檯會提示對應的錯誤信息,你們能夠根據錯誤信息的提示來解決對應的問題,在編譯完成後,咱們接下來須要對其作對應的配置,Hue的默認配置是啓動本地的Web服務,這個咱們須要對其修改,供外網或者內網去訪問其Web服務地址,咱們在Hue的根目錄下的desktop/conf文件夾下加pseudo-distributed.ini文件,而後咱們對新增的文件添加以下內容:

vi pseudo-distributed.ini
[desktop]
http_host=10.211.55.28
http_port=8000
[hadoop]
    [[hdfs_clusters]]
        [[[default]]]
            fs_defaultfs=hdfs://cluster1
            logical_name=cluster1
            webhdfs_url=http://10.211.55.26:50070/webhdfs/v1
            hadoop_conf_dir=/home/hadoop/hadoop-2.6.0/etc/hadoop
[beeswax]
    hive_server_host=10.211.55.17
    hive_server_port=10000
    # hive_conf_dir=/home/hive/warehouse
[hbase]
    hbase_clusters=(cluster1|10.211.55.26:9090)
    hbase_conf_dir=/home/hadoop/hbase-1.0.1/conf

  關於Hue的詳細和更多配置須要,你們能夠參考官方給的知道文檔,鏈接地址以下 所示:

http://cloudera.github.io/hue/docs-3.8.0/manual.html

  這裏,Hue的集成就完成了,下面能夠輸入啓動命令來查看,命令以下所示:

[hadoop@nna ~]$ /root/hue-3.7.1/build/env/bin/supervisor &

  啓動信息以下所示:

  下面,在瀏覽器中輸入對應的訪問地址,這裏我配置的Port是8000,在第一次訪問時,須要輸入用戶名和密碼來建立一個Administrator,這裏須要在一步的時候須要注意下。

4.截圖預覽

  下面附上Hue的相應的截圖預覽,以下圖所示:

5.總結

  在編譯的時候,你們須要注意Hue的依賴環境,因爲咱們的Hadoop集羣不是CDH版本的,因此在集成Hue的服務不能像CDH上那麼輕鬆。在Apache的Hadoop社區版上集成部署,會須要對應的環境,如果缺乏依賴,在編譯的時候是會發生錯誤的。因此,這裏須要特別留心注意,出錯後,通常都會有提示信息的,你們能夠根據提示檢查定位出錯誤緣由。

6.結束語

  這篇博客就和你們分享到這裏,若是你們在研究學習的過程中有什麼問題,能夠加羣進行討論或發送郵件給我,我會盡我所能爲您解答,與君共勉!

相關文章
相關標籤/搜索