百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 博客教程 > 正文

Camunda8快速安装部署入门 cam怎么安装

connygpt 2024-10-04 15:44 7 浏览

Camunda8是基于标准云原生架构设计开发的,所以官方优先推荐基于Kubernetes和docker的方式安装部署Camunda8,考虑到大部分开发者不一定具备Kubernetes环境和云原生相关知识,所以本文介绍如何在一台windows机器下手动安装运行Camunda8的方式,方便开发者快速了解Camunda8的组件和新特性,对Camunda8的功能有感性认识。

整个操作步骤为:下载Camunda8相关的组件—》安装JDK—》安装elasticsearch—》安装zeebe—》安装operate—》安装tasklist—》安装流程设计器—》设计流程—》发布流程—》处理待办任务。

一、部署环境说明

1、部署环境介绍

操作系统:官方推荐使用Linux,本人使用Window11 64位,内存16G;

Jdk版本:要求OpenJDK 8+ 以上版本,本人安装的是jdk20版本;

Camunda版本:Camunda Platform 8.1.10;

部署Camunda8的步骤为:先安装OpenJDK 8+,再安装Elasticsearch,再依次部署zeebe、operate、tasklist等服务。安装JDK是启动部署启动其它服务组件的前提条件。

安装完成后,Camunda8共有5个组件,windows目录结构如下:

2、OpenJDK安装

如果您已经安装了OpenJDK 8+,本步骤可以跳过。

Jdk20下载地址:https://www.oracle.com/java/technologies/downloads/#jdk20-windows

下载完成后,安装Jdk,查看是否安装成功

二、elasticsearch安装部署

1、下载elasticsearch

https://www.elastic.co/cn/downloads/past-releases/elasticsearch-7-16-2

2、启动elasticsearch服务

将下载的Elasticsearch解压到C:\java\camunda8\elasticsearch-7.16.2,进入bin目录,点击elasticsearch.bat启动es服务,效果如下:

3、检查elasticsearch服务

检查elasticsearch是否启动成功,浏览器输入:http://localhost:9200/?pretty

三、 zeebe安装部署

1、下载zeebe部署包

下载zeebe, https://github.com/camunda/camunda-platform/releases

私有化部署camunda8,需要camunda-zeebe-8.1.10.zip、camunda-operate-8.1.10.zip、camunda-tasklist-8.1.10.zip、camunda-identity-8.1.10.zip,可以在这里一并下载这些组件。

2、配置zeebe-elasticsearch-exporter

将下载的zeebe解压到C:\java\camunda8\camunda-zeebe-8.1.10,进入config目录

打开 application.yaml配置文件,在文件中增加如下配置

zeebe:
  broker:
    exporters:
       elasticsearch:
         className: io.camunda.zeebe.exporter.ElasticsearchExporter

为什么需要配置elasticsearch exporter到出器?

Zeebe本身不存储与您的工作流实例相关的历史数据。如果要保留这些数据以供审核或析,则需要导出到另一个存储系统。Zeebe提供了了一个现成的ElasticSearch导出器,在安装目录的lib\zeebe-elasticsearch-exporter-8.1.10.jar。ElasticSearch也是Camunda Operate和Camunda Tasklist的存储数据的工具,因此要运行Operate和Tasklist,需要在Zeebe中启用ElasticSearch导出器并运行ElasticSearch的一个实例。

在Zeebe配置exporter特别关键,在camunda8的官方文档中没有明确写明,大家本地部署测试很容易不成功,如果没有配置elasticsearch exporter,那么后面的operate和tasklist界面中看不到流程实例数据。

3、启动zeebe服务

进入bin目录,点击broker.bat,启动zeebe服务,效果如下:

4、测试zeebe

您可以通过询问zbtcl的集群拓扑来测试Zeebe网关,zbctl状态应该产生这样的输出:

四、 Operate安装部署

1、启动operate服务

将下载的operate解压到C:\java\camunda8\camunda-operate-8.1.10,进入bin目录,点击operate.bat,启动operate服务,效果如下:

2、进入operate控制台

启动完成后,访问:http://localhost:8080/,输入用户名demo,密码demo,进入operate管理控制台,当前还没有发布任何流程,如下效果:

注意:camunda8是微服务架构,我们模拟的是分布式部署,operate组件需要连接elasticsearch数据库和zeebe网关,具体配置在config/application.yml文件中,默认配置如下:

# Operate configuration file
camunda.operate:
  # Set operate username and password.
  # If user with <username> does not exists it will be created.
  # Default: demo/demo
  #username:
  #password:
  # ELS instance to store Operate data
  elasticsearch:
    # Cluster name
    clusterName: elasticsearch
    # URL
    url: http://localhost:9200
  # Zeebe instance
  zeebe:
    # Gateway address
    gatewayAddress: localhost:26500
  # ELS instance to export Zeebe data to
  zeebeElasticsearch:
    # Cluster name
    clusterName: elasticsearch
    # URL
    url: http://localhost:9200
    # Index prefix, configured in Zeebe Elasticsearch exporter
prefix: zeebe-record

更多配置参数见官方文档:https://docs.camunda.io/docs/self-managed/operate-deployment/operate-configuration/

五、Tasklist安装部署

1、修改tasklist配置文件

Tasklist默认端口为8080,直接启动跟operate服务端口冲突,这里需要先修改该服务的端口,这样才能在一台机器上启动。

在config/ application.yml文件中,增加server.port端口配置,如下:

更多配置参数见官方文档:https://docs.camunda.io/docs/self-managed/tasklist-deployment/tasklist-configuration/

2、启动tasklist服务

将下载的tasklist解压到C:\java\camunda8\camunda-tasklist-8.1.10,进入bin目录,点击tasklist.bat,启动tasklist服务,效果如下:

3、进入tasklist控制台

启动完成后,访问:http://localhost:8090/,输入用户名demo,密码demo,进入tasklist管理控制台,当前还没有发布流程任务信息,如下效果:

六、流程设计器安装部署

1、下载Desktop Modeler

Camunda8版本提供了Desktop Modeler 和Web Modeler两个版本的流程设计器,其中,Desktop Modeler是开源版本,Web Modeler是商业版本,目前官方只提供了docker安装包。我们使用开源版本的流程设计器Desktop Modeler。

下载camunda桌面版流程设计器Desktop Modeler, https://camunda.com/download/modeler/


2、启动Desktop Modeler

将下载的Desktop Modeler解压到C:\java\camunda8\camunda-modeler-5.10.0,进入该目录,点击Camunda Modeler.exe启动流程设计器,效果如下:

启动流程设计器后的界面,该版本流程建模工具支持Camunda7和Camunda8两个版本,支持BPMN、DMN、Form等模型建模,我们选择Camunda Platform8的BPMN模型。

3、设计一个流程并发布

为了测试流程发布、流程启动和流程审批功能,简单设计了一个user task活动的审批流程,配置流程处理人为demo,该用户是camunda安装后默认的一个用户,方便后面通过界面进去处理审批流程。

流程设计完成后,点击设计器左下角的发布按钮,弹出如下界面:

注意发布时选择Self-Managed目标,即自己私有化部署的流程引擎集群,输入默认的zeebe网关地址,点击deploy即可完成流程发布。

也可以在设计器上直接启动流程:

此时再登录到operate控制台中,即可看到刚刚启动的流程实例:

点击实例标题进入流程实例中:

可以看到流程是启动状态,当前在申请user task节点上,此时,我们登录Tasklist工作台,看看有没有待办任务。

点击Complete Task按钮,完成待办任务处理,再回到operate界面,看到流程状态已经到了下一个活动节点了。

七、总结

camunda7流程引擎内核是基于activiti5发展而来的,本质是上流程虚拟机pvm。Camunda8流程引擎内核是Zeebe,Zeebe是为Camunda平台8提供动力的过程自动化引擎。camunda7和camunda8的流程引擎完全不同,所以说camunda7和camunda8是两个完全不同的流程平台。camunda8虽然也提供了私有化安装部署模式,但官方定位是SaaS化流程引擎,重点是支持在线开通租赁服务。另外camunda8相对于camunda7开说,它的开源组件较少,大部分组件需要单独授权购买。

关于camunda7和camunda8的对比分析,请参考:https://zhuanlan.zhihu.com/p/616904438

八、扩展知识:camunda8部署方式

官方推荐使用以自我管理的方式部署运行camunda8的几种方式:

1、 基于Helm/Kubernetes部署运行Camunda8

强烈建议在生产中使用Kubernetes运行Camunda Platform 8。除了库存Kubernetes,还正式支持各种提供商,如Red Hat OpenShift和Amazon EKS。此外,将Kubernete与Minikube或KIND一起使用,可以在开发人员机器上本地运行Camunda Platform 8。

2、 基于Docker部署运行Camunda8

可以运行所提供的组件的Docker镜像,也可以在生产中运行。为了您的方便,我们提供了Docker Compose配置,用于在开发人员机器上运行Camunda Platform 8。请注意,Docker Compose配置不是针对生产使用进行优化的,而是针对本地开发进行优化的。

3、 手动方式部署运行Camunda8

如果本地或虚拟机提供了受支持的Java虚拟机(JVM),则可以在其上运行Java应用程序。这允许您在虚拟机或裸机上运行Camunda,并提供了很大的灵活性。但是,您需要配置组件的详细信息,以便自己正确地进行交互。我们认为这是最后的手段。请注意,Zeebe的生产使用不支持Windows/Mac。

九、参考资料

https://docs.camunda.io/docs/self-managed/platform-deployment/manual/

https://docs.camunda.io/docs/self-managed/platform-deployment/overview/

http://marvelouscoding.xyz/archives/zeebe

http://www.yunchengxc.com

相关推荐

3分钟让你的项目支持AI问答模块,完全开源!

hello,大家好,我是徐小夕。之前和大家分享了很多可视化,零代码和前端工程化的最佳实践,今天继续分享一下最近开源的Next-Admin的最新更新。最近对这个项目做了一些优化,并集成了大家比较关注...

干货|程序员的副业挂,12个平台分享

1、D2adminD2Admin是一个完全开源免费的企业中后台产品前端集成方案,使用最新的前端技术栈,小于60kb的本地首屏js加载,已经做好大部分项目前期准备工作,并且带有大量示例代码,助...

Github标星超200K,这10个可视化面板你知道几个

在Github上有很多开源免费的后台控制面板可以选择,但是哪些才是最好、最受欢迎的可视化控制面板呢?今天就和大家推荐Github上10个好看又流行的可视化面板:1.AdminLTEAdminLTE是...

开箱即用的炫酷中后台前端开源框架第二篇

#头条创作挑战赛#1、SoybeanAdmin(1)介绍:SoybeanAdmin是一个基于Vue3、Vite3、TypeScript、NaiveUI、Pinia和UnoCSS的清新优...

搭建React+AntDeign的开发环境和框架

搭建React+AntDeign的开发环境和框架随着前端技术的不断发展,React和AntDesign已经成为越来越多Web应用程序的首选开发框架。React是一个用于构建用户界面的JavaScrip...

基于.NET 5实现的开源通用权限管理平台

??大家好,我是为广大程序员兄弟操碎了心的小编,每天推荐一个小工具/源码,装满你的收藏夹,每天分享一个小技巧,让你轻松节省开发效率,实现不加班不熬夜不掉头发,是我的目标!??今天小编推荐一款基于.NE...

StreamPark - 大数据流计算引擎

使用Docker完成StreamPark的部署??1.基于h2和docker-compose进行StreamPark部署wgethttps://raw.githubusercontent.com/a...

教你使用UmiJS框架开发React

1、什么是Umi.js?umi,中文可发音为乌米,是一个可插拔的企业级react应用框架。你可以将它简单地理解为一个专注性能的类next.js前端框架,并通过约定、自动生成和解析代码等方式来辅助...

简单在线流程图工具在用例设计中的运用

敏捷模式下,测试团队的用例逐渐简化以适应快速的发版节奏,大家很早就开始运用思维导图工具比如xmind来编写测试方法、测试点。如今不少已经不少利用开源的思维导图组件(如百度脑图...)来构建测试测试...

【开源分享】神奇的大数据实时平台框架,让Flink&amp;Spark开发更简单

这是一个神奇的框架,让Flink|Spark开发更简单,一站式大数据实时平台!他就是StreamX!什么是StreamX大数据技术如今发展的如火如荼,已经呈现百花齐放欣欣向荣的景象,实时处理流域...

聊聊规则引擎的调研及实现全过程

摘要本期主要以规则引擎业务实现为例,陈述在陌生业务前如何进行业务深入、调研、技术选型、设计及实现全过程分析,如果你对规则引擎不感冒、也可以从中了解一些抽象实现过程。诉求从硬件采集到的数据提供的形式多种...

【开源推荐】Diboot 2.0.5 发布,自动化开发助理

一、前言Diboot2.0.5版本已于近日发布,在此次发布中,我们新增了file-starter组件,完善了iam-starter组件,对core核心进行了相关优化,让devtools也支持对IAM...

微软推出Copilot Actions,使用人工智能自动执行重复性任务

IT之家11月19日消息,微软在今天举办的Ignite大会上宣布了一系列新功能,旨在进一步提升Microsoft365Copilot的智能化水平。其中最引人注目的是Copilot...

Electron 使用Selenium和WebDriver

本节我们来学习如何在Electron下使用Selenium和WebDriver。SeleniumSelenium是ThoughtWorks提供的一个强大的基于浏览器的开源自动化测试工具...

Quick &#39;n Easy Web Builder 11.1.0设计和构建功能齐全的网页的工具

一个实用而有效的应用程序,能够让您轻松构建、创建和设计个人的HTML网站。Quick'nEasyWebBuilder是一款全面且轻巧的软件,为用户提供了一种简单的方式来创建、编辑...