Vorbereitung: Als erstes sollte sichergestellt werden, dass das Dienstkonto der Izytroniq bekannt ist und man darauf Zugriff hat. Das Konto ist der DB_Owner der Datenbanken Izytron.Iq und SyncService. Man kann es auch herausfinden, indem man prüft welches Konto in der services.msc den Dienst Izytroniq.Backend.Syncservice ausführt.
Für das Update werden die gleichen Installationsdateien wie für eine Installation
verwendet. Diese können hier heruntergeladen werden:
https://izytron.com/downloads.php
Alle Pakete sollten mit dem oben genannten Benutzer ausgeführt werden oder als Alternative mit einem sysadmin des SQL Servers.
Izytroniq Enterprise benötigt Net Framework 4.8 für den Betrieb.
Windows Server 2016 und 2019 müssen das Update nachinstallieren:
https://support.microsoft.com/de-de/topic/microsoft-net-framework-4-8-offline-installer-f%C3%BCrwindows-9d23f658-3b97-68ab-d013-aa3c3e7495e0
Wichtig: Sollten Sie Ultimate-Versionen der Izytroniq Enterprise im Einsatz haben müssen diese
alle ihre ausgecheckten Daten zum Zeitpunkt des Updates wieder eingecheckt haben. Ansonsten kann es zu Datenverlust oder Datenkompromittierung führen.
Es darf also niemand draußen im Einsatz mit Offlinedaten unterwegs sein, während ein Update durchgeführt wird.
Wenn diese Voraussetzungen erfüllt sind und das Update durchgeführt wird, kann der Dienst Izytroniq Backend SyncService gestoppt werden.
1. Update der Datenbank
Wird die Datenbank mit einem SQL User (statt eines AD oder Windows-Users) betrieben sollten die Registryeinträge der DB vorher gesichert werden.
Der Pfad dieser Einträge ist:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\GossenMetrawatt\IZYTRON.IQ\BackEndDatabaseConnectionString
HKEY_LOCAL_MACHINE\SOFTWARE\GossenMetrawatt\IZYTRON.IQ\BackSyncServiceDatabaseConnectionString
Sollte die Anwendung seit der Installation nicht verändert worden sein (Anderer SQL Server z.B.) kann das Update der Datenbank vie Doppelklick ausgeführt werden, da die Informationen bei der Installation in einem Cache abgelegt wurden.
Sollte dies nicht der Fall sein muss der Setup cache gelöscht werden:
In diesem Fall ist dann das Database.msi mit dem Parameter BACKEND_SERVERNAME=(name der SQL Instanz) auszuführen
2. Update des Applications Servers/SyncService
Der Zertifikatseintrag aus folgender Configdatei kann gesichert werden:
C:\Program Files\Gossen-Metrawatt\IZYTRON.IQ
BackEnd SyncService\ IZYTRON.IQ.SyncSvc.exe.config
Der String hat folgendes Format.
< serviceCertificate findValue="1234567890ABCDEF"
storeLocation="LocalMachine" storeName="My"
x509FindType="FindByThumbprint" />
Es wird nur dieser eine String gesichert, da der Rest der Configdateien sich zwischen den Versionen ändern können.
Die beiden Pakete werden ausgeführt. Danach müssen in folgenden Dateien der oben gesicherte String des Zertifikats hinterlegt werden.
C:\inetpub\wwwroot\IZYTRON.IQ\web.config
C:\Program Files\Gossen-Metrawatt\IZYTRON.IQ
BackEnd SyncService\ IZYTRON.IQ.SyncSvc.exe.config
Beispiel des finalen Ergebnisses aus der web.config:
3. Benutzerberechtigungen
Jetzt müssen im IIS Applicationpool izytroniq.Backendpool der Benutzer wieder eingetragen werden:
Rechtsklick - Advanced Settings / erweiterte Einstellung
Runterscrollen zu Process Model / Prozessmodel
Identity / Identität bearbeiten (Default ApplicatonPoolIdentity)
Sowie in der Services.msc der Benutzer im Dienst wieder hinterlegt werden:
Danach wird der Dienst neu gestartet.
Die Benutzer gehen verloren, weil die exe-dateien dahinter ausgetauscht werden und Windows damit nicht zurechtkommt.
4. Update LicensingTool
Das Update des Lizenstools ist optional.
Mit folgenden Prüfungen kann man dann testen, ob das Update erfolgreich war:
Der Dienst SyncService darf beim Starten über Services.msc im Eventviewer keinen Error werfen. Lediglich der Hinweis, dass der Dienst gestartet wurde sollte dort stehen.
Der SQL Query
select value from database_info
gibt die neue Version zurück.
Die Testseiten können ohne Fehler aufgerufen werden. Diese lauten:
https://servername/syncservice
https://servername/bits
https://servername/izytron.iq/handshakeremoteservice.svc
wenn alle Tests bestanden sind sollte die izytroniq Enterprise wieder laufen und man kann jetzt durch starten der Clientanwendungen das automatische Clientupdate starten.
Troubleshooting:
Beim Überschreiben älterer Versionen des Applicationservers kann es vorkommen, dass der ApplicationPool verschwindet. In diesem Fall einfach das Paket ApplicationSercer komplett deinstallieren und neu installieren. Es müssen mindestens die vier Einträge aus dem Screenshot oben zu sehen sein.
Das gleiche gilt fpr den Eintrag BackSyncSericeDatabaseConnectionString in der Registry. Sollte dieser nicht erstellt worden sein, das Paket SyncService deinstallieren und erneut installieren.
In dem Fall muss der SQL Server dann auch in der Registry nachgetragen werden:
HKEY_LOCAL_MACHINE\SOFTWARE\GossenMetrawatt\IZYTRON.IQ\BackSyncServiceDatabaseConnectionString
Data Source=SQLSERVER;Initial Catalog=SyncService;Integrated
Security=True;MultipleActiveResultSets=True
Manchmal kann es bei der Durchführung des Updates von ApplicationServer oder SyncService zu folgender Nachricht kommen:
Ursache hierfür ist häufig, dass die Berechtigungen mit der die Izytroniq erstmals installiert wurde von Windows nicht mehr nachvollzogen werden können.
In diesem Fall cancel, dann das entsprechende Paket komplett deinstallieren und dann neu installieren.
In diesem Fall ist der Benutzer nicht berechtigt, auf den SQL Server zuzugreifen.
Hier müssen die Registryeinträge wiederhergestellt werden (siehe Punkt 1).