Liebe Community,
Viele von euch haben es ja sicher bereits mitbekommen und wir haben es auf den Goobi Tagen sowie dem Österreichischen Anwendertreffen bereits thematisiert: Wir haben Goobi workflow und Goobi viewer in den vergangenen Monaten umfangreich überarbeitet, um den technischen Unterbau langfristig zukunftssicher aufzustellen. Dabei lag der Fokus insbesondere auf der Migration auf Tomcat 10 sowie der Umstellung auf Java 21.
Was ist anders?
Bislang verwendeten Goobi workflow und Goobi viewer die Java-Version 11. Diese wurde allerdings bereits im September 2018 veröffentlicht und nähert sich mittlerweile dem Ende ihres offiziellen Lebenszyklus. Mit Java 21 setzen wir nun auf eine neue, moderne und auch langfristig unterstützte Version mit verschiedenen internen Neuerungen für die Entwickler:innen. Gleichzeitig haben wir für beide Applikationen auch die Serverarchitektur von Tomcat 9 auf Tomcat 10 aktualisiert. Von beiden großen Umstellungen versprechen wir uns nicht nur funktionale Verbesserungen sondern auch Optimierungen in den Bereichen Performance, Sicherheit und Ressourcennutzung.
Warum ist das nötig?
Beide Umstellungen – Java 21 und Tomcat 10 – sind dabei nicht einfach isolierte technische Maßnahmen, sondern tatsächlich für jeden von uns (Entwickler:innen, Administrator:innen und auch Anwender:innen) absolut essenzielle Schritte, um die langfristige Sicherheit, Kompatibilität und damit die Nutzung von Goobi zu gewährleisten. Denn viele der von uns intern verwendeten Programmbibliotheken vollziehen ebenfalls sukzessive eine Umstellung auf Tomcat 10 oder haben diese bereits sogar abgeschlossen. Ohne eine Aktualisierung von Goobi auf Tomcat 10 könnten wir daher mittelfristig keine aktuellen Versionen dieser Bibliotheken mehr einsetzen, was unmittelbar Auswirkungen auf die Sicherheit und Funktionsfähigkeit der gesamten Software haben würde.
Hinzu kommt hierbei natürlich auch noch eine weitere Problematik: Verschiedene Betriebssysteme haben die Nutzung von Java 11 und Tomcat 9 abgekündigt, so dass ohne eine Umstellung auf eine neuere Java- und Tomcat-Version das Betriebssystem nicht aktuell gehalten werden könnte, so dass auch auf Ebene des Betriebssystems keine Sicherheitsupdates eingespielt werden könnten.
Aus diesen und auch aus verschiedene weiteren technischen Gründen war diese Entscheidung zur Umstellung nicht nur sinnvoll, sondern unserer Ansicht nach auch alternativlos und zwingend notwendig.
Was heisst das für Euch alle?
Wie bei verschiedenen anderen technischen Systemen auch, stehen wir alle damit vor der Situation, dass wir dieses Update früher oder später alle einspielen werden müssen, wenn wir unsere Systeme aktuell und sicher weiter betreiben wollen. Eine Alternative dazu sehen wir nicht. Und es betrifft auch tatsächlich sämtliche Goobi workflow und auch Goobi viewer Instanzen. Teilweise ist es bei einigen Installationen sogar aus technischen Gründen notwendig, dass beide Systeme gleichzeitig aktualisiert werden müssen, z.B. wenn Goobi workflow und Goobi viewer beide auf dem gleichen Server betrieben werden.
Wie geht es weiter?
Für viele Eurer Systeme sind wir ja verantwortlich und kümmern uns damit auch um die Updates. Insofern werden wir, wenn das nicht bereits erfolgt ist, bald an Euch herantreten und nach einem Zeitpunkt für die Updates fragen. Jedes einzelne Update ist dabei für sich genommen deutlich umfangreicher als frühere Updates von Goobi. Bei der Umstellung auf Java 21 und Tomcat 10 jedoch ist es wirklich aufwendig und braucht manchmal auch noch einiges an Koordination zwischen Administrator:innen, Entwickler:innen und Nutzer:innen. Und da der eigentliche Update-Aufwand aufwendiger ist, ist natürlich auch die Ausfallzeit während der Umstellung etwas größer als sonst - eher ein ganzer Tag als nur ein/zwei Stunden. Aber das hängt immer auch von der jeweiligen Infrastruktur ab und kann je nach System wieder unterschiedlich sein.
Wird das jetzt immer so aufwendig sein?
Nein, definitiv nicht. Die Umstellung auf Java 21 und Tomcat 10 war enorm und in dem Umfang so bisher einzigartig. Zugleich ist Tomcat 10 dummerweise in einigen Bereichen auch nicht abwärtskompatibel, so dass sehr viele Softwareprojekte davon betroffen sind. Natürlich können wir nicht ausschließen, dass sich die Java-Community so etwas nicht noch einmal einfallen lässt in Zukunft. Wir gehen aber nicht davon aus. Eventuelle Upgrades auf Java 25, Tomcat 11 usw. werden ganz sicher wieder nur den Aufwand wie in der Vergangenheit mit sich bringen.
Wenn Ihr Fragen habt, meldet euch gern.
Liebe Grüße aus Göttingen,
Steffen