Postgres auf VM

Auf einem Rechner ist Windows Server 2025 nativ installiert. Es wurden keine Änderungen vorgenommen, nur Updates eingespielt, ein paar Befehle in der Aufgabenplanung (scheduler), nichts von belang (wbadmin start backup, defrag, …), es wurde partitioniert. solutio ist der hersteller der Praxissoftware charly. charly speichert seine Daten in Postgres 16.6, das mitgeliefert wird durch die Installations-Datei (einer etwa 700 MB) großen exe-Datei. Ich vermute ein NSIS-Installationsprogramm, falls das relevant ist. Aus Gründen der Kompatibilität möchte die firma solutio ihr Programm in einen Docker-Container auf jedem seiner Kunden migrieren. Davon möchte ich vorerst unberührt bleiben. Die Firma selbst sagt, dass ab Windows Server 2025 nur die Container-Version supported wird. Ich kann aus bestimmten Gründen noch nicht die Container-Version nutzen (das kann ich später erläutern). Um charly nativ zu installieren braucht man WMIC, das kann man leicht nachinstallieren und nur der Updater (ein anderes Programm, dass JRE8 nutzt und charly auf den neusten Stand bringt) braucht WMIC auf Windows Server 2025. Alle Datenbanken und relevanten Dateien/Ordner wurden auf den neuen Server kopiert, aber charly startet nicht. Es gibt ein Problem mit den Microservices, vorallem Gateway und Discovey. Obwohl die Firewall deaktiviert ist, ist keine SSL-Kommunikation mit localhost:Port möglich.

Eigentlich sollte charly nativ funktionieren aber für einen Container brauche ich ein ISO-Abbild der Altdaten (dazu ist Windows Server 2012 Essentials mangels PowerShell v5.1 nicht fähig. (ich kann die Container-Technologie später erläutern)

Problem: Ich könnte prinzipiell die Datenträger formatieren und Windows Server 2016-2022 installieren. Ich gehe davon aus, dass die native Installation problemlos gehen würde (theoretisch). Jetzt empfinde ich es als extra Arbeit, mit Windows Server 2022 von vorne anzufangen, das gut eingerichtete Windows Server 2025 zu löschen. Deswegen installiere ich charly auf einer VM bzw. ich installiere Windows Server 2022 auf einer VM und dann charly auf Windows Server 2022 in einer VM auf Hyper-V auf dem Rechner mit Windows Server 2025, wo schon charly nativ installiert ist.

Auf der VM gibt es ein merkwürdiges PROBLEM: Der Installer geht glatt durch, keine besonderen Fehlermeldungen. charly lässt sich nicht starten. Ursache: Es fehlen Progamme. Eins das ist sofort bemerkt habe ist das Fehlen von Postgres 16.6 (wird in dieser Version mitgeliefert) als Windows-Dienst unter Dienste (wird dort als Solutio Database Server) bezeichnet. Unter nativem charly auf nativem Windows Server 2025 gibt es dieses Problem NICHT.

Das selbe passiert mit Windows Server 2019 auf der VM.

Gibt es Konflikte zwischen beiden Postgres? Wohl kaum. Haben beide Betriebssysteme nicht mal die selbe interne IP-Adresse.

Es mit Windows Server 2016 auf einer VM probieren habe ich keine Lust mehr bzw. bin zuversichtlich, dass es nicht klappen wird.

Alternativ kaufe ich eine weitere NVMe, habe genug M.2 Slots, entferne kurz den Datenträger mit Windows Server 2025, installiere auf die leere NVMe Windows Server 2022 und installiere dort charly nativ. Dazu müsste ich physischen Zugang zum Server haben.

Der häufigste Grund warum der Postgres Installer unter Windows nicht funktioniert, sind Berechtigungen. Der Installer versucht via icacls.exe die Berechtigung auf dem Datenverzeichnis zu setzen. Vor allem in Rechner die in einer Domäne sind, scheitert das wohl ganz gerne. Schreibt der Installer ein Logfile? Dann schau mal dort nach.

Was genau meinst du postgres Installer? postgres 16.6 wird installiert durch den charly-Installer und ich glaube der charly-Installer ist so ein NSIS-Programm.

Und das ist ein Installer. Wenn das nicht der Installer ist, den man von EDB runterladen kann, dann musst Du wohl den Hersteller dieser Software um Hilfe bitten.

Wenn es im Grunde der “normale” Postgres Installer ist (“versteckt” ausgeführt mit der Option -mode unattended), dann lohnt sich ein Blick in die Logdatei die dabei erzeugt wird.

https://charlysuites.s3.amazonaws.com/installer/installation-win-9.32.1-x64.iso

wenn es sich jemand traut, kann die iso runterladen, per freigegebenem ordner auf sein (frisches) windows server 2022 in einer VM auf Hyper-V mounten (oder erst irgendwie auf windows server 2022 kopieren und dann mounten) und mir berichten, ob postgres 16.6 als windows-dienst unter solutio database server gelistet ist.