Im ersten Teil dieses Beitrags haben wir begonnen, diese Frage zu erörtern. Auf diesen Ergebnissen bauen wir im folgenden Artikel auf:
Um die Nutzung von Java-Technologie in der eigenen Organisation möglichst kostengünstig zu gestalten, müssen die Abhängigkeiten zwischen den eingesetzten Softwareprodukten (welche Softwareprodukte Java SE-Technologie benötigen und welche diese nicht benötigen) aufgezeigt werden. Erst durch diese Transparenz sind nachhaltige Entscheidungen möglich.
Durch einen Wechsel auf das OpenJDK oder andere Java-Varianten kann dann gezielt auf kostenpflichtige Lizenzen oder auch weitere Supportvereinbarungen verzichtet werden. Ein solcher Verzicht sollte im Vorfeld je nach Anforderung an die jeweilige Java-Anwendung abgewogen werden. Neben dem kostenpflichtigen Support im Rahmen einer Java SE-Subscription bieten noch weitere Hersteller ihre (kostenpflichtige) Unterstützung für den Einsatz von Java-Technologie an.
1.) Analyse der Abhängigkeiten
Als Ausgangsbasis für die Optimierung des Java-Einsatzes bietet sich die detaillierte Aufstellung der eingesetzten Java-Technologien in der jeweiligen Organisation an. Diese sollte pro Gerät aufzeigen, welche Version und Edition von welchem Hersteller installiert ist. Oftmals zeigt sich bereits an dieser Stelle, dass nicht nur eine, sondern mehrere Java-Technologien pro Gerät installiert wurden.
Hinweis: Besonders ältere Versionen der Java SE oder auch des OpenJDKs benötigen zu diesem Zeitpunkt ggf. schon eine Intervention, wenn durch deren Einsatz die Sicherheit der Geräte nicht mehr gewährleistet werden kann.
Mit Hilfe der detaillierten Aufstellung der eingesetzten Java-Technologien können nun über eine Filterfunktion alle Geräte mit eingesetzter Oracle- bzw. Java-Technologie identifiziert werden. Je nach Datengrundlage kann dies nicht nur über ein Feld, sondern in Kombination mit verschiedenen Feldern geschehen.
Im nächsten Schritt wird für die so identifizierten Geräte eine vollständige Liste der jeweils eingesetzten Software benötigt. Auf dieser Basis können nun unter Zuhilfenahme von erfahrenen Java-Anwendern die betroffenen Softwareprodukte identifiziert werden. Verschiedene Beratungsunternehmen und (einige) SAM-Toolhersteller haben dafür auch mittlerweile eigene Datenbankenbanken angelegt, auf welche (meist kostenpflichtig) zurückgegriffen werden kann.
2.) Handlungsmöglichkeiten
Nachdem die wichtigsten Softwareprodukte identifiziert wurden, bedarf es einzelner Entscheidungen über das weitere Vorgehen. Oftmals kann durch ein Update die Abhängigkeit zur Java SE reduziert werden.
Ein besonderes Augenmerk muss auf Eigenentwicklungen gelegt werden. Sollte dort der Einsatz von Oracle Java SE aktuell zwingend notwendig sein, könnte ein Wechsel zu einer kostenfreien Alternative mit den jeweiligen Produktverantwortlichen abgestimmt werden. Insbesondere wenn Java als Bestandteil eines Produktes an Kunden „verkauft“ wird, können mit einem solchen Wechsel kostenpflichtige Lizenzverträge mit Oracle vermieden werden.
3.) Die versteckte Software
Das zuvor geschilderte Vorgehen berücksichtigt allerdings nicht die flexible Nutzung von Java-Software ohne zwingende „Installation“ im eigentlichen Sinne.
Auf diese Art und Weise genutzte Software kann oftmals nur durch ganz gezielte Scans nach entsprechenden Dateiendungen oder unter Zuhilfenahme des Commercial Features JRE Usage Tracking / Java Usage Tracker gefunden werden.
Hinweis: Das Commercial Feature bedingt wiederum die kostenpflichtige Lizenzierung der jeweiligen Hardware!
4.) Vorgehen bei fehlender Abkündigungsmöglichkeit
Sollte sich am Ende der Analyse herausstellen, dass Java SE nicht abgekündigt werden kann, bleibt nur noch die Schadensbegrenzung. In einem nächsten Schritt sollte daher analysiert werden, ob die betroffene Java SE-Applikationen auf ein dediziertes Cluster bzw. eine dedizierte Hardware migriert werden kann. Dabei ist zu beachten, dass Oracle bei einem solchen Vorgehen die gleichen Lizenzierungsmaßstäbe wie bei den Datenbanken ansetzt, mit der Folge, dass die Lizenzierung von VMware-Technologie große Probleme bereiten kann, wenn nicht sichergestellt wird, dass die Java-Applikationen auf der dedizierten Hardware fest zugewiesen sind und nicht einfach auf unlizenzierte Hardware migriert oder verschoben werden können.
Die so genutzte Hardware muss dann natürlich auch entsprechend mit Lizenzen / Subscriptions ausgestattet werden. Sollte dies aber nicht möglich sein, muss Java SE in vielen Fällen vollständig und umfassend (mit entsprechend daraus resultierenden Kosten) lizenziert werden. Zur Vermeidung einer langfristigen Bindung an Java SE sollte dennoch über mittelfristige Migrationsprojekte zur Verminderung dieser Abhängigkeit nachgedacht werden.
Gerne stehen Ihnen bei der Optimierung des Einsatzes Ihrer Oracle-Produkte unsere Experten mit Rat und Tat zur Seite.