Heron 单节点运行 —— 基本环境配置

一步步搭环境:

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

系统环境要求:

Mac OS X 或者 Ubuntu14.04>=

1. Java环境配置

Linux java环境配置。因为heron用到Bazel管理工具的要求必须是JDK1.8版本,所以可以直接下JDK1.8进行安装。

JDK安装下载解压到/usr/local目录下,然后进行环境变量配置,有两个地方可以配置(/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),可以下载自己系统对应的文件。

注:如果是Mac,脚本文件是带有darwin的,即heron-client-install-0.14.3-darwin.shheron-tools-install-0.14.3-darwin.sh 这样的文件。

heron的单节点运行主要用到2个脚本文件

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

3. 安装

下载完成,可以使用 --user进行安装

若脚本没有执行权限,则先执行如下语句,其他脚本文件同理

$ 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.
...

如果环境变量中没有 /home/xxx/bin 可以进行环境变量导入

$ 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没有设置:

[email protected]:~/bin# heron version
ERROR:root:JAVA_HOME not set

可是明明环境变量已经设置,而且使用echo $PATH可以看到环境变量....

那就执行一次export将JAVA_HOME进行导入(终端关闭后,就不起作用了)

export JAVA_HOME=/usr/local/jdk

然后再执行,就可以成功

[email protected]:~$ 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.

这个运行之后就会在家目录下产生一个 ./herondata的目录,此目录存放了之前运行的数据。可以看看其内容

$ 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

执行中若是出现,没有权限错误,则把家目录下的 .pex目录权限改成当前用户

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

然后在浏览器中输入http://localhost:8888/,即可看到如下内容

{"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也是必须在运行状态,长期运行可以使用守护进程启动,否则会出现[Errno 111] connected refused的异常。

7. tolopogy的几个常用命令

上面我们在本地环境提交了一个tolopogy,我们可以使用heron的CLI工具进行一些管理,如activate、deactivate、kill等。

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

若果上面的命令执行成功,会有类似下面这样的提示信息:

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")
时间: 2024-08-25 09:00:47

Heron 单节点运行 —— 基本环境配置的相关文章

OpenStack 入门学习之三:单节点icehouse网桥的配置

部署完icehouse,安装完实例之后,如果虚拟主机需要和外部进行通信,还需要对宿主机的网桥进行配置 具体配置如下 修改ifcfg-em1的内容为以下内容: DEVICE=em1 ONBOOT=yes DEVICETYPE=ovs TYPE=OVSPort OVS_BRIDGE=br-ex #HWADDR=F8:B1:56:AE:3A:84 #TYPE=Ethernet #UUID=6f49b547-f1f8-4b21-a0fc-68791a5237dd #BOOTPROTO=static #I

cassandra单节点的安装与配置——cassandra总结(二)

一.cassandra的安装 cassandra现在的版本比之以前各个方面都有了很大的提升,这里采用的是2.1.11版本,下载地址:http://www.apache.org/dyn/closer.lua/cassandra/2.1.11/apache-cassandra-2.1.11-bin.tar.gz     当然大家也可以采用最新稳定版本,一定要是稳定版本,笔者刚开始学习的时候采用The latest release吃了不少苦头. 二.cassandra的配置 配置方面主要就是JDK,要

大数据生态圈 —— 单节点伪分布式环境搭建

本文参考 关于环境搭建,imooc上关于Hadoop.hbase.spark等课程上有很多环境搭建的例子,但是有些并没有说明为什么选择这个的版本,我们知道这些开源的技术发展很快,所以有必要搞清楚如何对它们进行版本选择 环境 centos7.7(主机名hadoop0001,用户名hadoop) + spark 2.2.0 + scala 2.11.8 + hbase1.3.6 + Hadoop 2.6.5 + zookeeper 3.4.14 + kafka 0.8.2.1 + flume 1.6

windows下php以Fast-CGI、ISAPI模式运行相关环境配置

iis6环境下 msi安装版直接下一步下一步下一步,然后新建一个扩展即可. 压缩包版 isapi模式配置 php5.3.0以后不支持isapi了,因此要使用这种模式需要选择5.3.0以前的TS(thread safe)版本. 1.添加应用程序.php后缀可执行文件路径为php目录下php5isapi.dll(5.X版本为这个文件)文件. 2.允许Web服务扩展中的php扩展:新建一个扩展(一般就叫php)路径选择php安装目录下的isapi库文件(php5.x版本为php5isapi.dll).

Kafka单节点及集群配置安装

一.单节点 1.上传Kafka安装包到Linux系统[当前为Centos7]. 2.解压,配置conf/server.property. 2.1配置broker.id 2.2配置log.dirs 2.3配置zookeeper.connect 3.启动Zookeeper集群 备注:zookeeper集群启动时,先启动的节点因节点启动过少而出现not running这种情况,是正常的,把所有节点都启动之后这个情况就会消失! 3.启动Kafka服务 执行:./kafka-server-start.sh

hadoop单节点windows 7 环境搭建

Windows上搭建hadoop开发环境 前言 Windows下运行Hadoop,通常有两种方式:一种是用VM方式安装一个Linux操作系统,这样基本可以实现全Linux环境的Hadoop运行:另一种是通过Cygwin模拟Linux环境.后者的好处是使用比较方便,安装过程也简单,本篇文章是介绍第二种方式Cygwin模拟Linux环境. 准备工作 (1)安装JDK1.6或更高版本,安装时注意,最好不要安装到带有空格的路径名下,例如:Programe Files,否则在配置Hadoop的配置文件时会

(一)OpenStack---M版---双节点搭建---基础环境配置

↓↓↓↓↓↓↓↓视频已上线B站↓↓↓↓↓↓↓↓ >>>>>>传送门 配置如下 本次搭建采用2台4核4G的虚拟机,也可以用2台2核4G 主机名 配置 网络 Controller 4核4G Interface1 192.168.100.10/24 Interface2 192.168.200.10/24 Compute 4核4G Interface1 192.168.100.20/24 Interface2 192.168.200.20/24 CentOS7.2镜像: 传送

单节点Nginx+FastDFS安装配置&lt;1&gt;

FastDFS 是一个开源的高性能分布式文件系统(DFS). 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡. FastDFS有两个角色:跟踪服务(tracker)和存储服务(storage),跟踪服务控制,调度文件以负载均衡的方式访问:存储服务包括:文件存储,文件同步,提供文件访问接口,同时以key value的方式管理文件的元数据. FastDFS 系统有三个角色:跟踪服务器(Tracker Server).存储服务器(Storage Server)和客户端(Clien

ASP.NET Core on K8S学习初探(1)K8S单节点环境搭建

当近期的一个App上线后,发现目前的docker实例(应用服务BFF+中台服务+工具服务)已经很多了,而我司目前没有专业的运维人员,发现运维的成本逐渐开始上来,所以容器编排也就需要提上议程.因此我决定开始学习Kubernetes,会将学习当中的过程记录下来,预计会形成一个系列,暂且命名为:ASP.NET Core on K8S,而这个系列会由3个部分组成,且会在不同的时期写完: ASP.NET Core on K8S学习初探:在Docker for Windows中搭建单节点环境,初步了解有个感