Automatisierung mit Camunda BPM
June 29, 2022 | Kategorie: tutorials | Thema: monitoring cloud

Camunda ist ein kostenloses BPM Automatisierungstool auf Enterprise Niveau.

Zuerst lade ich Camunda von der Website herunter. Ich wähle dabei “Other distributions” und den Tomcat Download (~120MB). Die Ordnerstruktur ist im Wurzelverzeichnis des Paketes deshalb erstelle ich einen neuen Ordner und entpacke das zip Paket darin. Ausserdem installiere ich das benötigte Java JDK und die JRE gleich mit.

  apt install openjdk-8-jdk openjdk-8-jre

Im Prinzip ist eine lauffähige Demo jetzt einsatzbereit. Für das Production environment sollte man allerdings davor einige Einstellungen vornehmen.

Datenbank

Von Haus aus arbeitet Camunda mit einer h2 Datenbank. Das ist eine In-Memory Datenbank welche keine Persistenz bietet. Deshalb konfiguriere ich eine Anbindung an MySQL.

apt install mysql-server
mysql_secure_installatoin

Nach der Anmeldung führe ich folgende Befehle aus

CREATE DATABASE IF NOT EXISTS camunda;
GRANT ALL ON camunda.* TO camunda@'localhost' IDENTIFIED BY 's3cr3t';
GRANT ALL ON camunda.* TO camunda@'%' IDENTIFIED BY 's3cr3t';
GRANT ALL ON camunda.* TO camunda@'127.0.0.1' IDENTIFIED BY 's3cr3t';

und melde mich wieder ab.

Im Ordner $CAMUNDA_HOME/sql/create liegen SQL Dateien, darunter 2 die mit dem Namen mysql beginnen. Diese importiere ich in die angelegte Datenbank.

mysql camunda -u camunda -ps3cr3t <  mysql_engine_7.0.0.sql
mysql camunda -u camunda -ps3cr3t <  mysql_identity_7.0.0.sql

Jetzt lade ich mir die neueste Version des MySQL Java Connectors von hier herunter und kopiere die jar Datei in das Verzeichnis $CAMUNDA_HOME/server/apache-tomcat-7.0.33/lib. Im Ordner $CAMUNDA_HOME/server/apache-tomcat-9.0.58/conf bearbeite ich die Datei server.xml.

Den Block Resource name “jdbc/ProcessEngine”

<Resource name="jdbc/ProcessEngine"
              auth="Container"
              type="javax.sql.DataSource"
              factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
              uniqueResourceName="process-engine"
              driverClassName="org.h2.Driver"
              url="jdbc:h2:./camunda-h2-dbs/process-engine;TRACE_LEVEL_FILE=0;D$
              defaultTransactionIsolation="READ_COMMITTED"
              username="sa"
              password="sa"
              maxActive="20"
              minIdle="5"
              maxIdle="20" />

ersetze ich durch

<Resource name="jdbc/ProcessEngine"
              auth="Container"
              type="javax.sql.DataSource"
              factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
              uniqueResourceName="process-engine"
              driverClassName="com.mysql.jdbc.Driver"
              url="jdbc:mysql://localhost:3306/camunda?autoReconnect=true"
              defaultTransactionIsolation="READ_COMMITTED"
              username="camunda"
              password="s3cr3t"
              maxActive="20"
              minIdle="5" />

REST Authentication

Um Basic authentication für die REST API zu aktivieren kommentiere ich in der Datei $CAMUNDA_HOME/server/apache-tomcat/webapps/engine-rest/WEB-INF/web.xml den entsprechenden Block aus.

LDAP Anbindung

In der Datei $CAMUNDA_HOME/server/apache-tomcat/conf/bpm-platform.xml den entsprechenden Block auskommentieren und bearbeiten.

Beitrag auf Github bearbeiten
Suche
Weiterlesen