Ranger admin秽五、Presto Plugin安裝

一. Ranger 編譯

https://ranger.apache.org/quick_start_guide.html

git clone https://github.com/apache/ranger.git
cd ranger
mvn -DskipTests=true clean compile package install assembly:assembly 
ls target/
#target 目錄下為所有壓縮包

image.png

二.Ranger-Admin安裝

https://cwiki.apache.org/confluence/display/RANGER/Ranger+Installation+Guide

tar -zxvf ranger-2.1.0-SNAPSHOT-admin.tar.gz 
cd /opt/app/ranger-2.1.0-SNAPSHOT-admin/
vim install.properties

install.properties修改如下部分

#mysql 數(shù)據(jù)庫信息
db_root_user=root
db_root_password=xxxx
db_host=10.5.xxx.xxx

# DB UserId used for the Ranger schema
#提前在mysql中創(chuàng)建數(shù)據(jù)庫和用戶, GRANT ALL PRIVILEGES ON ranger_presto.* TO 'presto'@'%' WITH GRANT OPTION; 
db_name=ranger_presto
db_user=presto
db_password=presto1234

#禁用審計(jì)功能
#audit_store=solr

SQL語句

CREATE DATABASE `ranger_presto` CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'presto'@'%' IDENTIFIED BY 'presto1234';
GRANT ALL ON ranger_presto.* TO 'presto'@'%';

將mysql的驅(qū)動(dòng)包放置到/usr/share/java/mysql-connector-java.jar饥悴。
執(zhí)行./setup.sh

啟動(dòng)Ranger Admin服務(wù)

service ranger-admin start

訪問http://localhost:6080坦喘;用admin/admin登錄,出現(xiàn)登錄界面西设,登錄成功瓣铣,說明成功!

image.png

三. 在Prestosql中安裝Presto Plugin

https://cwiki.apache.org/confluence/display/RANGER/Presto+Plugin
https://github.com/prestodb/presto/issues/12989

注意:Presto Plugin目前僅支持Prestosql贷揽,不支持Prestodb棠笑,本文中Presto 即指Prestosql

1、下載安裝Presto

wget https://repo1.maven.org/maven2/io/prestosql/presto-server/317/presto-server-317.tar.gz

具體配置參見Prestodb安裝http://www.reibang.com/p/0de42b075af0

安裝presto-cli

wget https://repo1.maven.org/maven2/io/prestosql/presto-cli/317/presto-cli-317-executable.jar
mv presto-cli-317-executable.jar  presto-cli
chmod 766 presto-cli

2禽绪、安裝Presto Plugin

https://cwiki.apache.org/confluence/display/RANGER/Presto+Plugin

cp tartget/ranger-2.1.0-SNAPSHOT-presto-plugin.tar.gz /usr/local/
tar -zxvf ranger-2.1.0-SNAPSHOT-presto-plugin.tar.gz
mv ranger-2.1.0-SNAPSHOT-presto-plugin ranger-presto-plugin
cd ranger-presto-plugin
vim install.properties

install.properties修改參數(shù)

# Location of Policy Manager URL
# Example: POLICY_MGR_URL=http://policymanager.xasecure.net:6080
POLICY_MGR_URL=http://10.5.xxx.xxx:6080

# This is the repository name created within policy manager
# Example: REPOSITORY_NAME=prestodev
REPOSITORY_NAME=prestodev

#Presto component installed directory
#COMPONENT_INSTALL_DIR_NAME=../presto
COMPONENT_INSTALL_DIR_NAME=/opt/app/presto-server-317

#為了簡單蓖救,此處不開啟審計(jì)功能
XAAUDIT.SOLR.ENABLE=false

#雖然文檔中沒有提及洪规,不設(shè)置的話,enable-presto-plugin.sh腳本執(zhí)行出錯(cuò)
XAAUDIT.SUMMARY.ENABLE=false

以root用戶執(zhí)行腳本

./enable-presto-plugin.sh

如果提示找不到JAVA_HOME循捺,修改enable-presto-plugin.sh斩例,添加:
export JAVA_HOME=/usr/local/jdk

image.png

檢查presto配置文件目錄是否生成access-control.properties

[umecron@sssss-hdp26-xxx11x ranger-presto-plugin]$ ll /opt/app/presto-server-317/etc/
total 44
-rwxr-xr-x 1 umecron hadoop    27 Aug  9 15:41 access-control.properties
drwxr-xr-x 2 umecron hadoop    29 Aug  9 15:10 catalog
-rw-r--r-- 1 umecron hadoop   471 Aug  9 15:10 config.properties
-rw-r--r-- 1 umecron hadoop   244 Aug  9 15:10 jvm.config
-rw-r--r-- 1 umecron hadoop    25 Aug  9 15:10 log.properties
-rw-r--r-- 1 umecron hadoop    87 Aug  9 15:10 node.properties
-rwxr--r-- 1 umecron hadoop  2065 Aug  9 15:41 ranger-policymgr-ssl.xml
-rwxr--r-- 1 umecron hadoop 10476 Aug  9 15:41 ranger-presto-audit.xml
-rwxr--r-- 1 umecron hadoop  2655 Aug  9 15:41 ranger-presto-security.xml
-rw-r--r-- 1 umecron hadoop    69 Aug  9 15:41 ranger-security.xml

[umecron@sssss-hdp26-xxx11x ranger-presto-plugin]$ cat  /opt/app/presto-server-317/etc/access-control.properties 
access-control.name=ranger

檢查presto的plugin目錄下是否生成ranger目錄,其中jar包連接到/usr/local/ranger-presto-plugin/lib

[umecron@umetrip-hdp26-xxx11x ranger-presto-plugin]$ ll /opt/app/presto-server-317/plugin/ranger/
total 0
lrwxrwxrwx 1 root root 55 Aug  9 15:41 bootstrap-0.178.jar -> /usr/local/ranger-presto-plugin/lib/bootstrap-0.178.jar
lrwxrwxrwx 1 root root 54 Aug  9 15:41 bval-jsr-2.0.0.jar -> /usr/local/ranger-presto-plugin/lib/bval-jsr-2.0.0.jar
lrwxrwxrwx 1 root root 59 Aug  9 15:41 configuration-0.178.jar -> /usr/local/ranger-presto-plugin/lib/configuration-0.178.jar
lrwxrwxrwx 1 root root 54 Aug  9 15:41 guava-26.0-jre.jar -> /usr/local/ranger-presto-plugin/lib/guava-26.0-jre.jar
lrwxrwxrwx 1 root root 51 Aug  9 15:41 guice-4.2.2.jar -> /usr/local/ranger-presto-plugin/lib/guice-4.2.2.jar
lrwxrwxrwx 1 root root 54 Aug  9 15:41 javax.inject-1.jar -> /usr/local/ranger-presto-plugin/lib/javax.inject-1.jar
lrwxrwxrwx 1 root root 49 Aug  9 15:41 log-0.178.jar -> /usr/local/ranger-presto-plugin/lib/log-0.178.jar
lrwxrwxrwx 1 root root 57 Aug  9 15:41 log-manager-0.178.jar -> /usr/local/ranger-presto-plugin/lib/log-manager-0.178.jar
lrwxrwxrwx 1 root root 80 Aug  9 15:41 ranger-plugin-classloader-2.1.0-SNAPSHOT.jar -> /usr/local/ranger-presto-plugin/lib/ranger-plugin-classloader-2.1.0-SNAPSHOT.jar
lrwxrwxrwx 1 root root 61 Aug  9 15:41 ranger-presto-plugin-impl -> /usr/local/ranger-presto-plugin/lib/ranger-presto-plugin-impl
lrwxrwxrwx 1 root root 80 Aug  9 15:41 ranger-presto-plugin-shim-2.1.0-SNAPSHOT.jar -> /usr/local/ranger-presto-plugin/lib/ranger-presto-plugin-shim-2.1.0-SNAPSHOT.jar
lrwxrwxrwx 1 root root 56 Aug  9 15:41 slf4j-api-1.7.25.jar -> /usr/local/ranger-presto-plugin/lib/slf4j-api-1.7.25.jar
lrwxrwxrwx 1 root root 66 Aug  9 15:41 validation-api-2.0.1.Final.jar -> /usr/local/ranger-presto-plugin/lib/validation-api-2.0.1.Final.jar

檢查/opt/app/presto-server-317/plugin/ranger/ranger-presto-plugin-impl/conf/中配置文件是否與/opt/app/presto-server-317/etc/中一致

[umecron@umetrip-hdp26-xxx11x ranger-presto-plugin]$ ll /opt/app/presto-server-317/plugin/ranger/ranger-presto-plugin-impl/conf/
total 44
-rwxrwxrwx 1 umecron hadoop    27 Aug  9 14:01 access-control.properties
drwxr-xr-x 2 umecron hadoop    29 Aug  9 11:15 catalog
-rw-r--r-- 1 umecron hadoop   471 Apr 28 14:22 config.properties
lrwxrwxrwx 1 root    root      30 Aug  9 15:41 etc -> /opt/app/presto-server-317/etc
-rw-r--r-- 1 umecron hadoop   244 Jul 30 21:11 jvm.config
-rw-r--r-- 1 umecron hadoop    25 Mar 25 15:04 log.properties
-rw-r--r-- 1 umecron hadoop    87 Apr 28 14:24 node.properties
-rwxr--r-- 1 umecron hadoop  2065 Aug  9 14:01 ranger-policymgr-ssl.xml
-rwxr--r-- 1 umecron hadoop 10476 Aug  9 14:01 ranger-presto-audit.xml
-rwxr--r-- 1 umecron hadoop  2655 Aug  9 14:01 ranger-presto-security.xml
-rw-r--r-- 1 umecron hadoop    69 Aug  9 14:01 ranger-security.xml

Ranger訪問策略本地緩存目錄 /etc/ranger/, 目錄權(quán)限修改為presto啟動(dòng)用戶
3.在Ranger Admin中創(chuàng)建presto repository


image.png

jdbc.driver為: io.prestosql.jdbc.PrestoDriver
jdbc.url為: jdbc:presto://10.5.xxx.xxx:8084/catalog
注意:
1)Service Name要與presto plugin配置文件 install.properties中REPOSITORY_NAME一致。
2)Password填寫為:***empty***从橘。原因是密碼不為空念赶,建立JDBC連接時(shí)PrestoDriverUri.java要求必須使用SSL ,否則拋出異常。

            // TODO: fix Tempto to allow empty passwords
            String password = PASSWORD.getValue(properties).orElse("");
            if (!password.isEmpty() && !password.equals("***empty***")) {
                if (!useSecureConnection) {
                    throw new SQLException("Authentication using username/password requires SSL to be enabled");
                }
                builder.addInterceptor(basicAuth(getUser(), password));
            }

如果以JDBC訪問恰力,可能要修改PrestoDriverUri.java叉谜,去掉必須使用SSL的代碼邏輯。

4.重啟服務(wù)
重啟presto: ./launcher.py restart
重啟ranger: service ranger-admin restart

不指定username踩萎,無權(quán)限訪問表

image.png

指定授權(quán)過username


image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末停局,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子驻民,更是在濱河造成了極大的恐慌翻具,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件回还,死亡現(xiàn)場離奇詭異裆泳,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)柠硕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門工禾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人蝗柔,你說我怎么就攤上這事闻葵。” “怎么了癣丧?”我有些...
    開封第一講書人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵槽畔,是天一觀的道長。 經(jīng)常有香客問我胁编,道長厢钧,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任嬉橙,我火速辦了婚禮早直,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘市框。我一直安慰自己霞扬,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著喻圃,像睡著了一般萤彩。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上级及,一...
    開封第一講書人閱讀 51,125評(píng)論 1 297
  • 那天乒疏,我揣著相機(jī)與錄音,去河邊找鬼饮焦。 笑死怕吴,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的县踢。 我是一名探鬼主播转绷,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼硼啤!你這毒婦竟也來了议经?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤谴返,失蹤者是張志新(化名)和其女友劉穎煞肾,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體嗓袱,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡籍救,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了渠抹。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蝙昙。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖梧却,靈堂內(nèi)的尸體忽然破棺而出奇颠,到底是詐尸還是另有隱情,我是刑警寧澤放航,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布烈拒,位于F島的核電站,受9級(jí)特大地震影響广鳍,放射性物質(zhì)發(fā)生泄漏缺菌。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一搜锰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧耿战,春花似錦蛋叼、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽狐胎。三九已至,卻和暖如春歌馍,著一層夾襖步出監(jiān)牢的瞬間握巢,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來泰國打工松却, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留暴浦,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓晓锻,卻偏偏與公主長得像歌焦,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子砚哆,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容