=1. Java環(huán)境配置   ..."/>
溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Heron 單節(jié)點運行 —— 基本環(huán)境配置

發(fā)布時間:2020-07-05 18:37:03 來源:網(wǎng)絡 閱讀:1410 作者:DangerousM 欄目:開發(fā)技術

一步步搭環(huán)境:

----------------------------------------------------

系統(tǒng)環(huán)境要求:

    Mac OS X 或者 Ubuntu14.04>=

1. Java環(huán)境配置

    Linux java環(huán)境配置。因為heron用到Bazel管理工具的要求必須是JDK1.8版本,所以可以直接下JDK1.8進行安裝。

    JDK安裝下載解壓到/usr/local目錄下,然后進行環(huán)境變量配置,有兩個地方可以配置(/etc/profile(全局配置) 或者 ~/.bashrc(只針對某個用戶)),打開文件,shift+g定位到文件末尾,添加如下語句    

export JAVA_HOME=/usr/local/jdk
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar: 
export PATH=$PATH:$HOME/bin:$JAVA_HOME/bin

    為了使得更改立即生效,可以使用source命令 

source /etc/profile #source ~/.bashrc

2. 下載腳本

    可以去github上下載Twitter提供的heron安裝腳本(https://github.com/twitter/heron/releases),可以下載自己系統(tǒng)對應的文件。

    注:如果是Mac,腳本文件是帶有darwin的,即heron-client-install-0.14.3-darwin.sh、heron-tools-install-0.14.3-darwin.sh 這樣的文件。

    heron的單節(jié)點運行主要用到2個腳本文件

  • heron-client-install-0.14.2-PLATFORM.sh

  • heron-tools-install-0.14.2-PLATFORM.sh

3. 安裝

    下載完成,可以使用 --user進行安裝

    若腳本沒有執(zhí)行權限,則先執(zhí)行如下語句,其他腳本文件同理

$ chmod +x heron-client-install-0.14.3-ubuntu.sh

  安裝client

$ ./heron-client-install-0.14.3-ubuntu.sh --user
Heron client installer
----------------------
Uncompressing......
Heron is now installed!
Make sure you have "$/home/xxx/bin" in your path.
...

 如果環(huán)境變量中沒有 /home/xxx/bin 可以進行環(huán)境變量導入

$ export PATH=$PATH:~/bin

  接下來安裝 tool,依舊使用 --user

$ ./heron-tools-install-0.14.3- .sh --user
Heron tools installer
---------------------
Uncompressing......
Heron Tools is now installed!
...

 可以使用如下語句檢查heron是否安裝成功

heron version

 如果提示如下語句,提示JAVA_HOME沒有設置:

root@vm-heron:~/bin# heron version
ERROR:root:JAVA_HOME not set

可是明明環(huán)境變量已經(jīng)設置,而且使用echo $PATH可以看到環(huán)境變量....

那就執(zhí)行一次export將JAVA_HOME進行導入(終端關閉后,就不起作用了)

export JAVA_HOME=/usr/local/jdk

 然后再執(zhí)行,就可以成功

root@vm-heron:~$ heron version
heron.build.version : '0.14.3'
heron.build.time : Sat Sep 10 01:04:00 PDT 2016
heron.build.timestamp : 1473494660000
heron.build.host : tw-mbp-kramasamy
heron.build.user : kramasamy
heron.build.git.revision : 71d5b256d779be73b37c50d2a58af8f00d618276
heron.build.git.status : Clean

4. 部署運行

        安裝完成后,在~/.heron/example目錄下會有一些Twitter的官方例子,可以使用heron的CLI工具在本地部署一個tolopogy。

$ heron submit local \
> ~/.heron/examples/heron-examples.jar \
> com.twitter.heron.examples.ExclamationTopology \
> ExclamationTopology \
> --deploy-deactivated
INFO: Using config file under /home/${user}/.heron/conf/local
INFO: Launching topology 'ExclamationTopology'
INFO: Topology 'ExclamationTopology' launched successfully
INFO: Elapsed time: 6.915s.

 這個運行之后就會在家目錄下產(chǎn)生一個 ./herondata的目錄,此目錄存放了之前運行的數(shù)據(jù)。可以看看其內(nèi)容

$ ll ~/.herondata/topologies/local/${user}/ExclamationTopology
-rw-rw-r-- 1 user user 2343 9月 18 16:14 ExclamationTopology.defn
drwxr-xr-x 2 user user 4096 1月 1 1970 heron-conf/
drwxr-xr-x 4 user user 4096 1月 1 1970 heron-core/
-rwxr-xr-x 1 user user 4586211 1月 1 1970 heron-examples.jar*
-rw-rw-r-- 1 user user 0 9月 18 16:14 heron-executor-0.stderr
-rw-rw-r-- 1 user user 0 9月 18 16:14 heron-executor-1.stderr
-rw-rw-r-- 1 user user 0 9月 18 16:14 java-a4298b50-started.stderr
drwxrwxr-x 2 user user 4096 9月 18 16:14 log-files/
-r-xr-xr-x 1 user user 281 1月 1 1970 release.yaml*

5. 啟動Heron Tracker

    Heron Tracker是用來收集heron集群信息的web服務,可以通過運行heron-tracker來部署它。

$ heron-tracker
INFO: 09/18/2016 16:35:05 +0000 Connecting to file state with rootpath: /home/${user}/.herondata/repository/state/local
INFO: 09/18/2016 16:35:05 +0000 Tracker has started
INFO: 09/18/2016 16:35:05 +0000 Running on port: 8888
INFO: 09/18/2016 16:35:05 +0000 Using config file: /home/${user}/.herontools/conf/heron_tracker.yaml
INFO: 09/18/2016 16:35:05 +0000 State watch triggered for topologies.
INFO: 09/18/2016 16:35:05 +0000 Adding new topology: ExclamationTopology, state_manager: local
INFO: 09/18/2016 16:35:05 +0000 Registering a watch with uid: 53ccd3c3-f6d2-4d53-af11-c736a96986d3
INFO: 09/18/2016 16:35:05 +0000 No execution state found for: ExclamationTopology
INFO: 09/18/2016 16:35:05 +0000 Watch triggered for topology execution state: ExclamationTopology
INFO: 09/18/2016 16:35:05 +0000 Setting topology info for topology: ExclamationTopology
INFO: 09/18/2016 16:35:05 +0000 Watch triggered for topology pplan: ExclamationTopology
INFO: 09/18/2016 16:35:05 +0000 Setting topology info for topology: ExclamationTopology
INFO: 09/18/2016 16:35:05 +0000 Watch triggered for topology tmaster: ExclamationTopology
INFO: 09/18/2016 16:35:05 +0000 Setting topology info for topology: ExclamationTopology
INFO: 09/18/2016 16:35:05 +0000 Watch triggered for topology scheduler location: ExclamationTopology
INFO: 09/18/2016 16:35:05 +0000 Setting topology info for topology: ExclamationTopology
INFO: 09/18/2016 16:36:31 +0000 302 GET / (127.0.0.1) 0.50ms
INFO: 09/18/2016 16:36:31 +0000 200 GET /topologies (127.0.0.1) 0.71ms
WARNING: 09/18/2016 16:36:32 +0000 404 GET /favicon.ico (127.0.0.1) 1.10ms
WARNING: 09/18/2016 16:36:32 +0000 404 GET /favicon.ico (127.0.0.1) 0.49ms

  執(zhí)行中若是出現(xiàn),沒有權限錯誤,則把家目錄下的 .pex目錄權限改成當前用戶

$ sudo chown -R ${user}:${user} ~/.pex/

然后在瀏覽器中輸入http://localhost:8888/,即可看到如下內(nèi)容

{"status": "success", "executiontime": 4.076957702636719e-05, "message": "", "version": "1.0.0", "result": {"local": {"${user}": {"default": ["ExclamationTopology"]}}}}

6. Heron UI使用

    Heron UI 就是直觀的用戶界面了,通過它可以看tolopogy的詳細運行情況,通過 heron-ui來部署啟動

$ heron-ui
INFO: 09/18/2016 16:47:24 +0000 Listening at http://0.0.0.0:8889
INFO: 09/18/2016 16:47:24 +0000 Using tracker url: http://localhost:8888

  然后就可以在瀏覽器中輸入http://localhost:8889/,就可以打開如下界面了。

  注:上一步的heron-tracker也是必須在運行狀態(tài),長期運行可以使用守護進程啟動,否則會出現(xiàn)[Errno 111] connected refused的異常。

Heron 單節(jié)點運行 —— 基本環(huán)境配置


7. tolopogy的幾個常用命令

    上面我們在本地環(huán)境提交了一個tolopogy,我們可以使用heron的CLI工具進行一些管理,如activate、deactivate、kill等。

$ heron activate local ExclamationTopology
$ heron deactivate local ExclamationTopology
$ heron kill local ExclamationTopolog

若果上面的命令執(zhí)行成功,會有類似下面這樣的提示信息:

INFO: Successfully activated topology 'ExclamationTopology'
INFO: Elapsed time: 1.980s.

我們可以通過heron來查看有哪些命令可用

$ heron
usage: heron <command> <options> ...
Available commands:
activate Activate a topology
deactivate Deactivate a topology
help Prints help for commands
kill Kill a topology
restart Restart a topology
submit Submit a topology
version Print version of heron-cli
Getting more help:
heron help <command> Prints help and options for <command>
For detailed documentation, go to http://heronstreaming.io

利用help命令查看如何提交一個tolopogy

$ heron help submit
usage: heron submit [options] cluster/[role]/[env] topology-file-name topology-class-name [topology-args]
Required arguments:
cluster/[role]/[env] Cluster, role, and environment to run topology
topology-file-name Topology jar/tar/zip file
topology-class-name Topology class name
Optional arguments:
 --config-path (a string; path to cluster config; default: "/home/${user}/.heron/conf")
 --config-property (key=value; a config key and its value; default: [])
 --deploy-deactivated (a boolean; default: "false")
 --extra-launch-classpath (a string; additional JVM class path for launching topology)
 --topology-main-jvm-property (property=value; JVM system property for executing topology main; default: [])
 --verbose (a boolean; default: "false")



向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI