Kettle之Carte最佳實(shí)踐

前言

????kettle支持Carte服務(wù)級(jí)部署模式,即服務(wù)器后臺(tái)會(huì)跑一個(gè)常駐Carte程序哪廓,job/trans都運(yùn)行在這個(gè)服務(wù)里违柏。這篇文章主要講述carte從配置、任務(wù)提交到監(jiān)控的實(shí)踐木西。

0x01 介紹


? ??Kettle有多種運(yùn)行模式,最簡單易用的是直接運(yùn)行Kitchen/Pan應(yīng)用程序來執(zhí)行job/transformations随静,但每次運(yùn)行任務(wù)時(shí)八千,kitchen/pan都要啟動(dòng)一次吗讶。而應(yīng)用的啟動(dòng)是有代價(jià)的,并且如果服務(wù)器上同時(shí)跑了很多Kitchen/Pan程序恋捆,也不利于資源分配和監(jiān)控照皆。

????Carte是一個(gè)輕量級(jí)的web服務(wù),允許遠(yuǎn)程請(qǐng)求HTTP進(jìn)行監(jiān)控沸停、啟動(dòng)膜毁、停止在Carte服務(wù)上運(yùn)行的job和trans。運(yùn)行Carte的服務(wù)器在kettle術(shù)語里稱為slave server愤钾。

0x02 配置&啟動(dòng)


? ? Kettle的下載安裝就不再贅述瘟滨,carte的配置文件主要用來配置端口、安全認(rèn)證等能颁。比如配置文件pwd/carte-config-master.xml杂瘸,配置項(xiàng):

? ?port:綁定的端口號(hào)

? ?hostname: 綁定的IP

? ?username/password:認(rèn)證用戶

啟動(dòng)命令:nohup ./carte.sh pwd/carte-config-master.xml?2>&1 &

web地址:http://ip:9080,會(huì)提示輸入用戶名密碼伙菊,可能Chrome不會(huì)有彈出框败玉,多換個(gè)瀏覽器試試。

? ? 在carte上跑的任務(wù)的日志統(tǒng)一輸出到了carte日志里镜硕,不能為每個(gè)任務(wù)設(shè)置日志运翼。

0x03 調(diào)用


遠(yuǎn)程提交job/trans時(shí),同樣支持資料庫提交任務(wù)谦疾,carte服務(wù)器上需要提前配置好資料庫。執(zhí)行job的api是kettle/executeJob犬金,通過curl提交命令:

curl -u "cluster:cluster" "http://dev-bi-cdh05:9080/kettle/executeJob/?rep=rep-test01&job=/test01_job&P1=test"

? ? -u :指定用戶名和密碼

? ? rep參數(shù):指定配置的資料庫

????job參數(shù):執(zhí)行的job

????P1參數(shù):kettle的參數(shù)變量P1的值

訪問web url可以看每個(gè)任務(wù)的運(yùn)行狀態(tài)念恍、查看任務(wù)的運(yùn)行日志:

0x04 監(jiān)控


? ? 在web上可以看到所提交的job/trans運(yùn)行狀態(tài)、查看日志晚顷,但獲得的信息還是太有限峰伙,既然carte運(yùn)行在JVM上,就可以用JMX的方式監(jiān)控服務(wù)该默。開啟JMX瞳氓,只需在carte.sh文件的OPT這一行末尾新增:?-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=9180 -Dcom.sun.management.jmxremote.ssl=false

上述配置jmx綁定9180端口,為了調(diào)試方便栓袖,禁用安全認(rèn)證匣摘。開啟JMX后,通過第三方服務(wù)就能很便捷的對(duì)carte應(yīng)用和服務(wù)器各個(gè)指標(biāo)進(jìn)行監(jiān)控裹刮,如carte內(nèi)存使用情況音榜、cpu占用率、GC捧弃、服務(wù)器物理內(nèi)存等赠叼。

0x05 分布式


? ? 獨(dú)立部署的多臺(tái)slave server擦囊,可以組成一個(gè)類似分布式的架構(gòu),各個(gè)slave進(jìn)行搶占式執(zhí)行任務(wù)嘴办。實(shí)現(xiàn)邏輯:同一時(shí)刻多個(gè)slave同時(shí)提交同一個(gè)任務(wù)瞬场,在任務(wù)內(nèi)加唯一排他鎖校驗(yàn)。舉個(gè)例子涧郊,slave1和slave2同時(shí)提交任務(wù)A贯被,在A中先判斷有沒有實(shí)際開始執(zhí)行(比如查表中記錄),如果沒有執(zhí)行就往數(shù)據(jù)庫寫一條記錄底燎,任務(wù)繼續(xù)執(zhí)行;如果判斷A任務(wù)已經(jīng)開始執(zhí)行(比如從表中查到相關(guān)記錄)刃榨,任務(wù)就直接結(jié)束,不再處理后續(xù)業(yè)務(wù)双仍。? ??

? ? ? ?這個(gè)框架設(shè)計(jì)重點(diǎn)在唯一排他鎖校驗(yàn)枢希,借助數(shù)據(jù)庫表的主鍵特性也能實(shí)現(xiàn)這個(gè)功能: 假如任務(wù)id是表的主鍵,任務(wù)開始執(zhí)行時(shí)往表里插入id朱沃,后來的slave再插入這個(gè)任務(wù)id時(shí)就會(huì)異常苞轿,就不用再處理后面業(yè)務(wù)。

? ??缺點(diǎn):從任務(wù)角度看逗物,本質(zhì)上一個(gè)任務(wù)還是在一個(gè)服務(wù)上跑搬卒,這樣在執(zhí)行期間就存在單點(diǎn)問題,如果執(zhí)行任務(wù)的slave宕掉翎卓,之上的任務(wù)不能進(jìn)行故障轉(zhuǎn)移

? ? 優(yōu)點(diǎn):slave之間彼此獨(dú)立契邀,互不影響,如果單臺(tái)slave宕機(jī)失暴,不影響后續(xù)任務(wù)調(diào)度坯门,從整個(gè)集群來看是高可用的。而且多個(gè)任務(wù)平均分布到多臺(tái)slave上逗扒,也能達(dá)到負(fù)載均衡的效果

0x06 集群


????多臺(tái)slave server可以組成一個(gè)集群古戴,集群內(nèi)指定一個(gè)節(jié)點(diǎn)充當(dāng)master角色,其他節(jié)點(diǎn)是slave角色矩肩,kettle集群采用主從結(jié)構(gòu)现恼,由master統(tǒng)一提交任務(wù)。后續(xù)再寫文章細(xì)聊集群黍檩。

本文首發(fā)于公眾號(hào):data之道

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末叉袍,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子刽酱,更是在濱河造成了極大的恐慌畦韭,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,036評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件肛跌,死亡現(xiàn)場離奇詭異艺配,居然都是意外死亡察郁,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門转唉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來皮钠,“玉大人,你說我怎么就攤上這事赠法÷蠛洌” “怎么了?”我有些...
    開封第一講書人閱讀 164,411評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵砖织,是天一觀的道長款侵。 經(jīng)常有香客問我,道長侧纯,這世上最難降的妖魔是什么新锈? 我笑而不...
    開封第一講書人閱讀 58,622評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮眶熬,結(jié)果婚禮上妹笆,老公的妹妹穿的比我還像新娘。我一直安慰自己娜氏,他們只是感情好拳缠,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,661評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著贸弥,像睡著了一般窟坐。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上绵疲,一...
    開封第一講書人閱讀 51,521評(píng)論 1 304
  • 那天哲鸳,我揣著相機(jī)與錄音,去河邊找鬼最岗。 笑死帕胆,一個(gè)胖子當(dāng)著我的面吹牛朝捆,可吹牛的內(nèi)容都是我干的般渡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,288評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼芙盘,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼驯用!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起儒老,我...
    開封第一講書人閱讀 39,200評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤蝴乔,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后驮樊,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體薇正,經(jīng)...
    沈念sama閱讀 45,644評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡片酝,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,837評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了挖腰。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片雕沿。...
    茶點(diǎn)故事閱讀 39,953評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖猴仑,靈堂內(nèi)的尸體忽然破棺而出审轮,到底是詐尸還是另有隱情,我是刑警寧澤辽俗,帶...
    沈念sama閱讀 35,673評(píng)論 5 346
  • 正文 年R本政府宣布疾渣,位于F島的核電站,受9級(jí)特大地震影響崖飘,放射性物質(zhì)發(fā)生泄漏榴捡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,281評(píng)論 3 329
  • 文/蒙蒙 一坐漏、第九天 我趴在偏房一處隱蔽的房頂上張望薄疚。 院中可真熱鬧,春花似錦赊琳、人聲如沸街夭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽板丽。三九已至,卻和暖如春趁尼,著一層夾襖步出監(jiān)牢的瞬間埃碱,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評(píng)論 1 269
  • 我被黑心中介騙來泰國打工酥泞, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留砚殿,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,119評(píng)論 3 370
  • 正文 我出身青樓芝囤,卻偏偏與公主長得像似炎,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子悯姊,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,901評(píng)論 2 355

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