Es war einmal, vor gar nicht allzu langer Zeit (okay, schon etwas länger her), da hat Microsoft AppFabric abgekündigt. Zum 10.04.2022 ist es endgültig vorbei, denn hier endet ebenfalls der Extended Support.
Da die Workflow-Ausführung der Matrix42 Service Management Umgebung bis zur Version 9 ausschließlich auf diese Technologie gesetzt hat, betrifft das also auch uns!
Hier erkläre ich dir, was das für dich heißt und was du jetzt tun solltest, um Probleme beim Update auf Version 11 & höher zu vermeiden.
Migrationspfad der Matrix42
Natürlich war dieses Problem dem Hersteller bereits bekannt und es wurden seit Längerem einige Vorkehrungen getroffen, um die AppFabric Technologie durch eine eigene abzulösen. Diese Technologie heißt “Worker” und ersetzt wie zuvor erwähnt die Workflow-Engine AppFabric, die entsprechenden Dienste auf dem Server und die Data Gateway Technologie.
Diese Worker-Technologie bietet auch einige Vorteile, z.B. Load Balancing Möglichkeiten, Performance-Vorteile und andere Abarbeitungswege der Warteschlangen, aber darum soll es hier heute nicht gehen. Sondern darum, wie die Ablösung der Technologie im Speziellen für Workflows vonstattengeht.
Hier die Tabelle zur Implementierungs-Timeline der neuen Technologie:
Q1/2020 (10.0.0) | (Technical Preview) Migration of the Custom Workflows and Custom Workflow Activities should be started. See the Workflows Migration help article for a step-by-step guide. |
Q2/2020 (10.0.1) | The new Workflow Engine can be used for Production Systems for Customers with a Digital Workspace Platform (DWP) Subscription. Microsoft AppFabric is still the default Workflow Execution Engine. |
Q4/2020 (10.0.3) | All Workflow Activities provided with the standard Matrix42 products are fully compatible with the Worker Technology. |
Q3/2021 (10.1.1) | The Matrix42 Worker Technology is effectively the standard execution engine for all Workflows.All Workflows that have compatible WorkerWorkflow Activities are automatically running on the new Technology for all Customers with and without the Digital Workspace Platform (DWP) Subscription.Workflows containing incompatible Activities are highlighted in the administrative area, the System Diagnostics, and in the Setup Wizard. Microsoft AppFabric will be still used to execute them as a fallback. See the Workflows Migration help article for a step-by-step guide in case a Workflow is highlighted to you containing Workflow Activities that are not compatible with the new Worker Technology.For new installations, Microsoft AppFabric is no longer required. |
Q2/2022 (11.0.2) | The Workflow Execution Engine based on Microsoft AppFabric is being discontinued and no more supported. |
Q4/2022 (12.0) | The discontinued Workflow Execution Engine based on Microsoft AppFabric will be removed. All non-compatible custom Workflow Activities have to be migrated to the Worker Technology before running an update. Workflows containing incompatible Activities are highlighted in the Setup Wizard.Follow the guide on Workflows Migration to prepare your Matrix42 Systems for the update. |
Was bedeutet das jetzt konkret?
Bevor du jetzt denkst: “Aja, da habe ich ja noch bis Version 12.0 Zeit”, kann ich dir nur sagen, dass das so theoretisch richtig, aber faktisch falsch ist. Denn auch wenn es ja “noch geht” ist es nicht mehr supportet ab Version 11.0.2.
Wenn also z.B. bestimmte Workflow-Activities wie Update Object, Send Mail oder Execute PowerShell unter AppFabric nicht mehr (fehlerfrei) funktionieren, ist das nicht Problem des Herstellers, sondern dein eigenes.
Selbst wenn das Problem behoben wird, dann vermutlich mit entsprechender Prio (nicht mehr supportete Technologie).
Security
Außerdem gibt es da noch die Sicherheits-Thematik: AppFabric erhält keine Sicherheitsupdates mehr mit Ende des Extendet Support. Wenn Lücken gefunden werden, bleiben diese offen.
Problem: Langläufer-Instanzen
Ein weiteres Problem, was gerne übersehen wird ist auch, dass zum Zeitpunkt der Abschaltung von AppFabric keine AppFabric Workflow-Instanzen mehr laufen dürfen. Dazu zählen natürlich auch angehaltenen Instanzen. Denn falls man das Update installiert (bekommt) sind, wenn die Dienste erst mal weg sind, alle Instanzen ebenfalls weg.
Das ist vorrangig bei Genehmigungs-, Change- und Bereitstellungs-Workflows ein großes Problem.
Faktisch musst du (oder dein Matrix42-Partner) also alle Workflows am besten genau jetzt umstellen oder zumindest mal initiieren, um nicht in dieses Problem zu rennen!
Workflows von AppFabric auf Worker-Engine migrieren
Zuerst mal gibt es hier eine Anleitung vom Hersteller, aber die Screenshots sind schon etwas älter. Trotzdem findet man dort alle wichtigen Informationen.
Zuerst solltest du aber mal auf eine aktuelle Version updaten. Die 10.1.1.3333 läuft meiner Erfahrung nach relativ gut und Bug-frei, zumindest habe ich bisher keine festgestellt.
Nach dem Update auf die 10.1.1.3333 werden dir die entsprechenden Workflows in der Systemdiagnose angemeckert und es gibt einen Extrabereich in den WF-Definitionen, der AppFabric Workflows auflistet.
Entgegen der Tabelle von oben, enthält der Bereich auch Workflows, die kompatibel sind. Scheinbar werden also die eigenen Workflows nicht automatisch umgestellt, zumindest nicht alle.
Wie auch immer, das Umstellen ist sehr einfach, solange man keine eigenen Workflow-Aktivitäten benutzt.
1. AppFabric Workflows öffnen
2. Preview öffnen & Aktion “Set Execution Engine” ausführen
3. “Matrix42 Worker für die ausgewählte Workflows-Ausführung verwenden” auswählen
4. Fertig
Problem: Eigene Aktivitäten
Falls du Workflows im System hast, die tatsächlich inkompatible Aktivitäten verwenden, kommt ein entsprechender Hinweis, wenn du den Assistenten Set Execution Engine abschließen willst:
An diesem Punkt hast du, wenn du kein Entwickler bist, nur die Möglichkeit, deinen Partner oder den Hersteller dieser Aktivität zu kontaktieren. Denn falls die Aktivität nicht ausgetauscht werden kann, muss diese so neu programmiert werden, dass sie Worker-Kompatibel ist.
Falls dein System nur Workflows ohne solche Aktivitäten hat, kannst du diese umstellen & anschließend testen. Sollte alles weiterhin wie gewohnt funktionieren, ist nichts mehr zu tun und deine Matrix42 ESM-Umgebung ist für das nächste Update gerüstet!