Hue安裝及使用
Apache Hue
一、 Apache Hue介紹
1. Hue是什么
#后臺啟動hue和關閉hue
nohup build/env/bin/supervisor &
ps -ef | grep hue
kill -9 xxx(先殺死build/env/bin/supervisor的端口)
kill -9 xxx(再殺死runcherrypyserver的端口)
HUE=Hadoop User Experience
Hue是一個開源的Apache Hadoop UI系統,由Cloudera Desktop演化而來,最后Cloudera公司將其貢獻給Apache基金會的Hadoop社區,它是基于Python Web框架Django實現的。
通過使用Hue,可以在瀏覽器端的Web控制臺上與Hadoop集群進行交互,來分析處理數據,例如操作HDFS上的數據,運行MapReduce Job,執行Hive的SQL語句,瀏覽HBase數據庫等等。
2. Hue能 做什么
訪問HDFS和文件瀏覽
通過web調試和開發hive以及數據結果展示
查詢solr和結果展示,報表生成
通過web調試和開發impala交互式SQL Query
spark調試和開發
Pig開發和調試
oozie任務的開發,監控,和工作流協調調度
Hbase數據查詢和修改,數據展示
Hive的元數據(metastore)查詢
MapReduce任務進度查看,日志追蹤
創建和提交MapReduce,Streaming,Java job任務
Sqoop2的開發和調試
Zookeeper的瀏覽和編輯
數據庫(MySQL,PostGres,SQlite,Oracle)的查詢和展示
3. Hue的架構
Hue是一個友好的界面集成框架,可以集成各種大量的大數據體系軟件框架,通過一個界面就可以做到查看以及執行所有的框架。
Hue提供的這些功能相比Hadoop生態各組件提供的界面更加友好,但是一些需要debug的場景可能還是要使用原生系統才能更加深入的找到錯誤的原因。
二、 Hue的安裝
1. 上傳解壓安裝包
Hue的安裝支持多種方式,包括rpm包的方式進行安裝、tar.gz包的方式進行安裝以及cloudera manager的方式來進行安裝等,我們這里使用tar.gz包的方式來進行安裝。
Hue的壓縮包的下載地址:
http://archive.cloudera.com/cdh5/cdh/5/
我們這里使用的是CDH5.14.0這個對應的版本,具體下載地址為
http://archive.cloudera.com/cdh5/cdh/5/hue-3.9.0-cdh5.14.0.tar.gz
cd /export/servers/
tar -zxvf hue-3.9.0-cdh5.14.0.tar.gz
2. 編譯初始化工作
2.1. 聯網安裝各種必須的依賴包
yum install -y asciidoc cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-plain gcc gcc-c++ krb5-devel libffi-devel libxml2-devel libxslt-devel make openldap-devel python-devel sqlite-devel gmp-devel
2.2. Hue初始化配置
cd /export/servers/hue-3.9.0-cdh5.14.0/desktop/conf
vim hue.ini
#通用配置
[desktop]
secret_key=jFE93j;2[290-eiw.KEiwN2s3['d;/.q[eIW^y#e=+Iei*@Mn<qW5o
http_host=node-1
is_hue_4=true
time_zone=Asia/Shanghai
server_user=root
server_group=root
default_user=root
default_hdfs_superuser=root
#配置使用mysql作為hue的存儲數據庫,大概在hue.ini的587行左右
[[database]]
engine=mysql
host=node-1
port=3306
user=root
password=Hadoop
name=hue
2.3. 創建mysql中Hue使用的DB
create database hue default character set utf8 default collate utf8_general_ci;
3. 編譯Hue
cd /export/servers/hue-3.9.0-cdh5.14.0
make apps
編譯成功之后,會在hue數據庫中創建許多初始化表。
4. 啟動Hue、 Web UI訪問
cd /export/servers/hue-3.9.0-cdh5.14.0/
useradd hue;
build/env/bin/supervisor
頁面訪問路徑:
http://node-1:8888
第一次訪問的時候,需要設置超級管理員用戶和密碼。記住它。
若想關閉Hue ,直接在窗口ctrl+c即可。
三、 Hue與軟件的集成
1. Hue 集成HDFS
注意修改完HDFS相關配置后,需要把配置scp給集群中每臺機器,重啟hdfs集群。
1.1. 修改core-site.xml配置
<!—允許通過httpfs方式訪問hdfs的主機名 -->
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<!—允許通過httpfs方式訪問hdfs的用戶組 -->
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
1.2. 修改hdfs-site.xml配置
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
1.3. 修改hue.ini
cd /export/servers/hue-3.9.0-cdh5.14.0/desktop/conf
vim hue.ini
[[hdfs_clusters]]
[[[default]]]
fs_defaultfs=hdfs://node01:8020
webhdfs_url=http://node01:50070/webhdfs/v1
hadoop_hdfs_home= /export/servers/hadoop-2.7.5
hadoop_bin=/export/servers/hadoop-2.7.5/bin
hadoop_conf_dir=/export/servers/hadoop-2.7.5/etc/hadoop
1.4. 重啟HDFS、Hue
start-dfs.sh
cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor
2. Hue集成YARN
2.1. 修改hue.ini
[[yarn_clusters]]
[[[default]]]
resourcemanager_host=node-1
resourcemanager_port=8032
submit_to=True
resourcemanager_api_url=http://node-1:8088
history_server_api_url=http://node-1:19888
2.2. 開啟yarn日志聚集服務
MapReduce 是在各個機器上運行的, 在運行過程中產生的日志存在于各個機器上,為了能夠統一查看各個機器的運行日志,將日志集中存放在 HDFS 上, 這個過程就是日志聚集。
<property> ##是否啟用日志聚集功能。
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<property> ##設置日志保留時間,單位是秒。
<name>yarn.log-aggregation.retain-seconds</name>
<value>106800</value>
</property>
2.3. 重啟 Yarn、 Hue
build/env/bin/supervisor
3. Hue集成Hive
如果需要配置hue與hive的集成,我們需要啟動hive的metastore服務以及hiveserver2服務(impala需要hive的metastore服務,hue需要hvie的hiveserver2服務)。
3.1. 修改Hue.ini
[beeswax]
hive_server_host=node-1
hive_server_port=10000
hive_conf_dir=/export/servers/hive/conf
server_conn_timeout=120
auth_username=root
auth_password=123456
[metastore]
#允許使用hive創建數據庫表等操作
enable_new_create_table=true
3.2. 啟動Hive服務、重啟hue
去node-1機器上啟動hive的metastore以及hiveserver2服務
cd /export/servers/hive
nohup bin/hive --service metastore &
nohup bin/hive --service hiveserver2 &
重新啟動hue。
cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor
4. Hue集成Mysql
4.1. 修改hue.ini
需要把mysql的注釋給去掉。 大概位于1546行
[[[mysql]]]
nice_name="My SQL DB"
engine=mysql
host=node-1
port=3306
user=root
password=hadoop
4.2. 重啟hue
cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor
5. Hue集成Oozie
5.1. 修改hue配置文件hue.ini
[liboozie]
# The URL where the Oozie service runs on. This is required in order for
# users to submit jobs. Empty value disables the config check.
oozie_url=http://node-1:11000/oozie
# Requires FQDN in oozie_url if enabled
## security_enabled=false
# Location on HDFS where the workflows/coordinator are deployed when submitted.
remote_deployement_dir=/user/root/oozie_works
[oozie]
# Location on local FS where the examples are stored.
# local_data_dir=/export/servers/oozie-4.1.0-cdh5.14.0/examples/apps
# Location on local FS where the data for the examples is stored.
# sample_data_dir=/export/servers/oozie-4.1.0-cdh5.14.0/examples/input-data
# Location on HDFS where the oozie examples and workflows are stored.
# Parameters are $TIME and $USER, e.g. /user/$USER/hue/workspaces/workflow-$TIME
# remote_data_dir=/user/root/oozie_works/examples/apps
# Maximum of Oozie workflows or coodinators to retrieve in one API call.
oozie_jobs_count=100
# Use Cron format for defining the frequency of a Coordinator instead of the old frequency number/unit.
enable_cron_scheduling=true
# Flag to enable the saved Editor queries to be dragged and dropped into a workflow.
enable_document_action=true
# Flag to enable Oozie backend filtering instead of doing it at the page level in Javascript. Requires Oozie 4.3+.
enable_oozie_backend_filtering=true
# Flag to enable the Impala action.
enable_impala_action=true
[filebrowser]
# Location on local filesystem where the uploaded archives are temporary stored.
archive_upload_tempdir=/tmp
# Show Download Button for HDFS file browser.
show_download_button=true
# Show Upload Button for HDFS file browser.
show_upload_button=true
# Flag to enable the extraction of a uploaded archive in HDFS.
enable_extract_uploaded_archive=true
5.2. 啟動hue、oozie
啟動hue進程
cd /export/servers/hue-3.9.0-cdh5.14.0
build/env/bin/supervisor
啟動oozie進程
cd /export/servers/oozie-4.1.0-cdh5.14.0
bin/oozied.sh start
頁面訪問hue
http://node-1:8888/
5.3.使用hue配置oozie調度
hue提供了頁面鼠標拖拽的方式配置oozie調度
5.4. 利用hue調度shell腳本
在HDFS上創建一個shell腳本程序文件。
打開工作流調度頁面。
5.5. 利用hue調度hive腳本
在HDFS上創建一個hive sql腳本程序文件。
打開workflow頁面,拖拽hive2圖標到指定位置。
5.6. 利用hue調度MapReduce程序
利用hue提交MapReduce程序
5.7. 利用Hue配置定時調度任務
在hue中,也可以針對workflow配置定時調度任務,具體操作如下:
一定要注意時區的問題,否則調度就出錯了。保存之后就可以提交定時任務。
點擊進去,可以看到定時任務的詳細信息。
6. Hue集成Hbase
6.1. 修改hbase配置
在hbase-site.xml配置文件中的添加如下內容,開啟hbase thrift服務。
修改完成之后scp給其他機器上hbase安裝包。
<property>
<name>hbase.thrift.support.proxyuser</name>
<value>true</value>
</property>
<property>
<name>hbase.regionserver.thrift.http</name>
<value>true</value>
</property>
6.2. 修改hadoop配置
在core-site.xml中確保 HBase被授權代理,添加下面內容。
把修改之后的配置文件scp給其他機器和hbase安裝包conf目錄下
<property>
<name>hadoop.proxyuser.hbase.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hbase.groups</name>
<value>*</value>
</property>
6.3. 修改Hue配置
[hbase]
# Comma-separated list of HBase Thrift servers for clusters in the format of '(name|host:port)'.
# Use full hostname with security.
# If using Kerberos we assume GSSAPI SASL, not PLAIN.
hbase_clusters=(Cluster|node-1:9090)
# HBase configuration directory, where hbase-site.xml is located.
hbase_conf_dir=/export/servers/hbase-1.2.1/conf
# Hard limit of rows or columns per row fetched before truncating.
## truncate_limit = 500
# 'buffered' is the default of the HBase Thrift Server and supports security.
# 'framed' can be used to chunk up responses,
# which is useful when used in conjunction with the nonblocking server in Thrift.
thrift_transport=buffered
6.4. 啟動hbase(包括thrift服務)**、**hue
需要啟動hdfs和hbase,然后再啟動thrift
start-dfs.sh
start-hbase.sh
hbase-daemon.sh start thrift
重新啟動hue。
cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor
7. Hue集成Impala
7.1. 修改Hue.ini
[impala] server_host=node-3 server_port=21050 impala_conf_dir=/etc/impala/conf
7.2. 重啟Hue
cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor
需要啟動hdfs和hbase,然后再啟動thrift
start-dfs.sh
start-hbase.sh
hbase-daemon.sh start thrift
重新啟動hue。
cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor
7. Hue集成Impala
7.1. 修改Hue.ini
[impala] server_host=node-3 server_port=21050 impala_conf_dir=/etc/impala/conf
7.2. 重啟Hue
cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor
智能推薦
Hue的安裝部署
Hue的安裝 第一步:上傳解壓安裝包 ue的安裝支持多種方式,包括rpm包的方式進行安裝、tar.gz包的方式進行安裝以及cloudera manager的方式來進行安裝等,我們這里使用tar.gz包的方式來進行安裝。 Hue的壓縮包的下載地址: http://archive.cloudera.com/cdh5/cdh/5/ 我們這里使用的是CDH5.14.0這個對應的版本,具體下載地址為 htt...
Hue的安裝
一、上傳解壓安裝包 cd /export/soft/ tar -zxvf hue-3.9.0-cdh5.14.0.tar.gz -C ../servers 二、編譯初始化工作 1、聯網安裝各種必須的依賴包 2、Hue初始化配置 cd /export/servers/hue-3.9.0-cdh5.14.0/desktop/conf vim hue.ini &n...
HUE安裝與配置
準備 軟件包準備 HUE官方網站 HUE官方幫助手冊 已安裝的分布式框架例如Hadoop 以及其它需要與HUE集成的軟件 需要的依賴 安裝 構建 通過如下命令來指定HUE的安裝路徑 如果想把HUE從一個地方移動到另外一個地方,由于HUE使用了Python包的一些絕對路徑,移動之后則必須執行以下命令 配置 Hadoop的配置文件 位于/etc/hadoop/conf hdfs-site.xml co...
Hue的安裝部署
Hue的安裝部署 Hue簡介 Hue安裝 下載github上的文件進行編譯 啟動Hue Hadoop搭建 HBase配置 hive配置 Spark 配置 配置Livy 完成 Hue簡介 Hue是cdh專門的一套web管理器,它包括3個部分hue ui,hue server,hue db。hue提供所有的cdh組件的shell界面的接口。你可以在hue編寫mr,查看修改hdfs的文件,管理hive的...
Apache Hue:安裝步驟
Hue的安裝 第一步: 上傳解壓安裝包 Hue的安裝支持多種方式,包括rpm包的方式進行安裝、tar.gz包的方式進行安裝以及cloudera manager的方式來進行安裝等,我們這里使用tar.gz包的方式來進行安裝。 Hue的壓縮包的下載地址: http://archive.cloudera.com/cdh5/cdh/5/ 我們這里使用的是CDH5.14.0這個對應的版本,具體下載地址為 h...
猜你喜歡
Apache Hue 介紹 & 安裝
Apache Hue Hue介紹 Hue的安裝 Hue漢化界面 Hue介紹 Hue是什么 HUE=Hadoop User Experience Hue是一個開源的Apache Hadoop UI系統,由Cloudera Desktop演化而來,最后Cloudera公司將其貢獻給Apache基金會的Hadoop社區,它是基于Python Web框架Django實現的。 通過使用Hue,可以在瀏覽器端...
HUE安裝部署
Hue 的安裝(在子節點配置的) #1. HUE安裝包下載地址: 2.解壓安裝包 3.聯網安裝各種必須的依賴包 4.Hue 初始化配置 #配置使用 mysql 作為 hue 的存儲數據庫,大概在 hue.ini 的 587 行左右 創建 mysql 中 Hue 使用的 database 編譯 Hue linux 系統添加普通用戶 hue 啟動 Hue、Web UI 訪問 cd /export/se...
freemarker + ItextRender 根據模板生成PDF文件
1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...
電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!
Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...