原生app安裝包(原生安卓rom包下載)
Camunda8是基于標(biāo)準(zhǔn)云原生架構(gòu)設(shè)計(jì)開(kāi)發(fā)的,所以官方優(yōu)先推薦基于Kubernetes和docker的方式安裝部署Camunda8,考慮到大部分開(kāi)發(fā)者不一定具備Kubernetes環(huán)境和云原生相關(guān)知識(shí),所以本文介紹如何在一臺(tái)windows機(jī)器下手動(dòng)安裝運(yùn)行Camunda8的方式,方便開(kāi)發(fā)者快速了解Camunda8的組件和新特性,對(duì)Camunda8的功能有感性認(rèn)識(shí)。
Camunda8架構(gòu)圖
整個(gè)操作步驟為:下載Camunda8相關(guān)的組件—》安裝JDK—》安裝elasticsearch—》安裝zeebe—》安裝operate—》安裝tasklist—》安裝流程設(shè)計(jì)器—》設(shè)計(jì)流程—》發(fā)布流程—》處理待辦任務(wù)。
一、部署環(huán)境說(shuō)明
1、部署環(huán)境介紹
操作系統(tǒng):官方推薦使用Linux,本人使用Window11 64位,內(nèi)存16G;
Jdk版本:要求OpenJDK 8+ 以上版本,本人安裝的是jdk20版本;
Camunda版本:Camunda Platform 8.1.10;
部署Camunda8的步驟為:先安裝OpenJDK 8+,再安裝Elasticsearch,再依次部署zeebe、operate、tasklist等服務(wù)。安裝JDK是啟動(dòng)部署啟動(dòng)其它服務(wù)組件的前提條件。
安裝完成后,Camunda8共有5個(gè)組件,windows目錄結(jié)構(gòu)如下:
展開(kāi)全文
2、OpenJDK安裝
如果您已經(jīng)安裝了OpenJDK 8+,本步驟可以跳過(guò)。
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、啟動(dòng)elasticsearch服務(wù)
將下載的Elasticsearch解壓到C:\java\camunda8\elasticsearch-7.16.2,進(jìn)入bin目錄,點(diǎn)擊elasticsearch.bat啟動(dòng)es服務(wù),效果如下:
3、檢查elasticsearch服務(wù)
檢查elasticsearch是否啟動(dòng)成功,瀏覽器輸入: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,進(jìn)入config目錄
打開(kāi) application.yaml配置文件,在文件中增加如下配置
zeebe:
broker:
exporters:
elasticsearch:
className: io.camunda.zeebe.exporter.ElasticsearchExporter
為什么需要配置elasticsearch exporter到出器?
Zeebe本身不存儲(chǔ)與您的工作流實(shí)例相關(guān)的歷史數(shù)據(jù)。如果要保留這些數(shù)據(jù)以供審核或析,則需要導(dǎo)出到另一個(gè)存儲(chǔ)系統(tǒng)。Zeebe提供了了一個(gè)現(xiàn)成的ElasticSearch導(dǎo)出器,在安裝目錄的lib\zeebe-elasticsearch-exporter-8.1.10.jar。ElasticSearch也是Camunda Operate和Camunda Tasklist的存儲(chǔ)數(shù)據(jù)的工具,因此要運(yùn)行Operate和Tasklist,需要在Zeebe中啟用ElasticSearch導(dǎo)出器并運(yùn)行ElasticSearch的一個(gè)實(shí)例。
在Zeebe配置exporter特別關(guān)鍵,在camunda8的官方文檔中沒(méi)有明確寫(xiě)明,大家本地部署測(cè)試很容易不成功,如果沒(méi)有配置elasticsearch exporter,那么后面的operate和tasklist界面中看不到流程實(shí)例數(shù)據(jù)。
3、啟動(dòng)zeebe服務(wù)
進(jìn)入bin目錄,點(diǎn)擊broker.bat,啟動(dòng)zeebe服務(wù),效果如下:
4、測(cè)試zeebe
您可以通過(guò)詢問(wèn)zbtcl的集群拓?fù)鋪?lái)測(cè)試Zeebe網(wǎng)關(guān),zbctl狀態(tài)應(yīng)該產(chǎn)生這樣的輸出:
四、 Operate安裝部署
1、啟動(dòng)operate服務(wù)
將下載的operate解壓到C:\java\camunda8\camunda-operate-8.1.10,進(jìn)入bin目錄,點(diǎn)擊operate.bat,啟動(dòng)operate服務(wù),效果如下:
2、進(jìn)入operate控制臺(tái)
啟動(dòng)完成后,訪問(wèn):http://localhost:8080/,輸入用戶名demo,密碼demo,進(jìn)入operate管理控制臺(tái),當(dāng)前還沒(méi)有發(fā)布任何流程,如下效果:
注意:camunda8是微服務(wù)架構(gòu),我們模擬的是分布式部署,operate組件需要連接elasticsearch數(shù)據(jù)庫(kù)和zeebe網(wǎng)關(guān),具體配置在config/application.yml文件中,默認(rèn)配置如下:
# 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
更多配置參數(shù)見(jiàn)官方文檔:https://docs.camunda.io/docs/self-managed/operate-deployment/operate-configuration/
五、Tasklist安裝部署
1、修改tasklist配置文件
Tasklist默認(rèn)端口為8080,直接啟動(dòng)跟operate服務(wù)端口沖突,這里需要先修改該服務(wù)的端口,這樣才能在一臺(tái)機(jī)器上啟動(dòng)。
在config/ application.yml文件中,增加server.port端口配置,如下:
更多配置參數(shù)見(jiàn)官方文檔:https://docs.camunda.io/docs/self-managed/tasklist-deployment/tasklist-configuration/
2、啟動(dòng)tasklist服務(wù)
將下載的tasklist解壓到C:\java\camunda8\camunda-tasklist-8.1.10,進(jìn)入bin目錄,點(diǎn)擊tasklist.bat,啟動(dòng)tasklist服務(wù),效果如下:
3、進(jìn)入tasklist控制臺(tái)
啟動(dòng)完成后,訪問(wèn):http://localhost:8090/,輸入用戶名demo,密碼demo,進(jìn)入tasklist管理控制臺(tái),當(dāng)前還沒(méi)有發(fā)布流程任務(wù)信息,如下效果:
六、流程設(shè)計(jì)器安裝部署
1、下載Desktop Modeler
Camunda8版本提供了Desktop Modeler 和Web Modeler兩個(gè)版本的流程設(shè)計(jì)器,其中,Desktop Modeler是開(kāi)源版本,Web Modeler是商業(yè)版本,目前官方只提供了docker安裝包。我們使用開(kāi)源版本的流程設(shè)計(jì)器Desktop Modeler。
下載camunda桌面版流程設(shè)計(jì)器Desktop Modeler, https://camunda.com/download/modeler/
2、啟動(dòng)Desktop Modeler
將下載的Desktop Modeler解壓到C:\java\camunda8\camunda-modeler-5.10.0,進(jìn)入該目錄,點(diǎn)擊Camunda Modeler.exe啟動(dòng)流程設(shè)計(jì)器,效果如下:
啟動(dòng)流程設(shè)計(jì)器后的界面,該版本流程建模工具支持Camunda7和Camunda8兩個(gè)版本,支持BPMN、DMN、Form等模型建模,我們選擇Camunda Platform8的BPMN模型。
3、設(shè)計(jì)一個(gè)流程并發(fā)布
為了測(cè)試流程發(fā)布、流程啟動(dòng)和流程審批功能,簡(jiǎn)單設(shè)計(jì)了一個(gè)user task活動(dòng)的審批流程,配置流程處理人為demo,該用戶是camunda安裝后默認(rèn)的一個(gè)用戶,方便后面通過(guò)界面進(jìn)去處理審批流程。
流程設(shè)計(jì)完成后,點(diǎn)擊設(shè)計(jì)器左下角的發(fā)布按鈕,彈出如下界面:
注意發(fā)布時(shí)選擇Self-Managed目標(biāo),即自己私有化部署的流程引擎集群,輸入默認(rèn)的zeebe網(wǎng)關(guān)地址,點(diǎn)擊deploy即可完成流程發(fā)布。
也可以在設(shè)計(jì)器上直接啟動(dòng)流程:
此時(shí)再登錄到operate控制臺(tái)中,即可看到剛剛啟動(dòng)的流程實(shí)例:
點(diǎn)擊實(shí)例標(biāo)題進(jìn)入流程實(shí)例中:
可以看到流程是啟動(dòng)狀態(tài),當(dāng)前在申請(qǐng)user task節(jié)點(diǎn)上,此時(shí),我們登錄Tasklist工作臺(tái),看看有沒(méi)有待辦任務(wù)。
點(diǎn)擊Complete Task按鈕,完成待辦任務(wù)處理,再回到operate界面,看到流程狀態(tài)已經(jīng)到了下一個(gè)活動(dòng)節(jié)點(diǎn)了。
七、總結(jié)
camunda7流程引擎內(nèi)核是基于activiti5發(fā)展而來(lái)的,本質(zhì)是上流程虛擬機(jī)pvm。Camunda8流程引擎內(nèi)核是Zeebe,Zeebe是為Camunda平臺(tái)8提供動(dòng)力的過(guò)程自動(dòng)化引擎。camunda7和camunda8的流程引擎完全不同,所以說(shuō)camunda7和camunda8是兩個(gè)完全不同的流程平臺(tái)。camunda8雖然也提供了私有化安裝部署模式,但官方定位是SaaS化流程引擎,重點(diǎn)是支持在線開(kāi)通租賃服務(wù)。另外camunda8相對(duì)于camunda7開(kāi)說(shuō),它的開(kāi)源組件較少,大部分組件需要單獨(dú)授權(quán)購(gòu)買(mǎi)。
關(guān)于camunda7和camunda8的對(duì)比分析,請(qǐng)參考:https://www.sohu.com/a/658950529_121389665
八、擴(kuò)展知識(shí):camunda8部署方式
官方推薦使用以自我管理的方式部署運(yùn)行camunda8的幾種方式:
1、 基于Helm/Kubernetes部署運(yùn)行Camunda8
強(qiáng)烈建議在生產(chǎn)中使用Kubernetes運(yùn)行Camunda Platform 8。除了庫(kù)存Kubernetes,還正式支持各種提供商,如Red Hat OpenShift和Amazon EKS。此外,將Kubernete與Minikube或KIND一起使用,可以在開(kāi)發(fā)人員機(jī)器上本地運(yùn)行Camunda Platform 8。
2、 基于Docker部署運(yùn)行Camunda8
可以運(yùn)行所提供的組件的Docker鏡像,也可以在生產(chǎn)中運(yùn)行。為了您的方便,我們提供了Docker Compose配置,用于在開(kāi)發(fā)人員機(jī)器上運(yùn)行Camunda Platform 8。請(qǐng)注意,Docker Compose配置不是針對(duì)生產(chǎn)使用進(jìn)行優(yōu)化的,而是針對(duì)本地開(kāi)發(fā)進(jìn)行優(yōu)化的。
3、 手動(dòng)方式部署運(yùn)行Camunda8
如果本地或虛擬機(jī)提供了受支持的Java虛擬機(jī)(JVM),則可以在其上運(yùn)行Java應(yīng)用程序。這允許您在虛擬機(jī)或裸機(jī)上運(yùn)行Camunda,并提供了很大的靈活性。但是,您需要配置組件的詳細(xì)信息,以便自己正確地進(jìn)行交互。我們認(rèn)為這是最后的手段。請(qǐng)注意,Zeebe的生產(chǎn)使用不支持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
掃描二維碼推送至手機(jī)訪問(wèn)。
版權(quán)聲明:本文由飛速云SEO網(wǎng)絡(luò)優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請(qǐng)注明出處。