presto升級(jí)操作文檔

1斜友、前言

由于presto基于內(nèi)存計(jì)算,相比較與hive(on spark)有更好的交互查詢體驗(yàn),組織決定使用presto作為主要的交互查詢工具懦底,hive作為跑批使用。有個(gè)問題就是我們ETL后的數(shù)據(jù)都是avro格式的數(shù)據(jù)罕扎,當(dāng)前我們使用的presto(0.185)暫時(shí)還不支持avro格式表的查詢操作聚唐,故需要一次整體升級(jí)操作丐重,將presto升級(jí)到0.205。

2杆查、流程描述

相較于其他服務(wù)的升級(jí)扮惦,該服務(wù)的升級(jí)相對(duì)比較麻煩一點(diǎn),主要的思路就是:停掉之前所有節(jié)點(diǎn)的presto服務(wù)亲桦;將新版本分發(fā)到各個(gè)節(jié)點(diǎn)崖蜜;配置相關(guān)環(huán)境;啟動(dòng)新版本的presto服務(wù)烙肺。中間主要用到ansible工具作為分發(fā)軟件包及相關(guān)配置的操作纳猪。所以前提條件是需要安裝ansible且配置了免登陸。

3桃笙、操作步驟

3.1 停掉所有presto服務(wù)

這里使用ansible命令:

ansible presto  -m command -a "/opt/soft/presto-server-0.185/bin/launcher stop"

3.2 分發(fā)新版本軟件包

現(xiàn)將新版本的presto下載到主節(jié)點(diǎn)(192.168.49.110)然后使用ansible命令分發(fā)到各個(gè)節(jié)點(diǎn)氏堤。

下載然后分發(fā)

wget https://repo1.maven.org/maven2/com/facebook/presto/presto-server/0.205/presto-server-0.205.tar.gz  
ansible presto -m copy -a "src=/opt/sot/presto-server-0.205.tar.gz dest=/opt/soft/"

解壓軟件包

主節(jié)點(diǎn)直接解壓

tar -zxvf presto-server-0.205.tar.gz

其他節(jié)點(diǎn)使用ansible命令解壓

ansible presto -m command -a "tar -zxvf /opt/soft/presto-server-0.205.tar.gz -C /opt/soft/"

注意點(diǎn):這里都是root用戶在操作,待會(huì)需要修改一下目錄權(quán)限以及所屬者的問題搏明。

3.3 修改相應(yīng)的配置

3.3.1 修改主節(jié)點(diǎn)的配置

將老版本的配置都拷貝過來鼠锈,修改幾個(gè)地方即可

#config.properties

coordinator=true
node-scheduler.include-coordinator=false
http-server.http.port=8866
query.max-memory=128GB
query.max-total-memory-per-node=8GB(注意:之前這個(gè)參數(shù)名為query.max-memory-per-node,由于版本更新官方對(duì)這個(gè)參數(shù)做了調(diào)整)
discovery-server.enabled=true
discovery.uri=http://192.168.49.110:8866

exchange.http-client.request-timeout=500s

這里配置一個(gè)worker節(jié)點(diǎn)的文件作為之后分發(fā)的源文件

#worker-config.properties

coordinator=false
http-server.http.port=8866
query.max-memory=128GB
query.max-total-memory-per-node=8GB
discovery.uri=http://192.168.49.110:8866
exchange.http-client.request-timeout=500s

還需要更改一下啟動(dòng)腳本星著,添加一下java8的環(huán)境:

vim bin/launcher
export JAVA_HOME=/opt/soft/java/jdk1.8.0_111
export PATH=$JAVA_HOME/bin:$PATH

3.3.2 接下來就是分發(fā)配置了购笆。

替換掉之前的啟動(dòng)腳本launcher

ansible presto -m command -a "rm -rf /opt/soft/presto-server-0.205/bin/launcher"

ansible presto -m copy - a "src=/opt/soft/presto-server-0.205/bin/launcher dest=/opt/soft/presto-server-0.205/bin/"

分發(fā)節(jié)點(diǎn)配置

ansible presto -m copy -a "src=/opt/soft/presto-server-0.205/etc dest=/opt/soft/presto-server-0.205"

在worker節(jié)點(diǎn)需要更改兩個(gè)地方:1、刪掉server節(jié)點(diǎn)的配置文件config.properties虚循,然后將worker-config.properties文件重命名為config.properties同欠;2、修改node.properties文件將node.id值改為本節(jié)點(diǎn)對(duì)應(yīng)的編號(hào)(注意這個(gè)值必須唯一横缔,且跟上個(gè)版本保持一致)

ansible presto -m command -a "rm -rf /opt/soft/presto-server-0.205/etc/config.properties "

ansible presto -m command -a "mv /opt/soft/presto-server-0.205/etc/worker-config.properties /opt/soft/presto-server-0.205/etc/config.properties"

修改操作就必須在每臺(tái)worker節(jié)點(diǎn)操作了铺遂。。茎刚。

3.4 上面都配置成功之后襟锐,接下來還需要更改目錄權(quán)限以及所屬者了,因?yàn)槎际且詒oot用戶在使用ansible膛锭,但是后面我們需要使用dmp用戶來啟動(dòng)服務(wù)粮坞。

ansible presto -m command -a "chown -R dmp:infra /opt/soft/presto-server-0.205"

3.5 最后就是啟動(dòng)服務(wù)了,這里最好使用ansible的Playbooks 劇本模式初狰,因?yàn)閣orker節(jié)點(diǎn)也需要使用dmp用戶來啟動(dòng)莫杈,所有需要指定用戶,原生的ansible命令暫時(shí)還不支持切換用戶執(zhí)行命令的功能跷究。

- hosts: presto    # 運(yùn)行指定任務(wù)的目標(biāo)主機(jī)
  remote_user: dmp    # 在遠(yuǎn)程主機(jī)上執(zhí)行任務(wù)的用戶
  tasks:    # 任務(wù)列表
  - name: start presto    # 設(shè)置任務(wù)名稱姓迅,非必要
    command: opt/soft/presto-server-0.205/bin/launcher start

4、驗(yàn)證升級(jí)是否成功

4.1 第一步查看每個(gè)節(jié)點(diǎn)的presto服務(wù)是否都已啟動(dòng),且都切換到0.205版本丁存。

ansible presto -m command -a "ps -ef | grep presto"

4.2 瀏覽器訪問presto主頁肩杈,查看版本以及節(jié)點(diǎn)數(shù)是否一致

presto2.png

5、總結(jié)

在此次升級(jí)操作過程中解寝,幾個(gè)重要的關(guān)鍵點(diǎn):1扩然、配置參數(shù)要隨著版本的更迭做相應(yīng)的調(diào)整;2聋伦、需要熟練掌握ansible夫偶,目前還處于初始階段,肯定還有比我這個(gè)更好的方式來實(shí)現(xiàn)觉增;3兵拢、presto的worker節(jié)點(diǎn)的編號(hào)必須唯一;4逾礁、服務(wù)必須都是dmp用戶啟動(dòng)的说铃,不然會(huì)報(bào)出很多權(quán)限錯(cuò)誤。

這只是我想到的一種方式嘹履,總感覺有點(diǎn)繁瑣腻扇,希望有人能提供更好的方式,大家共同學(xué)習(xí)@怠S卓痢!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末焕刮,一起剝皮案震驚了整個(gè)濱河市舶沿,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌配并,老刑警劉巖暑椰,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異荐绝,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)避消,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門低滩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人岩喷,你說我怎么就攤上這事恕沫。” “怎么了纱意?”我有些...
    開封第一講書人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵婶溯,是天一觀的道長。 經(jīng)常有香客問我,道長迄委,這世上最難降的妖魔是什么褐筛? 我笑而不...
    開封第一講書人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮叙身,結(jié)果婚禮上渔扎,老公的妹妹穿的比我還像新娘。我一直安慰自己信轿,他們只是感情好晃痴,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著财忽,像睡著了一般倘核。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上即彪,一...
    開封第一講書人閱讀 51,182評(píng)論 1 299
  • 那天紧唱,我揣著相機(jī)與錄音,去河邊找鬼祖凫。 笑死琼蚯,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的惠况。 我是一名探鬼主播遭庶,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼稠屠!你這毒婦竟也來了峦睡?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤权埠,失蹤者是張志新(化名)和其女友劉穎榨了,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體攘蔽,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡龙屉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了满俗。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片转捕。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖唆垃,靈堂內(nèi)的尸體忽然破棺而出五芝,到底是詐尸還是另有隱情,我是刑警寧澤辕万,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布枢步,位于F島的核電站沉删,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏醉途。R本人自食惡果不足惜矾瑰,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望结蟋。 院中可真熱鬧脯倚,春花似錦、人聲如沸嵌屎。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽宝惰。三九已至植榕,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間尼夺,已是汗流浹背尊残。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留淤堵,地道東北人寝衫。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像拐邪,于是被迫代替她去往敵國和親慰毅。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

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