CDH 基於Hue的Sqoop自動化ETL任務

前言

首先需要CDH集羣
本次演示的CDH:6.3.1

自行安裝Oozie 、Hue、Sqoop1

Oozie 自帶 sqoop、hive 等常用組件,比如執行sqoop腳本命令時,並不是你主機裏或者CDH裏的的sqoop,而是 HDFS 下 Oozie 裏的 sqoop 在起作用,這也是爲什麼 總是報 Could not load db driver class 的原因了,因爲根本不是同一個sqoop

1 配置HDFS的權限

在這裏插入圖片描述
看到HDFS屬於supergroup任務組

1.1 Master添加supergroup組

首先到Master中查看

cat /etc/group

發現沒有supergroup任務組 看下HDFS屬於哪個組

cat /etc/passwd
#屬於Hadoop組

在這裏插入圖片描述

添加supergroup組

# supergroup:x:1003:
groupadd supergroup

將root添加到supergroup

# supergroup:x:1003:root
usermod -a -G supergroup root

同步系統權限到HDFS,會自動同步其他節點的權限

su - hdfs -s /bin/bash -c "hdfs dfsadmin -refreshUserToGroupsMappings"

2 上傳驅動到HDFS

CDH集羣下基於hue的sqoop的驅動位置

/user/oozie/share/lib/lib_${timestamp}/sqoop

上傳驅動

# hdfs dfs -put ./mysql-connector-java-5.1.47.jar /user/oozie/share/lib/lib_20200601145108/sqoop

3 Hue配置驅動

3.1 在Hue進入Sqoop

在這裏插入圖片描述

3.2 配置驅動

在這裏插入圖片描述
這裏配置的地址要和步驟2中的地址一致

hdfs://ifeng01:8020/user/oozie/share/lib/lib_20200601145108/sqoop
hdfs://ifeng01:8020/user/oozie/share/lib/lib_20200601145108/sqoop/mysql-connector-java-5.1.47-bin.jar
hdfs://ifeng01:8020/user/oozie/share/lib/lib_20200601145108/sqoop/mysql-connector-java-5.1.47.jar

注意:HDFS的權限問題也有可能導致導入失敗

hadoop dfs -chmod -R 777 /
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章