zeebe 目前还在一直的开发中,同时一些变动还是挺大的,比如simple monitor 的以前是不需要配置HazelcastExporter的
估计是为了进行集群功能处理,新添加的,以前写的配置基本都没法使用了,所以写了一个新的运行配置

说明运行的时候注意版本,我测试的是Zeebe 0.17.0,可能其他版本有变动

环境准备

  • docker-compose 文件

    es 使用aws 开源的,同时禁用了ssl,使用http 请求

version: "3"
services:
db:
image: oscarfonts/h2
container_name: zeebe_db
ports:
- "1521:1521"
- "81:81"
monitor:
image: camunda/zeebe-simple-monitor
environment:
- spring.datasource.url=jdbc:h2:tcp://db:1521/zeebe-monitor
- io.zeebe.monitor.connectionString=app:26500
- io.zeebe.monitor.hazelcast.connection=app:5701
ports:
- "8080:8080"
app:
image: camunda/zeebe
volumes:
- ./zeebe-simple-monitor-exporter-0.13.0.jar:/usr/local/zeebe/lib/zeebe-simple-monitor-exporter-0.13.0.jar
- ./zeebe-hazelcast-exporter-0.2.0.jar:/usr/local/zeebe/lib/zeebe-hazelcast-exporter-0.2.0.jar
- ./zeebe.cfg.toml:/usr/local/zeebe/conf/zeebe.cfg.toml
ports:
- "26500:26500"
- "26501:26501"
- "26502:26502"
- "26503:26503"
- "26504:26504"
- "5701:5701"
odfe-node1:
image: amazon/opendistro-for-elasticsearch:0.8.0
container_name: odfe-node1
environment:
- opendistro_security.ssl.http.enabled=false
- cluster.name=odfe-cluster
- bootstrap.memory_lock=true # along with the memlock settings below, disables swapping
- "ES_JAVA_OPTS=-Xms512m -Xmx512m" # minimum and maximum Java heap size, recommend setting both to 50% of system RAM
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- ./odfe-data1:/usr/share/elasticsearch/data
ports:
- 9200:9200
- 9600:9600 # required for Performance Analyzer
odfe-node2:
image: amazon/opendistro-for-elasticsearch:0.8.0
container_name: odfe-node2
environment:
- opendistro_security.ssl.http.enabled=false
- cluster.name=odfe-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- discovery.zen.ping.unicast.hosts=odfe-node1
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- ./odfe-data2:/usr/share/elasticsearch/data
kibana:
image: amazon/opendistro-for-elasticsearch-kibana:0.8.0
container_name: odfe-kibana
ports:
- 5601:5601
expose:
- "5601"
environment:
ELASTICSEARCH_URL: http://odfe-node1:9200
#!/bin/bash
wget https://github.com/zeebe-io/zeebe-simple-monitor/releases/download/0.13.0/zeebe-simple-monitor-exporter-0.13.0.jar
wget https://github.com/zeebe-io/zeebe-hazelcast-exporter/releases/download/0.2.0/zeebe-hazelcast-exporter-0.2.0.jar
  • zeebe 配置

    主要是几个exporter 的配置,es 以及simple monitor 的,配置有点多,只写添加的,完整参考githubcamunda-zeebe-es-exporter-demo

[[exporters]]
id = "simple-monitor"
className = "io.zeebe.monitor.SimpleMonitorExporter"
[exporters.args]
jdbcUrl = "jdbc:h2:tcp://db:1521/zeebe-monitor"
driverName = "org.h2.Driver"
userName = "sa"
password = ""
[[exporters]]
id = "hazelcast"
className = "io.zeebe.hazelcast.exporter.HazelcastExporter"
[[exporters]]
id = "elasticsearch"
className = "io.zeebe.exporter.ElasticsearchExporter"
[exporters.args]
url = "http://odfe-node1:9200"
[exporters.args.bulk]
delay = 5
size = 1_000 [exporters.args.authentication]
username = "admin"
password = "admin"
[exporters.args.index]
prefix = "zeebe-record" ## 这个参数挺重要,设置为true,有异常,false 是可以的,应该和es版本有关系
createTemplate = false
command = false
event = true
rejection = false
deployment = true
incident = true
job = true
message = false
messageSubscription = false
raft = false
workflowInstance = true
workflowInstanceSubscription = false

启动&&测试

  • 启动
docker-compose up -d
  • 几个问题
    我们需要配置宿主机几个参数
    vm.max_map_count:
    /etc/sysctl.conf 添加
    vm.max_map_count=262144 生效 sysctl -p
    容器启动失败,可能需要设置挂载目录权限,简单的方法是 chmod 777 odfe-data1 odfe-data2
  • 效果
    es 集群


monitor

  • 创建一个部署

    github 代码中包含一个简单的bpmn 的文件,是一个简单的流程

运行实例效果

es 集群数据,deploy

es 集群数据,job

说明

这个只是简单的测试,zeebe 的设计还是很灵活的,团队的规划是q2 可以产品可用,还是很期待的,实际上使用zeebe 做为我们微服务中的一个
编排工具,还是很强大的,而且集成opendistro for es 强大的功能,我们可以完成好多方便的应用开发

参考资料

https://github.com/zeebe-io/zeebe
https://github.com/rongfengliang/camunda-zeebe-es-exporter-demo
https://github.com/zeebe-io/zeebe-simple-monitor
https://github.com/zeebe-io/zeebe-hazelcast-exporter
https://opendistro.github.io/for-elasticsearch-docs/docs/install/

 
 
 
 

zeebe 集成elasticsearch exporter的更多相关文章

  1. zeebe 集成elasticsearch exporter && 添加operate

    zeebe 的operate是一个功能比较强大的管理工具,比simple-monitor 有好多方面上的改进 安全,支持用户账户的登陆 界面更友好,界面比较符合开团队工作流引擎的界面 系统监控更加强大 ...

  2. springboot集成elasticsearch

    在基础阶段学习ES一般是首先是 安装ES后借助 Kibana 来进行CURD 了解ES的使用: 在进阶阶段可以需要学习ES的底层原理,如何通过Version来实现乐观锁保证ES不出问题等核心原理: 第 ...

  3. 使用Logstash同步数据至Elasticsearch,Spring Boot中集成Elasticsearch实现搜索

    安装logstash.同步数据至ElasticSearch 为什么使用logstash来同步,CSDN上有一篇文章简要的分析了以下几种同步工具的优缺点:https://blog.csdn.net/la ...

  4. Prometheus 集成 Node Exporter

    文章首发于公众号<程序员果果> 地址:https://mp.weixin.qq.com/s/40ULB9UWbXVA21MxqnjBxw 简介 Prometheus 官方和一些第三方,已经 ...

  5. SpringBoot 集成 Elasticsearch

    前面在 ubuntu 完成安装 elasticsearch,现在我们SpringBoot将集成elasticsearch. 1.创建SpringBoot项目 我们这边直接引入NoSql中Spring ...

  6. Elasticsearch教程(二)java集成Elasticsearch

    1.添加maven <!--tika抽取文件内容 --> <dependency> <groupId>org.apache.tika</groupId> ...

  7. SpringBoot 2.2.2集成ElasticSearch 7.5.1

    前言:现在公司有一个项目要用到检索功能,检索上面现在最常用的是Solr/ES,最后经过对比选择了ElasticSearch开源组件包,因为这个是公司的一个产品项目,技术版本当然要用最新的啦,最后完全确 ...

  8. Spring Boot 集成 Elasticsearch 实战

    最近有读者问我能不能写下如何使用 Spring Boot 开发 Elasticsearch(以下简称 ES) 相关应用,今天就讲解下如何使用 Spring Boot 结合 ES. 可以在 ES 官方文 ...

  9. Atlas2.2.0编译、安装及使用(集成ElasticSearch,导入Hive数据)

    1.编译阶段 组件信息: 组件名称 版本 Atals 2.2.0 HBase 2.2.6 Hive 3.1.2 Hadoop 3.1.1 Kafka 2.11_2.4.1 Zookeeper 3.6. ...

随机推荐

  1. 原生Ajax实现异步交互

    实现Ajax主要依靠XMLHttpRequest对象,所以首先要创建XMLHttpRequest对象 function getXhr(){ var xhr = null; if(window.XMLH ...

  2. 用 LSTM 做时间序列预测的一个小例子(转自简书)

    问题:航班乘客预测 数据:1949 到 1960 一共 12 年,每年 12 个月的数据,一共 144 个数据,单位是 1000 下载地址 目标:预测国际航班未来 1 个月的乘客数 import nu ...

  3. 使用IdentityServer4,在一个ASPNetCore项目中,配置oidc和api的AccessToken两种认证授权

    1.配置两种认证方式 JwtSecurityTokenHandler.DefaultInboundClaimTypeMap.Clear(); services.AddAuthentication(op ...

  4. Python机器学习(基础篇---监督学习(支持向量机))

    支持向量机(分类) 支持向量机分类器根据训练样本的分布,搜索所有可能的线性分类器中最佳的那个.我们会发现决定其直线位置的样本并不是所有训练数据,而是其中的两个空间间隔最小的两个不同类别的数据点,而我们 ...

  5. Curve 曲线 工具

    最近研究了曲线绘制的工具,主要是2D方程的绘制.综合了许多工具,完成了一下两个脚本. 绘制的工具: using UnityEngine; using System.Collections; using ...

  6. 2017年5月11日17:43:06 rabbitmq 消费者队列

    从昨天开始发现个问题,一个接口在本地调用时大部分正常,一旦在生成者打一个断点调试,并且在promotion也打断点的时候会出现没有返回channel的异常,然后消费者就再也消费不了了 16:57:45 ...

  7. xargs处理来之STDIN的输入

    xargs能够将标准输入进行处理,配合下一个命令进行批量处理 #example grep -f go.test ~/jqyou/genedhs_10D |sed '/-1$/d' |awk '{pri ...

  8. 为什么在 Linux 系统中,不建议超频

    CPU 是一部计算机内的心脏啦!因为不论你做什么事情都需要 CPU 来加以运作的!(虽然有时工作量大.有时工作量小!),在 586 以前的计算机( 包含 386, 486, 与 586 ) ,CPU ...

  9. BUAAOO P5-P7 Elevator Simulation

    目录 Abstract Introduction Topic Request Elevator Analysis Reading Requests Coordinating Scheduling an ...

  10. C++中cin.getline与cin.get要注意的地方

    cin.getline与cin.get的区别是,cin.getline不会将结束符或者换行符残留在输入缓冲区中.