Camunda 8 - czym się różni od wersji 7 i jak ją uruchomić

Camunda - wersja 7

Camundę w wersji siódmej można nadal pobrać ze strony - link. Ta wersja będzie utrzymywana i rozwijana przez co najmniej kolejnych pięć lat. Wersję 7 możemy pobrać w kilku edycjach:

  • [Community Edition ] Camunda Platform 7 Run - do zainstalowania na działającym już serwerze Tomcat
  • [Community Edition ] Camunda Platform 7 + Tomcat - instalacja zwiera Tomcat wraz z modułem Camundy
  • [Community Edition ] Camunda Platform 7 Enterprise Edition - komercyjna wersja Camundy

Wersja Community Edition zawiera Tasklist oraz Cockpit Basic + silnik wykonywania procesów BPMN i DMN. Camunda w wersji 7 może np. zostać osadzona jako plik JAR w aplikacji Java [na etapie wczesnego rozwoju w wersji 8]. Domyślną bazą danych jest H2 którą w środowisku produkcyjnym można zamienić na inną relacyjną bazę danych.

Camunda - wersja 8

Camunda w wersji 8 nie jest kontunuacja wersji siódmej. To zupełnie inny produkt - choć oczywiście bardzo podobny do poprzedniego, ta sama idea i podobna logika [inna architektura na poziomie oprogramowania]. W Camunda Platform 8 domyślnym środowiskiem jest wersja SaaS - to był główny motywator napisania nowej edycji Camundy. Można tam tworzyć klastry gdzie "silnikami przepływów pracy" jest produkt nazwany "Zeebe". Camunda w wersji 8 jako bazę danych wykorzystuje Elasticsearch.

Camundę 8 mamy w dwóch edycjach:

  • Camunda Platform 8 Self-Managed - kontener Docker lub Kubernetes
  • Camunda Platform 8 SaaS

Architektura Camundy w wersji 8 wygląda następująco:

Komponenty oznaczone niebieskim kolorem są komponentami komercyjnymi. Choć wersja "Self-Managed" którą można pobrać zawiera je, producent jasno określa że nie możesz ich wykorzystywać w środowisku produkcyjnym: "If you want to put these components into production, you will need to buy a license (via enterprise subscription) from Camunda".

Komponenty oznaczone zielonymi paskami to komponenty na licencji "source-available" - możesz ich używać w produkcyjnej wersji bez opłat [to jest silnik przepływów, Zebe, oraz baza danych instalacji - Elasticsearch]. Co więcej, Camundę w wersji 8 możesz pobrać  jako kontenery Docker lub Kubernetes [jedyne opcje na oficjalnej stronie pobierania Camundy w wersji 8] lub jako komponenty do instalacji bezpośrednio w systemie operacyjnym - do pobrania tutaj.

Taka Camunda, "Self-Managed", nie posiada też zarządzania użytkownikami i ich uprawnieniami - mogło to być przydatne jeśli firma wykorzystywała moduł Tasklists i formularze. Instalacja Camundy 8, "Self-Managed" w wersji "source-available" ma zatem póki co niewielki sens. W praktyce jest to tylko demo produktu.

Korzystanie z Camunda 8, wersja "cloud"

Camunda SaaS, "cloud", dostępna jest w trzech wersjach; Free, Professional i Enterprise. Przejdzmy przez krótki tutorial uruchamiania wersji "Free" [tylko pięciu użytkowników, ograniczona lista funkcjonalności].

Utwórz klaster

Po utworzeniu konta na serwerach Camundy [link], pierwszą czynnością jest uruchomienie klastra. Wybierz "Create new Cluster" i wpisz w nowym oknie nazwę klastra (np.  "Test-cluster") który za chwilę utworzysz. Pozostałe ustawienia pozostaw bez zmian:

Stwórz model procesu

Następną czynnością jest stworzenie modelu procesu. W dashboard'u Camundy wybieramy opcję "Model a process":

Domyślnie mamy już w następnym oknie, na liście projektów otwarty nowy projekt - "New Project". Jeśli chcesz utworzyć nowy, wybierz menu "New project" (nie ma możliwości zmiany nazwy, by takiej zmiany dokonać skasuj istniejący i utwórz nowy):

Po utworzeniu nowego projektu, pojawi nam się okno gdzie będziemy mogli zdecydować jaki przepływ pracy tworzymy. Zacznijmy od podstawowego przepływu - diagramu BPMN:

Utwórzmy prosty proces, nadajmy mu nazwę i opoublikujmy go na silniku Zeebe wybierajać menu "Deploy diagram":

Po kilku sekundach otrzymasz informację że diagram procesu został opublikowany w klastrze, w silniku procesów Zeebe.

Sprawdzanie stanu procesów

Sprawdźmy czy nasz proces rzeczywiście działa i jaki jest jego status. W tym celu wybieramy z głównego okna, w lewym, górnym rogu [ikona kafelek] opcję "Operate":

API - komunikacja z procesem

Camunda 8 używa framework'u gRPC by komunikować się z Zeebe [silnikiem procesów]. Jeśli chcesz więc uruchomić proces, możesz to wykonać tylko w gRPC. REST jest obecnie dostępny tylko do komunikacji z taskami, operacjami, optymalizacją. Jednak wkrótce REST obsłuży też procesy.

By umożliwić komunikację API, w ustawieniach klastra wejdź do opcji 'API' i stwórz nową autoryzację:

Powyższy krótki tutorial daje Ci wyobrażenie jak wygląda tworzenie procesów w wersji 8 w chmurze. Chmurowa wersja Camundy to jednak tylko wersja Enterprise - patrz niżej dlaczego.

Nie tak fajnie jak myślisz

Darmowa wersja Camunda 8 cloud to praktycznie tylko demo. Opisane powyżej opcje są 'trial'. Po wygaśnięciu okresu próbnego, do dyspozycji masz jedynie modeler dla pięciu użytkowników. Modelowanie procesów możesz jednak robić w Modelerze, aplikacji desktopowej, lub chmurowej aplikacji Camundy - Cawemo [https://cawemo.com/]

Korzystanie obecnie z wersji Camunda 8 ma praktycznie sens tylko wtedy jeśli chcesz korzystać z gotowego serwisu SaaS - Camunda rezyduje na serwerach dostawcy oprogramowania. Jeśli chcesz mieć Camundę w swojej własnej serwerowni, pozostań z wersją 7. Wersja 7 oferuje więcej w darmowej wersji [np. ma zarządzanie użytkownikami, możesz wybrać bazę danych].