{"updated_at":"2026-11-10T23:24:58.976596+00:00","components":[{"id":"web","name":"Website und Dashboard","description":{"de":"citexnode.com, die Anmeldung und alles, was du im Dashboard anklickst.","en":"citexnode.com, signing in and everything you click in the dashboard."},"group":"platform","since":"2026-08-23","status":"operational","latency_ms":67,"monitored":true},{"id":"api","name":"API","description":{"de":"Die Schnittstelle hinter dem Dashboard.","en":"The interface behind the dashboard."},"group":"platform","since":"2026-08-23","status":"operational","latency_ms":42,"monitored":true},{"id":"db","name":"Datenbanken","description":{"de":"Die MySQL-Datenbanken, erreichbar unter mysql.citexnode.de.","en":"MySQL databases, reachable at mysql.citexnode.de."},"group":"platform","since":"2026-08-23","status":"operational","latency_ms":15,"monitored":true},{"id":"mail","name":"E-Mail-Versand","description":{"de":"Bestätigungen, Passwort-Reset und Verlängerungserinnerungen.","en":"Confirmations, password resets and renewal reminders."},"group":"platform","since":"2026-08-19","status":"operational","latency_ms":27,"monitored":true},{"id":"ns1","name":"Nameserver ns1","description":{"de":"ns1.citexnode.de – beantwortet DNS-Anfragen für Domains auf unseren Nameservern.","en":"ns1.citexnode.de – answers DNS queries for domains on our nameservers."},"group":"platform","since":"2026-10-21","status":"operational","latency_ms":1,"monitored":true},{"id":"ns2","name":"Nameserver ns2","description":{"de":"ns2.citexnode.de – zweiter Nameserver bei einem anderen Anbieter, übernimmt automatisch alle Zonen von ns1.","en":"ns2.citexnode.de – second nameserver at a different provider, copies every zone from ns1 automatically."},"group":"platform","since":"2026-10-21","status":"operational","latency_ms":31,"monitored":true},{"id":"dns-sync","name":"Nameserver-Abgleich","description":{"de":"Ob ns1 und ns2 für alle Domains auf unseren Nameservern denselben Stand ausliefern.","en":"Whether ns1 and ns2 serve the same state for every domain on our nameservers."},"group":"platform","since":"2026-10-23","status":"operational","latency_ms":19,"monitored":true},{"id":"statuspages","name":"Statusseiten","description":{"de":"Die Statusseiten unserer Kunden auf statuscx.eu und eigenen Domains.","en":"Our customers' status pages on statuscx.eu and their own domains."},"group":"platform","since":"2026-10-24","status":"operational","latency_ms":35,"monitored":true},{"id":"node2","name":"Node 2 · Frankfurt am Main","description":{"de":"Der zweite Standort, seit dem 23.08. in Betrieb.","en":"Der zweite Standort, seit dem 23.08. in Betrieb."},"group":"locations","since":"2026-08-23","status":"operational","latency_ms":19,"monitored":true},{"id":"node3","name":"Node 3 · Frankfurt am Main","description":{"de":"Die Maschine für neu angelegte Game-Server.","en":"Die Maschine für neu angelegte Game-Server."},"group":"locations","since":"2026-08-30","status":"operational","latency_ms":19,"monitored":true},{"id":"node4","name":"Node 4 · Frankfurt am Main","description":{"de":"Die Maschine für neu angelegte TeamSpeak-Musikbots.","en":"Die Maschine für neu angelegte TeamSpeak-Musikbots."},"group":"locations","since":"2026-10-09","status":"operational","latency_ms":19,"monitored":true},{"id":"node5","name":"Node 5 · Frankfurt am Main","description":{"de":"Die Maschine für die TeamSpeak-Musikbots. Hier läuft dein Bot, wenn im Dashboard node5 daneben steht.","en":"Die Maschine für die TeamSpeak-Musikbots. Hier läuft dein Bot, wenn im Dashboard node5 daneben steht."},"group":"locations","since":"2026-10-15","status":"operational","latency_ms":19,"monitored":true},{"id":"teamspeak-cgn","name":"TeamSpeak · Köln","description":{"de":"TeamSpeak-Server am Standort Köln.","en":"TeamSpeak-Server am Standort Köln."},"group":"locations","since":"2026-10-23","status":"operational","latency_ms":null,"monitored":false},{"id":"teamspeak-fra","name":"TeamSpeak · Frankfurt am Main","description":{"de":"TeamSpeak-Server am Standort Frankfurt am Main.","en":"TeamSpeak-Server am Standort Frankfurt am Main."},"group":"locations","since":"2026-10-23","status":"operational","latency_ms":31,"monitored":true},{"id":"reseller-portal","name":"Reseller-Portal","description":{"de":"reseller.citexnode.com: Anmeldung, Bestellen, Services, Rechnungen und der Admin-Bereich.","en":"reseller.citexnode.com: signing in, ordering, services, invoices and the admin area."},"group":"reseller","since":"2026-10-19","status":"operational","latency_ms":35,"monitored":true},{"id":"reseller-api","name":"Reseller-API","description":{"de":"Die Schnittstelle für Reseller-Shops: Katalog, Bestellungen und Instanzen per API-Key.","en":"The API for reseller shops: catalogue, orders and instances via API key."},"group":"reseller","since":"2026-10-19","status":"operational","latency_ms":34,"monitored":true},{"id":"reseller-billing","name":"Reseller-Abrechnung","description":{"de":"Stündliche Verbrauchserfassung, Monatsrechnungen und der Einzug über Mollie.","en":"Hourly usage metering, monthly invoices and collection via Mollie."},"group":"reseller","since":"2026-10-19","status":"operational","latency_ms":null,"monitored":false},{"id":"deploy","name":"Kundenseiten","description":{"de":"Die Websites und Apps unserer Kunden hinter der Kante (Caddy) auf dem Web-Cluster.","en":"Our customers' websites and apps behind the edge (Caddy) on the web cluster."},"group":"deploy","since":"2026-10-16","status":"operational","latency_ms":27,"monitored":true},{"id":"deploy-builds","name":"Builds","description":{"de":"Bauen und Ausrollen neuer Versionen nach einem Git-Push (deployd, BuildKit).","en":"Building and rolling out new versions after a git push (deployd, BuildKit)."},"group":"deploy","since":"2026-10-20","status":"operational","latency_ms":19,"monitored":true},{"id":"deploy-db","name":"Datenbanken (MariaDB)","description":{"de":"Die MariaDB-Datenbanken der Deploy-Projekte (Galera-Cluster über drei Knoten).","en":"The MariaDB databases of Deploy projects (Galera cluster across three nodes)."},"group":"deploy","since":"2026-10-20","status":"operational","latency_ms":19,"monitored":true},{"id":"deploy-storage","name":"Dauerhafter Speicher","description":{"de":"Volumes und Dateien der Projekte (GlusterFS, gespiegelt).","en":"Project volumes and files (GlusterFS, replicated)."},"group":"deploy","since":"2026-10-20","status":"operational","latency_ms":19,"monitored":true},{"id":"web-01","name":"Web-Knoten 1","description":{"de":"Erster Knoten des Web-Clusters.","en":"First node of the web cluster."},"group":"deploy","since":"2026-10-20","status":"operational","latency_ms":3,"monitored":true},{"id":"web-02","name":"Web-Knoten 2","description":{"de":"Zweiter Knoten des Web-Clusters.","en":"Second node of the web cluster."},"group":"deploy","since":"2026-10-20","status":"operational","latency_ms":2,"monitored":true},{"id":"web-03","name":"Web-Knoten 3","description":{"de":"Dritter Knoten des Web-Clusters.","en":"Third node of the web cluster."},"group":"deploy","since":"2026-10-20","status":"operational","latency_ms":3,"monitored":true},{"id":"github","name":"GitHub","description":{"de":"Automatische Deploys aus GitHub-Repositories (Git, Webhooks, API). Zeigt den Stand von githubstatus.com.","en":"Automatic deploys from GitHub repositories (Git, webhooks, API). Mirrors githubstatus.com."},"group":"external","since":"2026-10-21","status":"operational","latency_ms":169,"monitored":true},{"id":"cloudflare","name":"Cloudflare-Proxy","description":{"de":"Für Deploy-Projekte mit Cloudflare-Proxy (CDN, DNS, SSL, Netz). Zeigt den Stand von cloudflarestatus.com.","en":"For Deploy projects behind the Cloudflare proxy (CDN, DNS, SSL, network). Mirrors cloudflarestatus.com."},"group":"external","since":"2026-10-21","status":"operational","latency_ms":149,"monitored":true},{"id":"payments","name":"Zahlungen","description":{"de":"Guthaben aufladen und Reseller-Rechnungen über unseren Zahlungsdienstleister Mollie (Karte, PayPal, Überweisung und weitere). Zeigt den Stand von status.mollie.com.","en":"Topping up credit and reseller invoices through our payment provider Mollie (card, PayPal, bank transfer and more). Mirrors status.mollie.com."},"group":"external","since":"2026-11-05","status":"operational","latency_ms":143,"monitored":true}],"incidents":[{"id":"5a037a29-d5b1-40c9-af25-8e8afb3b2872","title":{"de":"Angriff auf Node 3: ein Game-Server vorübergehend gesperrt","en":"Attack on Node 3: one game server temporarily blocked"},"impact":"partial_outage","status":"resolved","started_at":"2026-11-08T13:44:00+00:00","resolved_at":"2026-11-08T14:05:13.422+00:00","components":["node3"],"updates":[{"status":"investigating","at":"2026-11-08T13:44:00+00:00","body":{"de":"Node 3 wird seit 13:44 Uhr UTC erneut angegriffen. Unser Schutz hat den angegriffenen Port eines Game-Servers automatisch gesperrt, damit der Rest des Nodes stabil bleibt. Java-Spieler können diesen einen Server gerade nicht erreichen, alle anderen Server auf Node 3 laufen normal. Wir prüfen den Angriff und geben den Port frei, sobald es sicher ist.","en":"Node 3 has been under attack again since 13:44 UTC. Our protection automatically blocked the attacked port of one game server to keep the rest of the node stable. Java players currently cannot reach this one server; all other servers on Node 3 run normally. We are looking into the attack and will unblock the port as soon as it is safe."}},{"status":"identified","at":"2026-11-08T13:51:44.239964+00:00","body":{"de":"Wir haben die Quelle gefunden: Beide Angriffe heute (05:04 und 13:44 Uhr UTC) kamen fast vollständig von derselben Adresse. Sie ist jetzt dauerhaft auf Node 3 gesperrt. Der betroffene Port bleibt vorerst noch geschlossen, bis wir sicher sind, dass keine weiteren Angriffe folgen.","en":"We found the source: both attacks today (05:04 and 13:44 UTC) came almost entirely from the same address. It is now permanently blocked on Node 3. The affected port stays closed for now until we are sure no further attacks follow."}},{"status":"monitoring","at":"2026-11-08T13:53:22.203491+00:00","body":{"de":"Der gesperrte Port ist seit 13:53 Uhr UTC wieder frei, der Server ist für alle Spieler wieder erreichbar. Die Quelle der Angriffe bleibt gesperrt. Wir beobachten die Lage noch eine Weile.","en":"The blocked port has been open again since 13:53 UTC, and the server is reachable for all players again. The source of the attacks stays blocked. We will keep monitoring for a while."}},{"status":"resolved","at":"2026-11-08T14:05:13.438196+00:00","body":{"de":"Die Ursache war kein Angriff von außen, sondern eine riesige Menge gezündetes TNT auf dem betroffenen Game-Server, die den Port überlastet hat. Wir haben das TNT entfernt, der Server läuft wieder normal und ist für alle Spieler erreichbar. Der Vorfall ist behoben.","en":"The cause was not an external attack but a huge amount of primed TNT on the affected game server, which overloaded the port. We removed the TNT; the server runs normally again and is reachable for all players. This incident is resolved."}}]},{"id":"bf79e0bb-cc1e-42b0-95ab-3119d6246a4d","title":{"de":"Angriff auf Node 3: Verzögerte Verbindungen und Voice-Chat","en":"Attack on Node 3: delayed connections and voice chat"},"impact":"degraded","status":"resolved","started_at":"2026-11-06T11:55:00+00:00","resolved_at":"2026-11-07T13:05:13.677+00:00","components":["node3"],"updates":[{"status":"investigating","at":"2026-11-06T11:55:00+00:00","body":{"de":"Auf Node 3 kommen UDP-Verbindungen (z. B. Voice-Chat-Mods) von außen nicht an. Game-Server laufen, Spieler können sich normal verbinden. Wir prüfen das.","en":"UDP connections (e.g. voice chat mods) from outside do not reach Node 3. Game servers are running and players can join normally. We are looking into it."}},{"status":"identified","at":"2026-11-06T13:06:18.912752+00:00","body":{"de":"Node 3 wurde mit Verbindungsanfragen überflutet. Seitdem filtert das vorgelagerte Netz UDP zu dieser Maschine. Die Angreifer-Adressen sind gesperrt, für betroffene Server leiten wir Voice-Chat über einen zweiten Weg um.","en":"Node 3 was flooded with connection requests. Since then the upstream network filters UDP to this machine. The attacking addresses are blocked, and we are rerouting voice chat for affected servers over a second path."}},{"status":"monitoring","at":"2026-11-06T13:06:20.748644+00:00","body":{"de":"Voice-Chat läuft über den Umweg wieder, Sprachverbindungen stehen. Wir beobachten die Lage und klären den Filter mit dem Netzbetreiber.","en":"Voice chat works again over the alternate path and voice connections are up. We are monitoring and clarifying the filter with the network provider."}},{"status":"identified","at":"2026-11-06T13:40:24.802463+00:00","body":{"de":"Der Angriff auf Node 3 geht weiter. Wir haben weitere Filter gesetzt, der Server selbst ist stabil. Neue Verbindungen zu Game-Servern auf Node 3 können durch die Schutzmaßnahmen unseres Netzbetreibers verzögert sein (höherer Ping, gelegentliche Verbindungsabbrüche). Voice-Chat läuft über einen Umweg.","en":"The attack on Node 3 continues. We have added further filters and the server itself is stable. New connections to game servers on Node 3 may be delayed by our network provider's protection (higher ping, occasional disconnects). Voice chat runs over an alternate path."}},{"status":"monitoring","at":"2026-11-06T15:46:10.284746+00:00","body":{"de":"Node 3 wurde heute in mehreren Wellen angegriffen, zuletzt um 16:20 Uhr. Seit 16:22 Uhr ist es ruhig. Die Angriffe erreichen die Game-Server nicht mehr: Wir haben die Filter auf allen Nodes verschärft, und ein Port, der geflutet wird, wird jetzt automatisch gesperrt, bis unser Team ihn wieder freigibt.\n\nDie Game-Server laufen. Der Schutz unseres Netzbetreibers bremst aber noch neue Verbindungen zu Node 3: Beim Joinen kann es bis zu einer Sekunde dauern, gelegentlich klappt es erst beim zweiten Versuch. Voice-Chat läuft weiter über einen Umweg. Wir klären das mit dem Netzbetreiber und beobachten die Lage.","en":"Node 3 was attacked in several waves today, most recently at 16:20 CET. It has been quiet since 16:22 CET. The attacks no longer reach the game servers: we tightened the filters on all nodes, and a port that gets flooded is now blocked automatically until our team releases it.\n\nThe game servers are running. Our network provider's protection still slows down new connections to Node 3: joining can take up to a second, and occasionally works only on the second try. Voice chat keeps running over an alternate path. We are clarifying this with the network provider and keep monitoring."}},{"status":"monitoring","at":"2026-11-06T16:04:21.04531+00:00","body":{"de":"Um 16:56 Uhr kam eine weitere Angriffswelle auf Node 3, etwa zwei Minuten lang. Unsere Filter haben sie vollständig abgefangen: Die Game-Server liefen ohne Verzögerung und ohne Verbindungsabbrüche weiter. Wir beobachten die Lage weiter.","en":"Another wave of the attack hit Node 3 at 16:56 CET, for about two minutes. Our filters caught it completely: the game servers kept running without delay and without disconnects. We keep monitoring."}},{"status":"monitoring","at":"2026-11-06T20:07:39.618192+00:00","body":{"de":"Am Abend kamen weitere Angriffswellen auf Node 3 (zuletzt gegen 21:00 Uhr). Sie wurden vollständig abgefangen, die Game-Server liefen ohne Einschränkung. Ein einzelner Port, der um 17:31 Uhr geflutet wurde, war bis 21:04 Uhr gesperrt und ist wieder freigegeben. Neue Verbindungen zu Node 3 klappen wieder zuverlässig. Voice-Chat läuft weiter über den Umweg, bis unser Netzbetreiber seinen Filter anpasst.","en":"More attack waves hit Node 3 in the evening (most recently around 21:00 CET). They were caught completely and the game servers ran without restrictions. A single port that was flooded at 17:31 CET was blocked until 21:04 CET and has been released again. New connections to Node 3 work reliably again. Voice chat keeps running over the alternate path until our network provider adjusts its filter."}},{"status":"monitoring","at":"2026-11-07T10:53:30.451287+00:00","body":{"de":"Über Nacht und heute Vormittag gab es weitere Angriffswellen auf Node 3 (zuletzt gegen 23:06 Uhr sowie heute um 10:37 Uhr). Sie richteten sich gegen den Webserver-Port und einen Port, auf dem kein Kundenserver läuft. Beides wird vollständig abgefangen, die Game-Server laufen ohne Einschränkung. Vereinzelt kann der Aufbau neuer Verbindungen kurz länger dauern. Voice-Chat läuft weiter über den Umweg, bis unser Netzbetreiber seinen Filter anpasst.","en":"Further attack waves hit Node 3 overnight and this morning (most recently around 23:06 and today at 10:37 CET). They targeted the web server port and a port with no customer server behind it. Both are fully filtered and game servers are running normally. Establishing new connections may occasionally take a little longer. Voice chat continues to run via the detour until our network provider adjusts its filter."}},{"status":"monitoring","at":"2026-11-07T10:59:46.035879+00:00","body":{"de":"Unser Netzbetreiber hat den Filter angepasst, UDP erreicht Node 3 wieder direkt. Der Voice-Chat läuft seit 11:58 Uhr wieder ohne Umweg, der betroffene Server wurde dafür einmal kurz neu gestartet. Spieler verbinden sich wieder normal. Wir beobachten die Lage noch eine Weile.","en":"Our network provider has adjusted its filter and UDP reaches Node 3 directly again. Voice chat has been running without the detour since 11:58 CET; the affected server was restarted once briefly for this. Players are connecting normally again. We will keep monitoring for a while."}},{"status":"resolved","at":"2026-11-07T13:05:13.693548+00:00","body":{"de":"Seit über zwei Stunden ist es auf Node 3 ruhig: kein weiterer Angriff, normale Last, Verbindungen und Voice-Chat laufen ohne Umweg. Die Schutzmaßnahmen bleiben aktiv. Der Vorfall ist behoben.","en":"Node 3 has been quiet for more than two hours: no further attacks, normal load, and connections and voice chat work directly. The protection measures stay in place. This incident is resolved."}}]},{"id":"6633bca8-92d5-4b19-8c5c-a5d20e79f9fa","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-11-06T11:25:25.095905+00:00","resolved_at":"2026-11-06T11:29:11.899739+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-11-06T11:25:25.095905+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-11-06T11:29:11.899739+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"974f0243-e724-4518-bdbb-bbdff10f73f1","title":{"de":"E-Mail-Versand nicht erreichbar","en":"E-Mail-Versand is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-11-06T10:31:24.298349+00:00","resolved_at":"2026-11-06T10:36:49.314519+00:00","components":["mail"],"updates":[{"status":"investigating","at":"2026-11-06T10:31:24.298349+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-11-06T10:36:49.314519+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"8966a6d4-acf2-4f39-89af-08773f359734","title":{"de":"Backups und Serveraktionen melden „Host-Server nicht erreichbar“","en":"Backups and server actions report \"host server unavailable\""},"impact":"degraded","status":"resolved","started_at":"2026-11-02T19:45:50.093+00:00","resolved_at":"2026-11-02T21:30:13.122+00:00","components":["api","node2","node3","node4","node5"],"updates":[{"status":"investigating","at":"2026-11-02T19:45:50.093+00:00","body":{"de":"Beim Erstellen von Backups für Game-Server und Bots erscheint die Meldung „Der Host-Server ist gerade nicht erreichbar“. Wir prüfen die Ursache und ob weitere Aktionen betroffen sind.","en":"Creating backups for game servers and bots currently fails with the message \"The host server is currently unavailable\". We are investigating the cause and whether other actions are affected."}},{"status":"identified","at":"2026-11-02T19:46:29.753579+00:00","body":{"de":"Ursache gefunden: Die Nodes sind erreichbar. Die Plattform wartet beim Erstellen eines Backups aber nur 10 Sekunden auf das Ergebnis. Dauert das Backup länger, erscheint die irreführende Meldung „Host-Server nicht erreichbar“. Wir arbeiten an einer Korrektur. Der Betrieb deiner Server ist davon nicht betroffen.","en":"Cause found: the nodes are reachable, but the platform only waits 10 seconds for a backup to finish. If it takes longer, the misleading \"host server unavailable\" message appears. We are working on a fix. Your running servers are not affected."}},{"status":"monitoring","at":"2026-11-02T20:04:30.43931+00:00","body":{"de":"Die Korrektur ist ausgerollt. Große Backups laufen jetzt im Hintergrund und erscheinen zunächst als „ausstehend“, bis sie fertig sind. Wir beobachten, ob Backups wieder durchlaufen. Falls du eben ein fehlgeschlagenes Backup hattest, starte es bitte neu.","en":"The fix has been rolled out. Large backups now run in the background and show as pending until they finish. We are monitoring whether backups complete again. If a backup failed for you earlier, please start it again."}},{"status":"resolved","at":"2026-11-02T21:30:13.138482+00:00","body":{"de":"Der Fehler ist behoben. Backups brechen nicht mehr nach kurzer Wartezeit mit „Host-Server nicht erreichbar“ ab. Größere Backups laufen im Hintergrund und stehen auf „ausstehend“, bis sie fertig sind. Falls ein Backup in dieser Zeit fehlgeschlagen ist, erstelle es bitte einfach noch einmal.","en":"This issue has been fixed. Backups no longer stop after a short wait with \"host server unreachable\". Larger backups run in the background and show as pending until they finish. If a backup failed during this time, please simply create it again."}}]},{"id":"928edebb-96af-40a3-9017-c99535d199f7","title":{"de":"Sprachchat auf Minecraft-Servern (Node 3) wird untersucht","en":"Voice chat on Minecraft servers (Node 3) under investigation"},"impact":"degraded","status":"resolved","started_at":"2026-11-02T13:31:57.072+00:00","resolved_at":"2026-11-02T19:09:56.195+00:00","components":["node3"],"updates":[{"status":"investigating","at":"2026-11-02T13:31:57.072+00:00","body":{"de":"Uns wurde gemeldet, dass die Mod **Simple Voice Chat** auf einem Minecraft-Server auf Node 3 keine Verbindung aufbaut, auch nicht mit einem zusätzlichen Port. Wir prüfen die UDP-Verbindung und die Einstellungen. Der Server selbst und das Spielen sind nach aktuellem Stand nicht betroffen.","en":"We received a report that the **Simple Voice Chat** mod does not connect on a Minecraft server on Node 3, even with an additional port. We are checking the UDP connection and the settings. As far as we know, the server itself and gameplay are not affected."}},{"status":"identified","at":"2026-11-02T13:35:27.995501+00:00","body":{"de":"Ursache gefunden: UDP-Pakete aus dem Internet kommen derzeit nicht bei Node 3 an, auf keinem der getesteten Ports. Auch bei Node 2 kamen die Testpakete nicht an. Der Server und seine Einstellungen sind in Ordnung, ein anderer Port hilft daher nicht. Betroffen sind Funktionen, die eingehendes UDP brauchen, zum Beispiel Simple Voice Chat. Die Pakete gehen vor unserem Server verloren, wir klären das mit unserem Netzanbieter. Das Spielen über TCP (Minecraft Java) ist nicht betroffen.","en":"Cause found: UDP packets from the internet currently do not reach Node 3, on any port we tested. Test packets did not reach Node 2 either. The server and its settings are fine, so a different port will not help. This affects features that need inbound UDP, such as Simple Voice Chat. The packets are lost before they reach our server, and we are raising this with our network provider. Playing over TCP (Minecraft Java) is not affected."}},{"status":"identified","at":"2026-11-02T13:39:58.279016+00:00","body":{"de":"Für den gemeldeten Server gibt es jetzt eine Übergangslösung: Der Sprachchat kann über eine andere Adresse von uns laufen. Die Ursache ist damit nicht behoben, eingehendes UDP aus dem Internet kommt weiter nicht direkt bei Node 3 an. Dazu wenden wir uns an unseren Netzanbieter. Wenn du betroffen bist, melde dich bitte beim Support.","en":"A temporary workaround is now available for the reported server: voice chat can run through another of our addresses. This does not fix the cause, and inbound UDP from the internet still does not reach Node 3 directly. We are raising this with our network provider. If you are affected, please contact support."}},{"status":"monitoring","at":"2026-11-02T17:21:08.743757+00:00","body":{"de":"Eingehendes UDP kommt seit heute Abend wieder direkt bei Node 3 an, unsere Tests von außen laufen erfolgreich. Wir beobachten die Lage weiter.","en":"Inbound UDP has been reaching Node 3 directly again since this evening, and our external tests are succeeding. We are continuing to monitor the situation."}},{"status":"resolved","at":"2026-11-02T19:09:56.207936+00:00","body":{"de":"Behoben. Eingehendes UDP erreicht Node 3 wieder direkt, unsere Tests von außen laufen erfolgreich. Sollte der Sprachchat bei dir weiterhin nicht funktionieren, melde dich bitte beim Support.","en":"Resolved. Inbound UDP is reaching Node 3 directly again, and our external tests are succeeding. If voice chat still does not work for you, please contact support."}}]},{"id":"f1744599-92a1-4d4e-b765-2e6e0430475b","title":{"de":"Reseller-Portal: Rabattstufen im Admin-Bereich laden nicht","en":"Reseller portal: discount tiers do not load in the admin area"},"impact":"notice","status":"resolved","started_at":"2026-11-02T10:21:48.795+00:00","resolved_at":"2026-11-02T14:19:44.146+00:00","components":["reseller-portal"],"updates":[{"status":"investigating","at":"2026-11-02T10:21:48.795+00:00","body":{"de":"Die Seite mit den Rabattstufen im Admin-Bereich des Reseller-Portals zeigt einen Fehler. Wir prüfen das gerade. Bestellungen und Abrechnung der Reseller sind nach aktuellem Stand nicht betroffen.","en":"The discount tiers page in the admin area of the reseller portal shows an error. We are looking into it. Based on what we know so far, reseller orders and billing are not affected."}},{"status":"identified","at":"2026-11-02T10:23:40.143054+00:00","body":{"de":"Ursache gefunden: Die API las die Adresse der Rabattstufen als Konto-ID und antwortete deshalb mit „nicht gefunden“. Die Korrektur wird gerade geprüft.","en":"Cause found: the API read the discount tiers address as an account ID and therefore answered \"not found\". The fix is being checked."}},{"status":"monitoring","at":"2026-11-02T10:27:42.416381+00:00","body":{"de":"Die Korrektur ist live. Wir beobachten, ob die Rabattstufen im Admin-Bereich wieder normal laden.","en":"The fix is live. We are watching whether the discount tiers load normally in the admin area again."}},{"status":"resolved","at":"2026-11-02T14:19:44.159078+00:00","body":{"de":"Behoben. Die Abfrage der Rabattstufen im Admin-Bereich des Reseller-Portals funktioniert wieder.","en":"Resolved. The discount tier request in the reseller portal's admin area works again."}}]},{"id":"9de000d0-bc5d-4ea5-9b6f-150a028ea76c","title":{"de":"Dashboard: Ladeschleife nach der Anmeldung","en":"Dashboard: endless loading after signing in"},"impact":"degraded","status":"resolved","started_at":"2026-11-02T10:03:02.781+00:00","resolved_at":"2026-11-02T14:19:42.876+00:00","components":["web"],"updates":[{"status":"investigating","at":"2026-11-02T10:03:02.781+00:00","body":{"de":"Uns liegt eine Meldung vor, dass das Dashboard nach der Anmeldung nicht fertig lädt und Fehlermeldungen wie „Keine Berechtigung“ anzeigt. Wir prüfen das gerade.","en":"We have received a report that the dashboard keeps loading after signing in and shows errors such as \"no permission\". We are looking into it."}},{"status":"identified","at":"2026-11-02T10:05:26.152485+00:00","body":{"de":"Ursache gefunden: Team-Konten ohne zweiten Faktor (2FA oder Passkey) landen im Admin-Bereich in einer Ladeschleife, statt den Hinweis zur Einrichtung zu sehen. Das Kundendashboard und Kundenserver zeigen in unseren Protokollen keine Fehler. Eine Korrektur ist in Arbeit.","en":"Cause found: team accounts without a second factor (2FA or passkey) get stuck in a loading loop in the admin area instead of seeing the setup notice. Our logs show no errors in the customer dashboard or on customer servers. A fix is in progress."}},{"status":"monitoring","at":"2026-11-02T10:19:43.014346+00:00","body":{"de":"Die Korrektur ist live. Team-Konten ohne zweiten Faktor sehen im Admin-Bereich jetzt den Hinweis zur Einrichtung statt einer Ladeschleife. Wir beobachten das weiter und warten auf die Rückmeldung des betroffenen Kontos.","en":"The fix is live. Team accounts without a second factor now see the setup notice in the admin area instead of a loading loop. We are keeping an eye on it and waiting for feedback from the affected account."}},{"status":"resolved","at":"2026-11-02T14:19:42.891586+00:00","body":{"de":"Behoben. Team-Konten ohne zweiten Faktor sehen im Admin-Bereich den Hinweis zur Einrichtung statt einer Ladeschleife.","en":"Resolved. Team accounts without a second factor now see the setup notice in the admin area instead of a loading loop."}}]},{"id":"4e8254c6-4915-4ee9-9cf4-485964bfb6ac","title":{"de":"Reseller-Portal: Rechnungs-PDF lässt sich nicht herunterladen","en":"Reseller portal: invoice PDF cannot be downloaded"},"impact":"degraded","status":"resolved","started_at":"2026-11-01T06:28:00+00:00","resolved_at":"2026-11-02T08:14:59.586+00:00","components":["reseller-billing","reseller-portal"],"updates":[{"status":"investigating","at":"2026-11-01T06:28:00+00:00","body":{"de":"Beim Herunterladen von Monatsrechnungen als PDF im Reseller-Portal erscheint ein Fehler. Wir untersuchen die Ursache. Das Portal selbst bleibt erreichbar.","en":"Downloading monthly invoices as PDF in the reseller portal returns an error. We are investigating the cause. The portal itself remains available."}},{"status":"identified","at":"2026-11-01T06:36:36.826729+00:00","body":{"de":"Ursache gefunden: Der Abruf des PDFs beim Zahlungsanbieter wurde abgelehnt, weil unsere API ihn nicht korrekt angemeldet hat. Ein Fix ist in Arbeit. Rechnungen und Zahlungen selbst sind nicht betroffen.","en":"Cause found: the payment provider rejected the PDF request because our API did not authenticate it correctly. A fix is in progress. Invoices and payments themselves are not affected."}},{"status":"monitoring","at":"2026-11-01T06:40:40.686189+00:00","body":{"de":"Der Fix ist ausgerollt, der PDF-Abruf funktioniert wieder. Wir beobachten die Lage.","en":"The fix is deployed and PDF downloads work again. We are monitoring the situation."}},{"status":"resolved","at":"2026-11-02T08:14:59.603477+00:00","body":{"de":"Der PDF-Abruf von Monatsrechnungen funktioniert seit dem Fix wieder. Der Vorfall ist behoben.","en":"Monthly invoice PDF downloads have been working again since the fix. This incident is resolved."}}]},{"id":"9106b5b9-148b-4318-8d37-a3190f98024e","title":{"de":"Statusseiten nicht erreichbar","en":"Statusseiten is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-31T02:34:41.69908+00:00","resolved_at":"2026-10-31T03:04:00.473784+00:00","components":["statuspages"],"updates":[{"status":"investigating","at":"2026-10-31T02:34:41.69908+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-31T03:04:00.473784+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"58ff8078-fa0e-405f-a7bd-a4f1f06dbabf","title":{"de":"Web-Knoten 1 nicht erreichbar","en":"Web-Knoten 1 is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-30T07:41:36.021701+00:00","resolved_at":"2026-10-30T07:58:41.673679+00:00","components":["web-01"],"updates":[{"status":"investigating","at":"2026-10-30T07:41:36.021701+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-30T07:58:41.673679+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"e4969331-6f89-4a3e-8564-43ce91c5bbde","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-30T07:41:16.107661+00:00","resolved_at":"2026-10-30T07:58:41.865228+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-30T07:41:16.107661+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-30T07:58:41.865228+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"24c7b5c8-11a7-4e9a-968c-8ce26445c437","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-30T06:48:14.908924+00:00","resolved_at":"2026-10-30T07:26:40.958902+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-30T06:48:14.908924+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-30T07:26:40.958902+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"c60953c3-7d59-41db-9e01-18ad7d7c834a","title":{"de":"Web-Knoten 2 nicht erreichbar","en":"Web-Knoten 2 is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-30T06:47:27.933528+00:00","resolved_at":"2026-10-30T07:25:40.273438+00:00","components":["web-02"],"updates":[{"status":"investigating","at":"2026-10-30T06:47:27.933528+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-30T07:25:40.273438+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"92e2d62c-714b-4446-9750-f3ebd71dd28f","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-30T06:25:15.347161+00:00","resolved_at":"2026-10-30T06:43:09.806804+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-30T06:25:15.347161+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-30T06:43:09.806804+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"8c49ecaf-4e8d-4122-9222-ab6862756264","title":{"de":"Web-Knoten 3 nicht erreichbar","en":"Web-Knoten 3 is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-30T06:24:14.509674+00:00","resolved_at":"2026-10-30T06:43:09.791607+00:00","components":["web-03"],"updates":[{"status":"investigating","at":"2026-10-30T06:24:14.509674+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-30T06:43:09.791607+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"d7481c53-9f12-45f3-8e9e-f45f96c69a4a","title":{"de":"E-Mail-Versand nicht erreichbar","en":"E-Mail-Versand is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-30T05:58:14.237139+00:00","resolved_at":"2026-10-30T05:59:39.277136+00:00","components":["mail"],"updates":[{"status":"investigating","at":"2026-10-30T05:58:14.237139+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-30T05:59:39.277136+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"843d37b4-64d7-4bd9-a2ad-c81e49454ccd","title":{"de":"Node 5 · Frankfurt am Main nicht erreichbar","en":"Node 5 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-30T04:32:42.945173+00:00","resolved_at":"2026-10-30T04:33:37.987702+00:00","components":["node5"],"updates":[{"status":"investigating","at":"2026-10-30T04:32:42.945173+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-30T04:33:37.987702+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"494497ba-3d42-4f70-9349-c2d861534f99","title":{"de":"Datenbanken nicht erreichbar","en":"Datenbanken is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-30T03:56:31.973828+00:00","resolved_at":"2026-10-30T03:57:07.00056+00:00","components":["db"],"updates":[{"status":"investigating","at":"2026-10-30T03:56:31.973828+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-30T03:57:07.00056+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"819b3c40-70be-40c2-b5d9-29e1745c3874","title":{"de":"Statusseiten nicht erreichbar","en":"Statusseiten is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-30T03:30:12.088773+00:00","resolved_at":"2026-10-30T03:32:36.948459+00:00","components":["statuspages"],"updates":[{"status":"investigating","at":"2026-10-30T03:30:12.088773+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-30T03:32:36.948459+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"e31a464e-4212-4714-8641-006f912f2bf3","title":{"de":"Statusseiten nicht erreichbar","en":"Statusseiten is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-30T03:01:00.619821+00:00","resolved_at":"2026-10-30T03:12:43.699511+00:00","components":["statuspages"],"updates":[{"status":"investigating","at":"2026-10-30T03:01:00.619821+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-30T03:12:43.699511+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"eb625178-52c1-47a5-a3a6-b1762a883a4d","title":{"de":"Web-Cluster nach Host-Neustart: Datenbanken der Deploy-Projekte gestört","en":"Web cluster after host restart: Deploy project databases disrupted"},"impact":"partial_outage","status":"resolved","started_at":"2026-10-29T23:08:00+00:00","resolved_at":"2026-10-30T01:04:31.342+00:00","components":["deploy-db","deploy","web-01","web-02","web-03"],"updates":[{"status":"investigating","at":"2026-10-29T23:08:00+00:00","body":{"de":"Der Host unter den Web-Knoten ist gegen 00:08 Uhr unerwartet neu gestartet. Die Web-Knoten fahren wieder hoch, der Datenbank-Cluster (MariaDB/Galera) muss neu zusammengeführt werden. Projekte mit Datenbank können bis dahin Fehler zeigen. Wir arbeiten daran.","en":"The host under the web nodes restarted unexpectedly at about 00:08 CET. The web nodes are coming back up; the database cluster (MariaDB/Galera) has to be rejoined. Until then, projects with a database may show errors. We are working on it."}},{"status":"identified","at":"2026-10-29T23:18:08.828024+00:00","body":{"de":"Ursache: Der Host unter den drei Web-Knoten ist neu gestartet, alle drei Datenbank-Knoten wurden gleichzeitig hart beendet und haben danach nicht selbst zusammengefunden. Alle Knoten hatten denselben Datenstand, es gingen keine Daten verloren. Wir führen den Cluster jetzt neu zusammen.","en":"Cause: the host under the three web nodes restarted, all three database nodes were stopped hard at the same time and did not rejoin on their own. All nodes had the same data, nothing was lost. We are rejoining the cluster now."}},{"status":"monitoring","at":"2026-10-29T23:18:29.613367+00:00","body":{"de":"Der Datenbank-Cluster ist seit etwa 00:20 Uhr wieder vollständig (3/3 synchron), der gemeinsame Speicher ist ohne Abweichungen, alle Projekte laufen wieder. Wir beobachten die Lage noch eine Weile.","en":"The database cluster has been complete again since about 00:20 CET (3/3 in sync), shared storage shows no differences, all projects are running again. We will keep watching for a while."}},{"status":"resolved","at":"2026-10-30T01:04:37.822412+00:00","body":{"de":"Der Datenbank-Cluster und alle Web-Knoten laufen seit über einer Stunde stabil. Die Web-Knoten wurden inzwischen ohne Unterbrechung auf einen anderen Host verschoben. Der Vorfall ist behoben.","en":"The database cluster and all web nodes have been stable for over an hour. The web nodes have since been moved to another host without interruption. The incident is resolved."}}]},{"id":"3c529881-1873-444f-aaae-0b52e962886a","title":{"de":"Builds nicht erreichbar","en":"Builds is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-29T23:06:14.536857+00:00","resolved_at":"2026-10-29T23:12:09.740715+00:00","components":["deploy-builds"],"updates":[{"status":"investigating","at":"2026-10-29T23:06:14.536857+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-29T23:12:09.740715+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"223dfb7f-4665-4ba9-b656-8fecb6e8388c","title":{"de":"Dauerhafter Speicher nicht erreichbar","en":"Dauerhafter Speicher is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-29T23:06:14.528146+00:00","resolved_at":"2026-10-29T23:12:09.750201+00:00","components":["deploy-storage"],"updates":[{"status":"investigating","at":"2026-10-29T23:06:14.528146+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-29T23:12:09.750201+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"31fc6193-5319-433d-861c-6fe1e151fb70","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-29T23:06:14.526357+00:00","resolved_at":"2026-10-29T23:19:39.601848+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-29T23:06:14.526357+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-29T23:19:39.601848+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"1bc6ee63-b9d9-460b-bcba-f52bb848770a","title":{"de":"Kundenseiten nicht erreichbar","en":"Kundenseiten is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-29T23:04:34.457325+00:00","resolved_at":"2026-10-29T23:12:09.7311+00:00","components":["deploy"],"updates":[{"status":"investigating","at":"2026-10-29T23:04:34.457325+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-29T23:12:09.7311+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"1a3dcf5f-b918-44e5-87dc-dd63f6f2226e","title":{"de":"Web-Knoten 1 nicht erreichbar","en":"Web-Knoten 1 is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-29T23:04:34.452586+00:00","resolved_at":"2026-10-29T23:12:09.783148+00:00","components":["web-01"],"updates":[{"status":"investigating","at":"2026-10-29T23:04:34.452586+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-29T23:12:09.783148+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"dcce4eaa-228d-42a6-89e5-43b4b150ffbe","title":{"de":"Web-Knoten 2 nicht erreichbar","en":"Web-Knoten 2 is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-29T23:04:34.452372+00:00","resolved_at":"2026-10-29T23:12:09.780505+00:00","components":["web-02"],"updates":[{"status":"investigating","at":"2026-10-29T23:04:34.452372+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-29T23:12:09.780505+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"7e638dc6-9598-435f-94aa-2ab9785d873b","title":{"de":"Web-Knoten 3 nicht erreichbar","en":"Web-Knoten 3 is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-29T23:04:15.683078+00:00","resolved_at":"2026-10-29T23:13:39.579926+00:00","components":["web-03"],"updates":[{"status":"investigating","at":"2026-10-29T23:04:15.683078+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-29T23:13:39.579926+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"c40162b5-188f-41f0-a5b9-eba1502f640e","title":{"de":"Kundenseiten (CitexNode Deploy) nicht erreichbar","en":"Customer sites (CitexNode Deploy) unreachable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-29T09:16:00+00:00","resolved_at":"2026-10-29T13:19:09.203+00:00","components":["deploy","deploy-builds","deploy-db","deploy-storage","web-01","web-02","web-03"],"updates":[{"status":"investigating","at":"2026-10-29T09:16:00+00:00","body":{"de":"Der Host, auf dem der Web-Cluster läuft, ist seit kurz nach 10:15 Uhr nicht mehr erreichbar. Websites und Apps auf CitexNode Deploy sowie Builds sind dadurch ausgefallen. Alle anderen Dienste (Dashboard, API, Game-Server, Bots, Mail) sind nicht betroffen. Wir sind mit dem Rechenzentrum in Kontakt.","en":"The host running the web cluster has been unreachable since shortly after 10:15 CET. Websites and apps on CitexNode Deploy and builds are down as a result. All other services (dashboard, API, game servers, bots, mail) are not affected. We are in contact with the data centre."}},{"status":"identified","at":"2026-10-29T09:21:06.118513+00:00","body":{"de":"Ursache gefunden: Der Rechenzentrumsbetreiber hat den Host des Web-Clusters vom Netz getrennt, sehr wahrscheinlich ausgelöst durch den Datenverkehr unseres geplanten Umzugs. Die Knoten selbst laufen weiter, es gehen keine Daten verloren. Wir haben die Freischaltung angefragt; danach sind die Seiten ohne weiteres Zutun wieder erreichbar.","en":"Cause identified: the data centre operator disconnected the web cluster's host, most likely triggered by the traffic of our planned move. The nodes themselves keep running and no data is lost. We have requested the host to be unblocked; the sites will come back on their own afterwards."}},{"status":"identified","at":"2026-10-29T11:41:13.034597+00:00","body":{"de":"Der Host ist wieder am Netz, die Web-Knoten laufen und Websites ohne Datenbank sind wieder erreichbar. Die MariaDB-Datenbanken der Deploy-Projekte starten nach dem harten Neustart noch nicht von selbst; wir stellen den Datenbank-Cluster gerade wieder her. Seiten, die eine Datenbank nutzen, können bis dahin Fehler zeigen.","en":"The host is back online, the web nodes are running and websites without a database are reachable again. The MariaDB databases of Deploy projects do not come back on their own after the hard restart; we are restoring the database cluster now. Sites that use a database may show errors until then."}},{"status":"monitoring","at":"2026-10-29T11:48:28.404319+00:00","body":{"de":"Der Datenbank-Cluster ist wiederhergestellt (alle drei Knoten synchron, keine Daten verloren). Websites, Datenbanken, Speicher und Builds von CitexNode Deploy laufen wieder. Wir beobachten die Lage noch eine Weile.","en":"The database cluster has been restored (all three nodes in sync, no data lost). Websites, databases, storage and builds of CitexNode Deploy are running again. We keep monitoring for a while."}},{"status":"resolved","at":"2026-10-29T13:19:15.106095+00:00","body":{"de":"Seit der Wiederherstellung laufen alle Dienste von CitexNode Deploy stabil. Der Vorfall ist behoben.","en":"All CitexNode Deploy services have been stable since the restore. The incident is resolved."}}]},{"id":"de2a9891-83dc-4beb-9522-285c7a80f578","title":{"de":"Nameserver-Abgleich nicht erreichbar","en":"Nameserver-Abgleich is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-28T17:59:16.439924+00:00","resolved_at":"2026-10-28T18:01:41.429319+00:00","components":["dns-sync"],"updates":[{"status":"investigating","at":"2026-10-28T17:59:16.439924+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-28T18:01:41.429319+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"2d782771-5ab1-408e-b225-e03b99756133","title":{"de":"Nameserver-Abgleich nicht erreichbar","en":"Nameserver-Abgleich is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-28T17:46:39.324017+00:00","resolved_at":"2026-10-28T17:56:11.423952+00:00","components":["dns-sync"],"updates":[{"status":"investigating","at":"2026-10-28T17:46:39.324017+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-28T17:56:11.423952+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"6eb75056-8c54-4883-a55c-273fce4d7547","title":{"de":"Reseller-API nicht erreichbar","en":"Reseller-API is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-28T17:37:46.648146+00:00","resolved_at":"2026-10-28T17:40:53.559428+00:00","components":["reseller-api"],"updates":[{"status":"investigating","at":"2026-10-28T17:37:46.648146+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-28T17:40:53.559428+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"7836c9fc-45c9-4cbe-aeda-0592642b434b","title":{"de":"Node 3 · Frankfurt am Main nicht erreichbar","en":"Node 3 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-28T17:32:51.837202+00:00","resolved_at":"2026-10-28T17:34:59.784472+00:00","components":["node3"],"updates":[{"status":"investigating","at":"2026-10-28T17:32:51.837202+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-28T17:34:59.784472+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"b511d57c-fb9f-4884-acda-28c842056779","title":{"de":"vServer mit Intel Xeon aktuell nicht bestellbar","en":"Intel Xeon vServers Currently Unavailable"},"impact":"degraded","status":"resolved","started_at":"2026-10-27T13:20:00.954+00:00","resolved_at":"2026-10-28T19:12:49.062+00:00","components":["api","web"],"updates":[{"status":"investigating","at":"2026-10-27T13:20:00.954+00:00","body":{"de":"Aktuell können vServer mit Intel-Xeon-Prozessoren nicht bestellt werden. Wir untersuchen die Ursache des Problems und arbeiten an einer Lösung.\n\nSobald es Neuigkeiten gibt, informieren wir euch über diese Statusseite.\n\nVielen Dank für eure Geduld und euer Verständnis.","en":"Intel Xeon vServers are currently unavailable for ordering. We are investigating the cause of the issue and working towards a solution.\n\nWe will provide further updates on this status page as soon as more information becomes available.\n\nThank you for your patience and understanding."}},{"status":"investigating","at":"2026-10-27T13:24:51.462299+00:00","body":{"de":"Update: Bestellungen für vServer mit Intel Xeon werden angenommen, die anschließende Bereitstellung schlägt aktuell jedoch fehl. Wir analysieren die Ursache gerade im Detail.\n\nBereits aufgegebene Bestellungen gehen nicht verloren – wir stellen sie bereit, sobald das Problem behoben ist.\n\nWir melden uns hier, sobald es Neuigkeiten gibt.","en":"Update: Orders for Intel Xeon vServers are being accepted, but the subsequent provisioning is currently failing. We are analysing the root cause in detail.\n\nOrders that have already been placed will not be lost – we will provision them as soon as the issue has been fixed.\n\nWe will post further updates here as soon as we know more."}},{"status":"identified","at":"2026-10-27T13:30:38.019151+00:00","body":{"de":"Ursache gefunden: Eine Konfigurationsänderung an unserer vServer-Automatisierung vom 25.10. hat dazu geführt, dass neue Intel-Xeon-vServer bei der Einrichtung vom Hostsystem abgewiesen wurden. Bestehende vServer sind nicht betroffen und laufen normal weiter.\n\nBestellungen, deren Bereitstellung fehlgeschlagen ist, wurden automatisch und vollständig auf euer Guthaben zurückerstattet.\n\nDie Korrektur ist fertig und wird gerade getestet und ausgerollt. Wir melden uns, sobald Bestellungen wieder normal bereitgestellt werden.","en":"Cause identified: A configuration change to our vServer automation on 25 October caused new Intel Xeon vServers to be rejected by the host system during setup. Existing vServers are not affected and continue to run normally.\n\nOrders whose provisioning failed have been refunded automatically and in full to your account balance.\n\nThe fix is ready and is currently being tested and rolled out. We will post an update as soon as orders are provisioned normally again."}},{"status":"monitoring","at":"2026-10-27T13:40:28.123393+00:00","body":{"de":"Wir beobachten: Die Korrektur ist ausgerollt. Neue Bestellungen von vServern mit Intel Xeon werden wieder normal bereitgestellt.\n\nWir beobachten die Bereitstellung weiterhin genau. Falls bei eurer Bestellung trotzdem etwas nicht klappt, meldet euch bitte über ein Ticket.","en":"Monitoring: The fix has been rolled out. New orders for Intel Xeon vServers are being provisioned normally again.\n\nWe are continuing to monitor provisioning closely. If anything still goes wrong with your order, please contact us via a ticket."}},{"status":"resolved","at":"2026-10-28T19:12:54.088166+00:00","body":{"de":"Behoben: vServer mit Intel Xeon sind seit der Korrektur durchgehend bestellbar und werden normal bereitgestellt. Danke für eure Geduld!","en":"Resolved: vServers with Intel Xeon have been orderable and provisioned normally since the fix. Thanks for your patience!"}}]},{"id":"1146383a-a095-4c95-9e87-64344892304c","title":{"de":"Statusseiten nicht erreichbar","en":"Statusseiten is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-27T10:24:07.910301+00:00","resolved_at":"2026-10-27T10:27:42.996033+00:00","components":["statuspages"],"updates":[{"status":"investigating","at":"2026-10-27T10:24:07.910301+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-27T10:27:42.996033+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"6b123b49-4118-4dd2-924e-fb3c2733cd18","title":{"de":"Eigene vServer nicht bestellbar und nicht verwaltbar","en":"Own vServers cannot be ordered or managed"},"impact":"partial_outage","status":"resolved","started_at":"2026-10-25T03:15:00+00:00","resolved_at":"2026-10-27T13:17:36.045+00:00","components":["api","web"],"updates":[{"status":"identified","at":"2026-10-25T03:15:00+00:00","body":{"de":"Seit etwa 03:15 UTC werden unsere eigenen vServer (u. a. Intel Xeon, Ryzen, EPYC) als nicht verfügbar angezeigt, und bestehende vServer lassen sich im Dashboard nicht steuern. Die Server selbst laufen normal weiter. Ursache ist ein Zertifikatswechsel auf unseren Virtualisierungs-Hosts, den die Plattform noch nicht übernommen hatte. Wir stellen das gerade um.","en":"Since about 03:15 UTC our own vServers (including Intel Xeon, Ryzen, EPYC) have shown as unavailable, and existing vServers cannot be controlled from the dashboard. The servers themselves keep running normally. The cause is a certificate change on our virtualisation hosts that the platform had not picked up yet. We are switching it over now."}},{"status":"monitoring","at":"2026-10-25T17:25:47.908078+00:00","body":{"de":"Behoben: Die Plattform spricht die Virtualisierungs-Hosts jetzt über ihre neuen Zertifikate an. Eigene vServer sind seit 17:25 UTC wieder bestellbar und im Dashboard steuerbar. Wir beobachten die Lage.","en":"Fixed: the platform now talks to the virtualisation hosts using their new certificates. Own vServers can be ordered and controlled in the dashboard again since 17:25 UTC. We are monitoring."}},{"status":"resolved","at":"2026-10-27T13:17:39.649319+00:00","body":{"de":"Eigene vServer sind wieder vollständig verfügbar. Die Bestellung neuer vServer sowie die Verwaltung bestehender Server über das Dashboard funktionieren wieder normal. Der Zertifikatswechsel auf unseren Virtualisierungs-Hosts wurde erfolgreich abgeschlossen.\n\nWir beobachten die Plattform weiterhin, um sicherzustellen, dass alle Dienste stabil laufen.","en":"Custom vServers are fully available again. Ordering new vServers and managing existing servers through the dashboard are working normally again. The certificate change on our virtualization hosts has been completed successfully.\n\nWe continue to monitor the platform to ensure all services remain stable."}}]},{"id":"35d19ce1-61b9-4ec2-b01e-862d82a635d4","title":{"de":"Reseller-API nicht erreichbar","en":"Reseller-API is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-25T01:09:41.505887+00:00","resolved_at":"2026-10-25T01:14:57.125675+00:00","components":["reseller-api"],"updates":[{"status":"investigating","at":"2026-10-25T01:09:41.505887+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-25T01:14:57.125675+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"03602afc-d283-4c36-8b0d-6264deb3e3ae","title":{"de":"Statusseiten und Reseller-API zeitweise nicht erreichbar","en":"Status pages and reseller API temporarily unreachable"},"impact":"partial_outage","status":"resolved","started_at":"2026-10-25T01:00:00+00:00","resolved_at":"2026-10-25T03:01:26.842+00:00","components":["statuspages","reseller-api"],"updates":[{"status":"monitoring","at":"2026-10-25T01:00:00+00:00","body":{"de":"Von etwa 01:00 bis 01:15 UTC antworteten die Statusseiten auf statuscx.eu und Teile der Reseller-API sehr langsam oder gar nicht. Ursache war die nächtliche Datensicherung, die die Festplatte des Hosts voll ausgelastet hat. Wir haben die Sicherung abgebrochen und gedrosselt neu gestartet; seitdem antworten alle Dienste wieder normal. Wir beobachten die Lage, bis die Sicherung durch ist.","en":"From about 01:00 to 01:15 UTC the status pages on statuscx.eu and parts of the reseller API responded very slowly or not at all. The nightly backup saturated the host's disk. We stopped the backup and restarted it throttled; all services have responded normally since. We are monitoring until the backup has finished."}},{"status":"resolved","at":"2026-10-25T03:01:27.700363+00:00","body":{"de":"Seit 01:15 UTC laufen alle Dienste stabil. Die Sicherung ist dauerhaft gedrosselt, damit sie den Betrieb nicht mehr ausbremst.","en":"All services have been stable since 01:15 UTC. The backup is now permanently throttled so it no longer slows down normal operation."}}]},{"id":"dac1e220-8de9-46d1-bc9f-74f3716de694","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-24T21:00:29.610743+00:00","resolved_at":"2026-10-24T21:02:54.665232+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-24T21:00:29.610743+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-24T21:02:54.665232+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"56f5ef43-c4cd-4ad0-a366-515a3dc8cfd3","title":{"de":"Dauerhafter Speicher nicht erreichbar","en":"Dauerhafter Speicher is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-24T21:00:29.609284+00:00","resolved_at":"2026-10-24T21:02:54.738432+00:00","components":["deploy-storage"],"updates":[{"status":"investigating","at":"2026-10-24T21:00:29.609284+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-24T21:02:54.738432+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"4d8d8742-9ac6-4a51-890e-2b52c1aa75e7","title":{"de":"E-Mail-Versand nicht erreichbar","en":"E-Mail-Versand is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-24T20:57:49.598399+00:00","resolved_at":"2026-10-24T20:59:24.620499+00:00","components":["mail"],"updates":[{"status":"investigating","at":"2026-10-24T20:57:49.598399+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-24T20:59:24.620499+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"69c46c92-2695-4362-aea7-ad74eb47c2e9","title":{"de":"Node 5 · Frankfurt am Main nicht erreichbar","en":"Node 5 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-24T19:58:28.885827+00:00","resolved_at":"2026-10-24T20:00:23.88398+00:00","components":["node5"],"updates":[{"status":"investigating","at":"2026-10-24T19:58:28.885827+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-24T20:00:23.88398+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"8fbdd7d1-ff02-414c-b053-26f230c15916","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-23T22:37:32.079631+00:00","resolved_at":"2026-10-23T22:43:57.110105+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-23T22:37:32.079631+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-23T22:43:57.110105+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"52bdb978-0483-4828-bd72-a47448846de7","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-23T19:23:31.813834+00:00","resolved_at":"2026-10-23T19:24:29.243945+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-23T19:23:31.813834+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-23T19:24:29.243945+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"5155caff-ae47-4796-acd2-335dec753c10","title":{"de":"Kurzer Speicher-Hänger: Game-Server auf Node 3 gestoppt","en":"Brief storage stall: game servers on Node 3 stopped"},"impact":"degraded","status":"resolved","started_at":"2026-10-23T19:16:00+00:00","resolved_at":"2026-10-23T22:10:11.665+00:00","components":["node3","api","db","mail","node5"],"updates":[{"status":"identified","at":"2026-10-23T19:16:00+00:00","body":{"de":"Zwischen etwa **21:16 und 21:19 Uhr** konnten mehrere unserer Server beim Rechenzentrumsanbieter 2–3 Minuten lang nicht auf ihre Festplatten schreiben. Betroffen waren vor allem **Game-Server auf Node 3**: Minecraft-Server blieben beim Speichern hängen, einige wurden vom Server selbst sicher beendet (die Welt wurde vorher gespeichert). Auch API, Datenbanken und Mail können in diesem Zeitraum kurz langsam gewesen sein.\n\nSeit 21:19 Uhr läuft alles wieder normal. **Falls dein Server seitdem gestoppt ist oder hängt, starte ihn bitte im Dashboard neu.** Wir haben beim Anbieter nach der Ursache gefragt.","en":"Between about **21:16 and 21:19 CEST** several of our servers at the data centre provider could not write to their disks for 2–3 minutes. Mainly **game servers on Node 3** were affected: Minecraft servers stalled while saving, some were shut down safely by the server itself (the world was saved first). The API, databases and mail may also have been briefly slow during that time.\n\nEverything has been running normally since 21:19. **If your server has been stopped or stuck since then, please restart it from the dashboard.** We have asked the provider for the cause."}},{"status":"monitoring","at":"2026-10-23T20:07:32.268025+00:00","body":{"de":"Die Festplatten antworten wieder normal schnell, seit 21:19 Uhr gab es keinen weiteren Hänger. Wir beobachten die Lage noch etwa eine Stunde.","en":"Disks are responding at normal speed again; there has been no further stall since 21:19. We will keep watching for about an hour."}},{"status":"resolved","at":"2026-10-23T22:10:11.825046+00:00","body":{"de":"Seit dem kurzen Speicher-Hänger um 21:16–21:19 Uhr gab es keine weiteren Aussetzer, alle Systeme laufen normal. Der Vorfall ist abgeschlossen. Falls dein Server seitdem noch gestoppt ist, starte ihn bitte im Dashboard neu.","en":"There have been no further stalls since the brief storage hang at 21:16–21:19 CEST, and all systems are running normally. This incident is resolved. If your server is still stopped since then, please restart it from the dashboard."}}]},{"id":"b01eb044-1caf-4a9b-92d0-0ef59a4c089f","title":{"de":"Nameserver-Abgleich nicht erreichbar","en":"Nameserver-Abgleich is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-23T17:28:29.475436+00:00","resolved_at":"2026-10-23T17:36:17.407196+00:00","components":["dns-sync"],"updates":[{"status":"investigating","at":"2026-10-23T17:28:29.475436+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-23T17:36:17.407196+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"f191ea1b-6685-4d31-91b6-bee22ca1ad75","title":{"de":"TeamSpeak-Server am Standort Köln nicht erreichbar","en":"TeamSpeak servers in Cologne unreachable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-23T17:20:18.63+00:00","resolved_at":"2026-10-23T22:10:10.119+00:00","components":["teamspeak-cgn"],"updates":[{"status":"investigating","at":"2026-10-23T17:20:18.63+00:00","body":{"de":"Bei TeamSpeak-Servern am Standort Köln kommt es gerade zu Problemen. Verbindungen können abbrechen oder nicht zustande kommen. Wir untersuchen die Ursache und melden uns hier mit einem Update.","en":"TeamSpeak servers at our Cologne location are currently having issues. Connections may drop or fail. We're investigating and will post an update here."}},{"status":"identified","at":"2026-10-23T17:23:20.406679+00:00","body":{"de":"Ursache gefunden: Die Störung liegt beim Anbieter des Standorts Köln. Verbindungen zu TeamSpeak-Servern dort sind derzeit nicht möglich. Der Anbieter arbeitet an der Behebung; wir melden uns, sobald sich etwas ändert. TeamSpeak-Server in Frankfurt sind nicht betroffen.","en":"Cause identified: the issue lies with the provider of our Cologne location. Connections to TeamSpeak servers there are currently not possible. The provider is working on a fix; we'll update you as soon as anything changes. TeamSpeak servers in Frankfurt are not affected."}},{"status":"identified","at":"2026-10-23T18:37:26.997583+00:00","body":{"de":"Neue Info vom Anbieter: Am Standort Köln laufen Wartungsarbeiten, die vorher nicht angekündigt wurden. Deshalb sind die TeamSpeak-Server dort gerade nicht erreichbar. Sobald der Anbieter die Arbeiten abschließt, sollten sie wieder verfügbar sein; wir prüfen das und melden uns hier. TeamSpeak-Server in Frankfurt sind nicht betroffen.","en":"Update from the provider: unannounced maintenance is under way at the Cologne location, which is why the TeamSpeak servers there are currently unreachable. They should be available again once the provider finishes the work; we'll check and post an update here. TeamSpeak servers in Frankfurt are not affected."}},{"status":"monitoring","at":"2026-10-23T20:34:07.664495+00:00","body":{"de":"Der Anbieter hat die Wartungsarbeiten abgeschlossen, die TeamSpeak-Server in Köln sind wieder erreichbar. Wir beobachten die Lage noch etwa eine Stunde. Falls dein Server weiterhin nicht erreichbar ist, melde dich bitte im Support.","en":"The provider has finished its maintenance and the TeamSpeak servers in Cologne are reachable again. We will keep watching for about an hour. If your server is still unreachable, please contact support."}},{"status":"resolved","at":"2026-10-23T22:10:10.278168+00:00","body":{"de":"Die TeamSpeak-Server in Köln laufen seit dem Ende der Wartung des Anbieters wieder stabil. Der Vorfall ist abgeschlossen.","en":"The TeamSpeak servers in Cologne have been running stably since the provider finished its maintenance. This incident is resolved."}}]},{"id":"2c971fbb-faa7-4419-987a-9124ce39627a","title":{"de":"Builds nicht erreichbar","en":"Builds is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T19:56:15.273036+00:00","resolved_at":"2026-10-22T19:56:19.739077+00:00","components":["deploy-builds"],"updates":[{"status":"investigating","at":"2026-10-22T19:56:15.273036+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T19:56:19.739077+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"f937554d-d7e6-4f2d-a971-ccc3a50901ea","title":{"de":"Reseller-API nicht erreichbar","en":"Reseller-API is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T19:56:15.259694+00:00","resolved_at":"2026-10-22T19:56:19.442054+00:00","components":["reseller-api"],"updates":[{"status":"investigating","at":"2026-10-22T19:56:15.259694+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T19:56:19.442054+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"2fd6c987-ded6-4bf4-855f-c81dc047c914","title":{"de":"Dauerhafter Speicher nicht erreichbar","en":"Dauerhafter Speicher is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T19:38:54.253278+00:00","resolved_at":"2026-10-22T19:39:49.606042+00:00","components":["deploy-storage"],"updates":[{"status":"investigating","at":"2026-10-22T19:38:54.253278+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T19:39:49.606042+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"a9576125-ac6a-4d7a-b781-c5f4b56e2675","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T19:38:54.208599+00:00","resolved_at":"2026-10-22T19:39:49.711045+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-22T19:38:54.208599+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T19:39:49.711045+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"29e9da3d-2f5e-4b28-b4bf-9d8314687416","title":{"de":"Ausfall: API, Mail, Datenbanken und Kundenseiten nicht erreichbar","en":"Outage: API, mail, databases and customer sites unreachable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:34:02.66+00:00","resolved_at":"2026-10-22T19:42:59.026+00:00","components":["api","db","mail","node5","reseller-api","deploy","deploy-builds","deploy-db","deploy-storage","web-01","web-02","web-03"],"updates":[{"status":"investigating","at":"2026-10-22T16:34:02.66+00:00","body":{"de":"Nach Wartungsarbeiten am Netzwerk eines unserer Hosts sind die API, das Dashboard hinter der Anmeldung, E-Mail-Versand, die MySQL-Datenbanken, Node 5 und die Kundenseiten von CitexNode Deploy nicht erreichbar. Game-Server und Bots auf Node 2–4 laufen weiter, lassen sich aber gerade nicht über das Dashboard steuern. Wir arbeiten an der Wiederherstellung.","en":"After network maintenance on one of our hosts, the API, the dashboard behind sign-in, email delivery, the MySQL databases, Node 5 and CitexNode Deploy customer sites are unreachable. Game servers and bots on Node 2–4 keep running but can't be controlled from the dashboard right now. We're working on restoring service."}},{"status":"identified","at":"2026-10-22T16:43:25.830421+00:00","body":{"de":"Ursache gefunden: Einer unserer Host-Server hat nach einer Änderung an der Netzwerkkonfiguration die Verbindung verloren. Wir arbeiten gerade über die Konsole des Anbieters daran, ihn wieder ans Netz zu bringen. Danach starten die betroffenen Dienste automatisch wieder. Eure Daten sind nicht betroffen.","en":"Cause identified: one of our host servers lost its network connection after a change to its network configuration. We're working through the provider's console to bring it back online. The affected services will come back automatically once it's reachable again. Your data is not affected."}},{"status":"monitoring","at":"2026-10-22T17:05:41.063202+00:00","body":{"de":"Der Host ist wieder am Netz. API, Dashboard, E-Mail, Datenbanken, Node 5 und die Kundenseiten sind seit etwa 17:10 Uhr wieder erreichbar. Wir beobachten die Lage noch eine Weile.","en":"The host is back online. API, dashboard, email, databases, Node 5 and customer sites have been reachable again since about 17:10 CEST. We're keeping an eye on things for a while."}},{"status":"resolved","at":"2026-10-22T19:42:59.197846+00:00","body":{"de":"Behoben. Der Host war nach einer fehlerhaften Änderung an seiner Netzwerkkonfiguration von etwa 18:20 bis 19:03 Uhr nicht erreichbar (im vorigen Update stand versehentlich 17:10 Uhr). Die Korrektur ist inzwischen dauerhaft eingetragen und hat einen Neustart des Hosts überstanden. Alle Dienste laufen wieder normal. Entschuldigt bitte die Störung.","en":"Resolved. The host was unreachable from about 18:20 to 19:03 CEST after a faulty change to its network configuration (the previous update mistakenly said 17:10). The fix is now permanent and has survived a reboot of the host. All services are running normally again. Sorry for the disruption."}}]},{"id":"b62e1848-4437-4419-b336-49e06c6a5745","title":{"de":"E-Mail-Versand nicht erreichbar","en":"E-Mail-Versand is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:42.519864+00:00","resolved_at":"2026-10-22T17:05:15.43583+00:00","components":["mail"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:42.519864+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T17:05:15.43583+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"384f87e9-4318-42e7-8d23-738c6e53db88","title":{"de":"Node 3 · Frankfurt am Main nicht erreichbar","en":"Node 3 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:42.500063+00:00","resolved_at":"2026-10-22T17:05:39.817063+00:00","components":["node3"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:42.500063+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T17:05:39.817063+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"62941e76-88c3-49f8-b335-a776e494bf41","title":{"de":"Builds nicht erreichbar","en":"Builds is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:42.477455+00:00","resolved_at":"2026-10-22T17:05:17.359369+00:00","components":["deploy-builds"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:42.477455+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T17:05:17.359369+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"137519d4-4c88-412a-bc53-a6a45fa709d2","title":{"de":"Dauerhafter Speicher nicht erreichbar","en":"Dauerhafter Speicher is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:42.473809+00:00","resolved_at":"2026-10-22T17:05:17.357848+00:00","components":["deploy-storage"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:42.473809+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T17:05:17.357848+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"83a10515-e87d-42da-928a-a1a7dfbe52af","title":{"de":"Datenbanken nicht erreichbar","en":"Datenbanken is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:42.412582+00:00","resolved_at":"2026-10-22T17:05:16.449907+00:00","components":["db"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:42.412582+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T17:05:16.449907+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"6f740442-8dfa-4d27-ad3b-eccae120bbad","title":{"de":"Kundenseiten nicht erreichbar","en":"Kundenseiten is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:42.361751+00:00","resolved_at":"2026-10-22T16:59:47.960535+00:00","components":["deploy"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:42.361751+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T16:59:47.960535+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"b7299a3a-ea18-4ee8-a873-78174a41f771","title":{"de":"Reseller-API nicht erreichbar","en":"Reseller-API is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:42.33406+00:00","resolved_at":"2026-10-22T17:05:17.27166+00:00","components":["reseller-api"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:42.33406+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T17:05:17.27166+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"60f26efb-99f7-4715-a11f-63c1cef96f14","title":{"de":"API nicht erreichbar","en":"API is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:42.297392+00:00","resolved_at":"2026-10-22T17:05:17.246037+00:00","components":["api"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:42.297392+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T17:05:17.246037+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"8654f93e-fbd9-464c-a4ad-8d220be4891a","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:42.277248+00:00","resolved_at":"2026-10-22T17:05:17.420319+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:42.277248+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T17:05:17.420319+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"f4d4e8c5-168d-4145-bf39-648520e3de25","title":{"de":"Node 2 · Frankfurt am Main nicht erreichbar","en":"Node 2 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:41.861949+00:00","resolved_at":"2026-10-22T17:05:39.724071+00:00","components":["node2"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:41.861949+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T17:05:39.724071+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"298b3261-65cf-430e-a3d9-237815f13b6f","title":{"de":"Node 5 · Frankfurt am Main nicht erreichbar","en":"Node 5 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:41.80261+00:00","resolved_at":"2026-10-22T17:05:39.778064+00:00","components":["node5"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:41.80261+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T17:05:39.778064+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"039062ed-405d-4c1d-b931-ebc2f0ece457","title":{"de":"Node 4 · Frankfurt am Main nicht erreichbar","en":"Node 4 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:41.794786+00:00","resolved_at":"2026-10-22T17:05:39.674119+00:00","components":["node4"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:41.794786+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T17:05:39.674119+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"f196c08f-27a3-4adb-849c-d8dd1f396ddc","title":{"de":"Web-Knoten 1 nicht erreichbar","en":"Web-Knoten 1 is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:33.660312+00:00","resolved_at":"2026-10-22T16:59:46.919846+00:00","components":["web-01"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:33.660312+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T16:59:46.919846+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"41a12cbb-0dcf-4fab-a4aa-253adc58f5a7","title":{"de":"Web-Knoten 2 nicht erreichbar","en":"Web-Knoten 2 is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:26.708065+00:00","resolved_at":"2026-10-22T16:59:47.928454+00:00","components":["web-02"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:26.708065+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T16:59:47.928454+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"1ea8ad2f-06ff-4e22-bc2c-c5e936d50de3","title":{"de":"Web-Knoten 3 nicht erreichbar","en":"Web-Knoten 3 is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:32:23.80695+00:00","resolved_at":"2026-10-22T16:59:47.229367+00:00","components":["web-03"],"updates":[{"status":"investigating","at":"2026-10-22T16:32:23.80695+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T16:59:47.229367+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"bcf156ef-aaea-488f-beb1-01d50120938e","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-22T16:01:51.511561+00:00","resolved_at":"2026-10-22T16:04:16.515103+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-22T16:01:51.511561+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-22T16:04:16.515103+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"b3fe3622-b2a5-494a-aae5-484e567f953e","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T22:15:07.038957+00:00","resolved_at":"2026-10-21T22:17:02.472937+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-21T22:15:07.038957+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T22:17:02.472937+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"358ce69b-f85b-4418-bc68-cc11d4de886e","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T17:50:35.51551+00:00","resolved_at":"2026-10-21T17:51:30.90542+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-21T17:50:35.51551+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T17:51:30.90542+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"0cf6133c-614b-46bb-a764-5c8ff3c58aee","title":{"de":"E-Mail-Versand nicht erreichbar","en":"E-Mail-Versand is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T17:45:39.644885+00:00","resolved_at":"2026-10-21T17:48:00.894254+00:00","components":["mail"],"updates":[{"status":"investigating","at":"2026-10-21T17:45:39.644885+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T17:48:00.894254+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"cfc66229-5aa5-4de7-9dca-96bb4bcba08c","title":{"de":"E-Mail-Versand nicht erreichbar","en":"E-Mail-Versand is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T17:01:55.415906+00:00","resolved_at":"2026-10-21T17:28:31.202121+00:00","components":["mail"],"updates":[{"status":"investigating","at":"2026-10-21T17:01:55.415906+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"identified","at":"2026-10-21T17:20:43.897312+00:00","body":{"de":"Ursache gefunden: Bei der Absicherung gegen die PHP-Sicherheitslücke hatten wir die Weboberfläche des Mailservers abgeschaltet. Die Passwortprüfung für Mail-Anmeldungen läuft intern über denselben Dienst; nach Ablauf eines Zwischenspeichers schlugen ab etwa 18:38 Uhr Anmeldungen fehl, sodass unter anderem Bestätigungs- und Benachrichtigungsmails nicht verschickt wurden.","en":"Cause identified: while protecting against the PHP vulnerability we had switched off the mail server's web interface. Password checks for mail logins run internally through the same service; after a cache expired, logins failed from about 16:38 UTC, so confirmation and notification emails among others were not sent."}},{"status":"monitoring","at":"2026-10-21T17:20:46.203443+00:00","body":{"de":"Behoben: Der interne Dienst läuft wieder und ist von außen weiterhin nicht erreichbar – Webmail und Mail-Verwaltung bleiben bis zum Sicherheitsupdate gesperrt. Mail-Anmeldungen und der Versand funktionieren wieder (geprüft). In der Zwischenzeit zurückgestellte Mails werden automatisch erneut zugestellt. Wir beobachten die Lage.","en":"Fixed: the internal service is running again and remains unreachable from outside – webmail and the mail administration stay locked until the security update. Mail logins and sending work again (verified). Emails deferred in the meantime are retried automatically. We are monitoring the situation."}},{"status":"resolved","at":"2026-10-21T17:28:31.202121+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"80927460-020f-44b2-913f-5dfcf07a4e36","title":{"de":"Domains: Nameserver ns1/ns2.citexnode.de nicht erreichbar","en":"Domains: nameservers ns1/ns2.citexnode.de unreachable"},"impact":"degraded","status":"resolved","started_at":"2026-10-21T16:53:59.195+00:00","resolved_at":"2026-10-21T19:05:49.083+00:00","components":["web"],"updates":[{"status":"investigating","at":"2026-10-21T16:53:59.195+00:00","body":{"de":"Das Umstellen einer Domain auf unsere Nameserver ns1.citexnode.de und ns2.citexnode.de schlägt derzeit fehl: Die Registrierungsstelle lehnt die Änderung ab, weil die Nameserver für sie nicht erreichbar sind. Wir untersuchen die Ursache. Domains mit anderen Nameservern sind nicht betroffen.","en":"Switching a domain to our nameservers ns1.citexnode.de and ns2.citexnode.de currently fails: the registry rejects the change because the nameservers are unreachable for it. We are investigating the cause. Domains using other nameservers are not affected."}},{"status":"identified","at":"2026-10-21T16:55:43.890466+00:00","body":{"de":"Ursache gefunden: Die Adressen ns1.citexnode.de und ns2.citexnode.de zeigen derzeit nicht auf unsere Nameserver, und der zweite Nameserver lief noch auf einem inzwischen abgeschalteten Server. Domains, die bereits auf ns1/ns2.citexnode.de eingestellt sind, werden dadurch nicht aufgelöst. Wir richten einen neuen zweiten Nameserver bei einem anderen Anbieter ein, korrigieren die Adressen und spielen die Zonen der betroffenen Domains ein.","en":"Cause identified: the addresses ns1.citexnode.de and ns2.citexnode.de currently do not point to our nameservers, and the second nameserver was still running on a server that has since been shut down. Domains already set to ns1/ns2.citexnode.de therefore do not resolve. We are setting up a new second nameserver at a different provider, correcting the addresses and loading the zones of the affected domains."}},{"status":"monitoring","at":"2026-10-21T17:11:55.14937+00:00","body":{"de":"Behoben: ns1.citexnode.de und ns2.citexnode.de antworten wieder. ns2 läuft jetzt bei einem anderen Anbieter als ns1, damit ein Ausfall eines Rechenzentrums nicht beide trifft. Die betroffene Domain wird wieder aufgelöst. Außerdem legt das Dashboard beim Umstellen auf unsere Nameserver die Zone jetzt vorab an und übernimmt die bisherigen DNS-Einträge, sodass die Registrierungsstelle die Änderung annimmt und nichts verloren geht. Wir beobachten die Lage weiter.","en":"Fixed: ns1.citexnode.de and ns2.citexnode.de are answering again. ns2 now runs at a different provider than ns1, so a single data center outage cannot take down both. The affected domain resolves again. In addition, when switching a domain to our nameservers, the dashboard now creates the zone beforehand and carries over the existing DNS records, so the registry accepts the change and nothing is lost. We keep monitoring the situation."}},{"status":"resolved","at":"2026-10-21T19:05:49.235564+00:00","body":{"de":"Abgeschlossen: ns1.citexnode.de und ns2.citexnode.de laufen seit fast zwei Stunden stabil und werden jetzt zusätzlich auf dieser Statusseite überwacht. Domains lassen sich wieder auf unsere Nameserver umstellen.","en":"Resolved: ns1.citexnode.de and ns2.citexnode.de have been running stably for almost two hours and are now also monitored on this status page. Domains can be switched to our nameservers again."}}]},{"id":"a7c2985c-320d-4a87-969a-b188c712ba13","title":{"de":"GitHub-Störung: Verzögerte Deploys aus GitHub-Repositories","en":"GitHub disruption: delayed deploys from GitHub repositories"},"impact":"degraded","status":"resolved","started_at":"2026-10-21T14:52:00+00:00","resolved_at":"2026-10-21T18:01:16.969+00:00","components":["deploy-builds"],"updates":[{"status":"investigating","at":"2026-10-21T14:52:00+00:00","body":{"de":"GitHub meldet seit 16:52 Uhr eine Störung: Webhooks, Pull Requests und GitHub Actions laufen verzögert (https://www.githubstatus.com). Dadurch können automatische Deploys nach einem Push in ein GitHub-Repository verspätet starten. Unsere eigene Build-Infrastruktur läuft normal; Projekte aus anderen Git-Hostern sind nicht betroffen, und ein manuell gestarteter Deploy im Dashboard funktioniert weiterhin.","en":"Since 14:52 UTC GitHub has been reporting a disruption: webhooks, pull requests and GitHub Actions are delayed (https://www.githubstatus.com). As a result, automatic deploys after a push to a GitHub repository may start late. Our own build infrastructure is running normally; projects from other Git hosts are not affected, and a deploy started manually from the dashboard still works."}},{"status":"identified","at":"2026-10-21T15:00:42.649861+00:00","body":{"de":"Die Ursache liegt bei GitHub: Deren Webhook-Zustellung ist verzögert, deshalb kommen Push-Benachrichtigungen bei uns verspätet an. Auf unserer Seite ist nichts zu tun; sobald GitHub die Zustellung nachholt, starten die ausstehenden Deploys automatisch. Wer nicht warten möchte, kann den Deploy im Dashboard manuell starten. Wir beobachten die Lage bei GitHub weiter.","en":"The cause is on GitHub's side: their webhook delivery is delayed, so push notifications reach us late. Nothing needs to be done on our side; once GitHub catches up on deliveries, pending deploys start automatically. If you don't want to wait, you can start the deploy manually from the dashboard. We keep monitoring the situation at GitHub."}},{"status":"identified","at":"2026-10-21T15:17:37.44127+00:00","body":{"de":"GitHub meldet inzwischen auch Verzögerungen bei GitHub Actions; die Störung ist dort weiterhin in Untersuchung. Für Deploys gilt unverändert: Automatische Deploys nach einem Push können später starten, ein manueller Deploy im Dashboard funktioniert. Die Störung kann außerdem die Veröffentlichung der gepatchten PHP-Laufzeitumgebungen verzögern, auf die wir für den separaten PHP-Sicherheitsvorfall warten.","en":"GitHub is now also reporting delays for GitHub Actions; the disruption is still under investigation on their side. For deploys nothing has changed: automatic deploys after a push may start late, while a manual deploy from the dashboard works. The disruption may also delay the release of the patched PHP runtimes we are waiting for in the separate PHP security incident."}},{"status":"identified","at":"2026-10-21T15:28:01.752696+00:00","body":{"de":"Neu auf dieser Statusseite: Unter „Drittanbieter“ zeigen die Komponenten „GitHub“ und „Cloudflare-Proxy“ ab sofort live den Stand der jeweiligen Anbieter, soweit er für CitexNode Deploy relevant ist. GitHub meldet derzeit weiterhin Verzögerungen bei Webhooks; automatische Deploys aus GitHub-Repositories können daher später starten, ein manueller Deploy im Dashboard funktioniert.","en":"New on this status page: under \"Third-party services\", the components \"GitHub\" and \"Cloudflare-Proxy\" now show the live state of these providers as far as it matters for CitexNode Deploy. GitHub is still reporting webhook delays; automatic deploys from GitHub repositories may therefore start late, while a manual deploy from the dashboard works."}},{"status":"identified","at":"2026-10-21T15:39:35.467809+00:00","body":{"de":"GitHub hat die Ursache genannt: Eine erhöhte Last auf der internen Event-Plattform verzögert Webhooks, Pull Requests und Actions. GitHub verlagert Datenverkehr und erweitert die Kapazität; die Verzögerungen halten an, bis das greift. Für Deploys gilt unverändert: Automatische Deploys nach einem Push in ein GitHub-Repository können später starten, ein manueller Deploy im Dashboard funktioniert.","en":"GitHub has named the cause: increased load on its internal event platform is delaying webhooks, pull requests and Actions. GitHub is shifting traffic and adding capacity; the delays continue until this takes effect. For deploys nothing has changed: automatic deploys after a push to a GitHub repository may start late, while a manual deploy from the dashboard works."}},{"status":"identified","at":"2026-10-21T16:08:31.409158+00:00","body":{"de":"GitHub hat die Störung höher eingestuft, meldet aber erste Anzeichen der Erholung seiner Event-Plattform. Webhooks und Pull Requests sind weiterhin verzögert. Für Deploys gilt unverändert: Automatische Deploys nach einem Push in ein GitHub-Repository können später starten, ein manueller Deploy im Dashboard funktioniert. Den aktuellen Stand von GitHub zeigt auch die Komponente „GitHub“ unter „Drittanbieter“.","en":"GitHub has raised the severity of the disruption but reports first signs of recovery of its event platform. Webhooks and pull requests are still delayed. For deploys nothing has changed: automatic deploys after a push to a GitHub repository may start late, while a manual deploy from the dashboard works. The component \"GitHub\" under \"Third-party services\" also shows GitHub's current state."}},{"status":"monitoring","at":"2026-10-21T16:59:12.969588+00:00","body":{"de":"GitHub meldet Webhooks, Pull Requests und Actions wieder als normal. Liegengebliebene Webhooks werden nachgeliefert, verzögerte Deploys starten dadurch automatisch. Wir beobachten die Lage noch eine Weile. Falls ein Deploy nach einem Push nicht gestartet ist, kann er im Dashboard manuell ausgelöst werden.","en":"GitHub reports webhooks, pull requests and Actions as normal again. Delayed webhooks are being delivered, so pending deploys start automatically. We will keep monitoring for a while. If a deploy did not start after a push, it can be triggered manually from the dashboard."}},{"status":"resolved","at":"2026-10-21T18:01:17.163492+00:00","body":{"de":"Behoben: GitHub läuft seit über einer Stunde wieder normal, Webhooks werden ohne Verzögerung zugestellt und Deploys aus GitHub-Repositories starten wie gewohnt. Falls ein Push aus dem Störungszeitraum keinen Deploy ausgelöst hat, kann er im Dashboard manuell gestartet werden.","en":"Resolved: GitHub has been running normally again for over an hour, webhooks are delivered without delay and deploys from GitHub repositories start as usual. If a push during the disruption did not trigger a deploy, it can be started manually from the dashboard."}}]},{"id":"9b946274-e1f2-4bde-9cfc-1b7b61cc776c","title":{"de":"Kritische PHP-Sicherheitslücke: PHP-Projekte vorübergehend pausiert","en":"Critical PHP vulnerability: PHP projects temporarily paused"},"impact":"partial_outage","status":"resolved","started_at":"2026-10-21T12:26:26.37+00:00","resolved_at":"2026-10-21T19:05:47.21+00:00","components":["deploy"],"updates":[{"status":"investigating","at":"2026-10-21T12:26:26.37+00:00","body":{"de":"Für PHP wurden heute kritische Sicherheitslücken bekannt (CVE-2026-109618, CVE-2026-109619), über die Angreifer Code auf dem Server ausführen können. Es gibt bereits öffentliche Exploits. Wir prüfen, welche Kundenseiten in CitexNode Deploy PHP verwenden. Andere Projekte (Node.js, Python, statische Seiten) sind nicht betroffen.","en":"Critical PHP vulnerabilities were disclosed today (CVE-2026-109618, CVE-2026-109619) that let attackers run code on the server. Public exploits exist. We are checking which customer sites on CitexNode Deploy use PHP. Other projects (Node.js, Python, static sites) are not affected."}},{"status":"identified","at":"2026-10-21T12:27:14.730333+00:00","body":{"de":"Betroffen ist ein PHP-Projekt in CitexNode Deploy. Wir haben es zum Schutz vorübergehend pausiert; es zeigt bis zum Update die Seite „Projekt pausiert“, Daten und Volumes bleiben unverändert. Die PHP-Entwickler veröffentlichen die Korrekturen heute bis 16:00 Uhr. Danach bauen wir das Projekt mit der gepatchten PHP-Version neu und schalten es wieder frei.","en":"One PHP project on CitexNode Deploy is affected. We have paused it as a precaution; until the update it shows the \"Project paused\" page, and its data and volumes are unchanged. The PHP developers release the fixes today by 16:00 CEST. We will then rebuild the project with the patched PHP version and bring it back online."}},{"status":"identified","at":"2026-10-21T13:37:20.784596+00:00","body":{"de":"Die PHP-Entwickler haben die Korrekturen veröffentlicht (PHP 8.5.12, 8.4.27 und 8.2.35). Unsere Build-Umgebung nutzt die offiziellen Container-Images, die gerade daraus gebaut werden. Sobald die gepatchte Version verfügbar ist, bauen wir das betroffene Projekt neu, prüfen die PHP-Version und schalten es wieder frei.","en":"The PHP developers have released the fixes (PHP 8.5.12, 8.4.27 and 8.2.35). Our build environment uses the official container images, which are being built from them right now. As soon as the patched version is available, we will rebuild the affected project, verify the PHP version and bring it back online."}},{"status":"identified","at":"2026-10-21T13:40:38.595574+00:00","body":{"de":"PHP hat die gepatchte Version 8.5.12 veröffentlicht. Wir können sie aber noch nicht einspielen: PHP-Projekte laufen bei uns auf FrankenPHP, und dessen Laufzeitumgebung mit PHP 8.5.12 ist noch nicht erschienen. Sobald sie verfügbar ist, bauen wir das betroffene Projekt automatisch neu, prüfen die PHP-Version und schalten es wieder frei. Bis dahin bleibt es zum Schutz pausiert; Daten und Dateien sind davon nicht betroffen.","en":"PHP has released the patched version 8.5.12. We cannot roll it out yet, though: PHP projects on our platform run on FrankenPHP, and its runtime with PHP 8.5.12 has not been published yet. As soon as it is available, we will rebuild the affected project, verify the PHP version and bring it back online. Until then it stays paused as a precaution; its data and files are not affected."}},{"status":"identified","at":"2026-10-21T13:45:32.411682+00:00","body":{"de":"Unser Looking Glass (lg.citexnode.com) ist auf die gepatchte Version PHP 8.4.27 aktualisiert und wieder erreichbar. Für das pausierte PHP-Projekt in CitexNode Deploy warten wir weiter auf die FrankenPHP-Laufzeitumgebung mit PHP 8.5.12; sobald sie erscheint, bauen wir es neu und schalten es wieder frei.","en":"Our Looking Glass (lg.citexnode.com) has been updated to the patched PHP 8.4.27 and is reachable again. For the paused PHP project on CitexNode Deploy we are still waiting for the FrankenPHP runtime with PHP 8.5.12; as soon as it is published, we will rebuild the project and bring it back online."}},{"status":"identified","at":"2026-10-21T13:49:05.924027+00:00","body":{"de":"Auch unser Mailsystem nutzt PHP: Webmail und die Mail-Verwaltung sind deshalb vorübergehend gesperrt. Der E-Mail-Versand und -Empfang (SMTP/IMAP) läuft normal weiter. Hier warten wir auf das Update des Mailserver-Herstellers mit PHP 8.2.35. Diese Meldung bleibt offen, bis sowohl das Deploy-Projekt als auch das Mailsystem gepatcht sind – je nachdem, welches Update zuerst erscheint, schalten wir die Teile einzeln wieder frei.","en":"Our mail system uses PHP as well: webmail and the mail administration are therefore temporarily locked. Sending and receiving email (SMTP/IMAP) keeps working normally. Here we are waiting for the mail server vendor's update with PHP 8.2.35. This notice stays open until both the Deploy project and the mail system are patched – whichever update arrives first, we bring the parts back one by one."}},{"status":"identified","at":"2026-10-21T14:24:25.696312+00:00","body":{"de":"Zwischenstand: Die Aktualisierung der offiziellen PHP-Container-Images auf die gepatchten Versionen (8.5.12, 8.4.27, 8.2.35) ist eingereicht, wartet aber noch auf die Freigabe durch die Docker-Maintainer. Erst danach werden die Images gebaut, und anschließend veröffentlicht FrankenPHP seine Laufzeitumgebung mit PHP 8.5.12. Wir prüfen laufend, ob die neuen Images da sind, und spielen das Update sofort ein. Das betroffene Deploy-Projekt bleibt bis dahin pausiert; Webmail und die Mail-Verwaltung bleiben gesperrt, E-Mail-Versand und -Empfang laufen normal.","en":"Progress update: the update of the official PHP container images to the patched versions (8.5.12, 8.4.27, 8.2.35) has been submitted but is still waiting for approval by the Docker maintainers. Only then will the images be built, after which FrankenPHP publishes its runtime with PHP 8.5.12. We are continuously checking for the new images and will roll out the update right away. The affected Deploy project stays paused until then; webmail and the mail administration remain locked, while sending and receiving email works normally."}},{"status":"identified","at":"2026-10-21T14:25:54.232744+00:00","body":{"de":"Nächster Schritt erledigt: Die Docker-Maintainer haben die gepatchten PHP-Versionen (8.5.12, 8.4.27, 8.3.36, 8.2.35) freigegeben. Jetzt werden die offiziellen Container-Images veröffentlicht und gebaut; danach folgt FrankenPHP mit PHP 8.5.12. Erfahrungsgemäß dauert das noch einige Zeit. Sobald die Images verfügbar sind, bauen wir das pausierte Deploy-Projekt neu, prüfen die PHP-Version und schalten es wieder frei. Webmail und die Mail-Verwaltung bleiben bis zum Update des Mailservers gesperrt; E-Mail-Versand und -Empfang laufen normal.","en":"Next step done: the Docker maintainers have approved the patched PHP versions (8.5.12, 8.4.27, 8.3.36, 8.2.35). The official container images are now being published and built; FrankenPHP with PHP 8.5.12 follows after that. This usually still takes some time. As soon as the images are available, we will rebuild the paused Deploy project, verify the PHP version and bring it back online. Webmail and the mail administration stay locked until the mail server update; sending and receiving email works normally."}},{"status":"identified","at":"2026-10-21T14:33:05.186451+00:00","body":{"de":"Letzter Schritt vor den neuen Images läuft: Die Veröffentlichung der gepatchten offiziellen PHP-Container-Images (8.5.12, 8.4.27, 8.3.36, 8.2.35) ist eingereicht und wartet auf die finale Freigabe. Danach werden die Images gebaut; FrankenPHP (für das pausierte Deploy-Projekt) und der Hersteller unseres Mailservers haben ihre Updates vorbereitet und veröffentlichen sie unmittelbar im Anschluss. Wir spielen beide Updates ein, sobald sie verfügbar sind. Bis dahin bleiben das Deploy-Projekt pausiert sowie Webmail und Mail-Verwaltung gesperrt; E-Mail-Versand und -Empfang laufen normal.","en":"Last step before the new images is underway: publishing the patched official PHP container images (8.5.12, 8.4.27, 8.3.36, 8.2.35) has been submitted and is waiting for final approval. The images will be built after that; FrankenPHP (for the paused Deploy project) and our mail server vendor have prepared their updates and will publish them right afterwards. We will roll out both updates as soon as they are available. Until then the Deploy project stays paused and webmail and the mail administration remain locked; sending and receiving email works normally."}},{"status":"identified","at":"2026-10-21T14:55:26.518593+00:00","body":{"de":"Die automatischen Prüfungen für die gepatchten offiziellen PHP-Images sind nahezu abgeschlossen und bisher alle erfolgreich; es fehlt nur noch die Freigabe durch die Docker-Maintainer. Danach dauert der Bau der Images erfahrungsgemäß noch etwa 30–60 Minuten, anschließend folgen FrankenPHP und unser Mailserver. Wir spielen die Updates ein, sobald sie verfügbar sind. Das Deploy-Projekt bleibt bis dahin pausiert, Webmail und Mail-Verwaltung gesperrt; E-Mail-Versand und -Empfang laufen normal.","en":"The automated checks for the patched official PHP images are almost complete and have all passed so far; only the approval by the Docker maintainers is still pending. After that, building the images usually takes another 30–60 minutes, followed by FrankenPHP and our mail server. We will roll out the updates as soon as they are available. Until then the Deploy project stays paused and webmail and the mail administration remain locked; sending and receiving email works normally."}},{"status":"identified","at":"2026-10-21T15:12:36.10907+00:00","body":{"de":"Die gepatchten offiziellen PHP-Images sind jetzt von den Docker-Maintainern freigegeben. Als Nächstes werden sie zusammengeführt und gebaut – das dauert erfahrungsgemäß 30–60 Minuten, wegen der aktuellen GitHub-Störung möglicherweise etwas länger. Danach folgen FrankenPHP und unser Mailserver; wir spielen beide Updates direkt ein. Die betroffene Website zeigt bis dahin einen Hinweis auf die Sicherheitswartung; Webmail und Mail-Verwaltung bleiben gesperrt, E-Mail-Versand und -Empfang laufen normal.","en":"The patched official PHP images have now been approved by the Docker maintainers. Next they will be merged and built – this usually takes 30–60 minutes, possibly a little longer due to the current GitHub disruption. FrankenPHP and our mail server follow after that; we will roll out both updates right away. Until then the affected website shows a security maintenance notice; webmail and the mail administration remain locked, while sending and receiving email works normally."}},{"status":"identified","at":"2026-10-21T15:27:58.663206+00:00","body":{"de":"Die gepatchten offiziellen PHP-Images (8.5.12, 8.4.27, 8.3.36, 8.2.35) sind endgültig freigegeben und werden jetzt gebaut. Sobald sie veröffentlicht sind, ziehen FrankenPHP und unser Mailserver nach; wir spielen die Updates direkt ein und melden uns hier. Die betroffene Website zeigt bis dahin einen Hinweis auf die Sicherheitswartung; Webmail und Mail-Verwaltung bleiben gesperrt, E-Mail-Versand und -Empfang laufen normal.","en":"The patched official PHP images (8.5.12, 8.4.27, 8.3.36, 8.2.35) have been finally approved and are being built now. Once they are published, FrankenPHP and our mail server will follow; we will roll out the updates right away and post here. Until then the affected website shows a security maintenance notice; webmail and the mail administration remain locked, while sending and receiving email works normally."}},{"status":"identified","at":"2026-10-21T15:33:26.07356+00:00","body":{"de":"FrankenPHP baut gerade seine eigenständigen Programmpakete mit der gepatchten PHP-Version. Für CitexNode Deploy brauchen wir das Container-Image von FrankenPHP; es folgt, sobald die offiziellen PHP-Images veröffentlicht sind, deren Bau gerade läuft. Wir spielen das Update direkt danach ein. Bis dahin bleibt die betroffene Website im Wartungsmodus; Webmail und Mail-Verwaltung bleiben gesperrt, E-Mail-Versand und -Empfang laufen normal.","en":"FrankenPHP is currently building its standalone binaries with the patched PHP version. For CitexNode Deploy we need FrankenPHP's container image; it follows as soon as the official PHP images are published, which are being built right now. We will roll out the update right after that. Until then the affected website stays in maintenance mode; webmail and the mail administration remain locked, while sending and receiving email works normally."}},{"status":"identified","at":"2026-10-21T15:43:07.525359+00:00","body":{"de":"Die offiziellen PHP-Images mit der gepatchten Version 8.5.12 werden gerade veröffentlicht. Als Nächstes erstellt FrankenPHP darauf seine neue Laufzeitumgebung; wegen der aktuellen GitHub-Störung kann das etwas länger dauern. Sobald sie verfügbar ist, bauen wir das betroffene Projekt neu, prüfen die PHP-Version und schalten es wieder frei. Webmail und Mail-Verwaltung bleiben bis zum Update des Mailservers gesperrt; E-Mail-Versand und -Empfang laufen normal.","en":"The official PHP images with the patched version 8.5.12 are being published right now. Next, FrankenPHP builds its new runtime on top of them; this may take a little longer due to the current GitHub disruption. As soon as it is available, we will rebuild the affected project, verify the PHP version and bring it back online. Webmail and the mail administration remain locked until the mail server update; sending and receiving email works normally."}},{"status":"identified","at":"2026-10-21T15:53:44.155419+00:00","body":{"de":"Die offiziellen PHP-Images mit den gepatchten Versionen sind jetzt vollständig verfügbar. FrankenPHP (für das pausierte Deploy-Projekt) hat seine neue Version noch nicht veröffentlicht. Für unseren Mailserver gibt es bereits ein vorab gebautes Update, unsere Prüfung hat aber gezeigt, dass es noch die alte, verwundbare PHP-Version enthält – wir spielen es deshalb nicht ein und warten auf einen korrigierten Build. Wir prüfen bei jedem neuen Image die tatsächlich enthaltene PHP-Version, bevor wir etwas freischalten. Webmail und Mail-Verwaltung bleiben bis dahin gesperrt; E-Mail-Versand und -Empfang laufen normal.","en":"The official PHP images with the patched versions are now fully available. FrankenPHP (for the paused Deploy project) has not published its new version yet. A pre-built update for our mail server already exists, but our check showed that it still contains the old, vulnerable PHP version – so we are not rolling it out and are waiting for a corrected build. For every new image we verify the PHP version it actually contains before bringing anything back online. Webmail and the mail administration remain locked until then; sending and receiving email works normally."}},{"status":"identified","at":"2026-10-21T16:02:35.35103+00:00","body":{"de":"Zur Einordnung: Inzwischen sind Details aus dem PHP-Sicherheitsteam bekannt. Die Lücke CVE-2026-109618 lässt sich ohne Anmeldung ausnutzen, bevor die eigentliche Anwendung startet; betroffen sind auch PHP-FPM und FrankenPHP, und es gibt Berichte über erste Angriffe. Der häufig empfohlene Konfigurationsschalter (session.upload_progress) schützt nur gegen die zweite Lücke, nicht gegen diese. Deshalb haben wir die betroffenen Dienste vom Netz genommen, statt sie mit einer Notlösung weiterlaufen zu lassen, und schalten sie erst wieder frei, wenn die gepatchte PHP-Version nachweislich läuft. Den Stand der Updates melden wir hier.","en":"For context: details from the PHP security team are now known. CVE-2026-109618 can be exploited without authentication before the actual application starts; PHP-FPM and FrankenPHP are affected as well, and early attacks have been reported. The widely recommended configuration switch (session.upload_progress) only protects against the second vulnerability, not this one. That is why we took the affected services offline instead of keeping them running with a workaround, and we will only bring them back once the patched PHP version is verifiably running. We will post update progress here."}},{"status":"identified","at":"2026-10-21T16:06:34.348208+00:00","body":{"de":"Die neue FrankenPHP-Version verzögert sich noch etwas: Der PHP-Patch ändert das Verhalten bei Speicherüberschreitungen, und die FrankenPHP-Entwickler passen gerade ihre automatischen Tests daran an. Sobald diese Anpassung durch ist, folgt das Release mit den neuen Container-Images. Wir bauen das betroffene Projekt direkt danach neu, prüfen die PHP-Version und schalten es wieder frei. Webmail und Mail-Verwaltung bleiben bis zum Update des Mailservers gesperrt; E-Mail-Versand und -Empfang laufen normal.","en":"The new FrankenPHP version is taking a little longer: the PHP patch changes how memory limit overruns are handled, and the FrankenPHP developers are currently adapting their automated tests to it. Once that is done, the release with the new container images follows. We will rebuild the affected project right after that, verify the PHP version and bring it back online. Webmail and the mail administration remain locked until the mail server update; sending and receiving email works normally."}},{"status":"identified","at":"2026-10-21T17:47:27.846266+00:00","body":{"de":"Mailserver gepatcht: Das Sicherheitsupdate mit PHP 8.2.35 ist eingespielt und geprüft. Webmail und die Mail-Verwaltung sind wieder erreichbar; E-Mail-Versand und -Empfang laufen normal. Offen ist nur noch das pausierte PHP-Projekt in CitexNode Deploy: Wir warten weiter auf die FrankenPHP-Laufzeitumgebung mit PHP 8.5.12 und schalten es frei, sobald sie verfügbar und eingespielt ist.","en":"Mail server patched: the security update with PHP 8.2.35 has been rolled out and verified. Webmail and the mail administration are reachable again; sending and receiving email works normally. Only the paused PHP project on CitexNode Deploy remains: we are still waiting for the FrankenPHP runtime with PHP 8.5.12 and will bring it back once it is available and rolled out."}},{"status":"monitoring","at":"2026-10-21T18:00:49.348584+00:00","body":{"de":"Alle betroffenen Dienste sind gepatcht: Das pausierte PHP-Projekt in CitexNode Deploy wurde mit der gepatchten FrankenPHP-Laufzeitumgebung (PHP 8.5.12) neu gebaut, die Version im laufenden Container geprüft und die Website wieder freigeschaltet. Der Mailserver läuft bereits seit dem vorherigen Update mit PHP 8.2.35, der Looking Glass mit PHP 8.4.27. Wir beobachten die Dienste noch eine Weile.","en":"All affected services are patched: the paused PHP project on CitexNode Deploy has been rebuilt with the patched FrankenPHP runtime (PHP 8.5.12), the version in the running container verified and the website brought back online. The mail server has been running PHP 8.2.35 since the previous update, the Looking Glass PHP 8.4.27. We will keep monitoring the services for a while."}},{"status":"resolved","at":"2026-10-21T19:05:47.349402+00:00","body":{"de":"Abgeschlossen: Alle betroffenen Dienste laufen seit über einer Stunde stabil mit den gepatchten PHP-Versionen – das Deploy-Projekt mit PHP 8.5.12, der Mailserver mit PHP 8.2.35 und der Looking Glass mit PHP 8.4.27. Webmail und Mail-Verwaltung sind wieder erreichbar. Danke für eure Geduld.","en":"Resolved: all affected services have been running stably for over an hour on the patched PHP versions – the Deploy project on PHP 8.5.12, the mail server on PHP 8.2.35 and the Looking Glass on PHP 8.4.27. Webmail and the mail administration are reachable again. Thank you for your patience."}}]},{"id":"a19d3cb8-8f02-45f1-ad20-fa667b25aa19","title":{"de":"Node 3 · Frankfurt am Main nicht erreichbar","en":"Node 3 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T12:23:37.286143+00:00","resolved_at":"2026-10-21T12:24:41.236526+00:00","components":["node3"],"updates":[{"status":"investigating","at":"2026-10-21T12:23:37.286143+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T12:24:41.236526+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"ede8adbf-4204-4c89-833a-a7bc00c2c533","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T11:08:39.386881+00:00","resolved_at":"2026-10-21T11:09:49.687745+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-21T11:08:39.386881+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T11:09:49.687745+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"b728b0b8-3c96-44ef-950e-765452abe5ec","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T10:17:38.115063+00:00","resolved_at":"2026-10-21T10:18:48.365066+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-21T10:17:38.115063+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T10:18:48.365066+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"b801d378-3651-43ee-9703-09e854a00eb1","title":{"de":"API nicht erreichbar","en":"API is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T10:15:38.432077+00:00","resolved_at":"2026-10-21T10:16:38.291597+00:00","components":["api"],"updates":[{"status":"investigating","at":"2026-10-21T10:15:38.432077+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T10:16:38.291597+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"dd5bf2d4-2af6-42ab-a550-384c9115debd","title":{"de":"Reseller-Portal nicht erreichbar","en":"Reseller-Portal is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T10:15:36.495372+00:00","resolved_at":"2026-10-21T10:16:38.243529+00:00","components":["reseller-portal"],"updates":[{"status":"investigating","at":"2026-10-21T10:15:36.495372+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T10:16:38.243529+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"e8b8776f-2daa-4ad3-85d6-dbcb9a3a2bbe","title":{"de":"Reseller-Portal nicht erreichbar","en":"Reseller-Portal is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T08:39:18.44409+00:00","resolved_at":"2026-10-21T08:40:15.954146+00:00","components":["reseller-portal"],"updates":[{"status":"investigating","at":"2026-10-21T08:39:18.44409+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T08:40:15.954146+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"67996a0b-a3ab-477a-9e78-e366cdcf9fb4","title":{"de":"Reseller-API nicht erreichbar","en":"Reseller-API is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T08:39:16.447335+00:00","resolved_at":"2026-10-21T08:40:15.611074+00:00","components":["reseller-api"],"updates":[{"status":"investigating","at":"2026-10-21T08:39:16.447335+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T08:40:15.611074+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"6fd10fa3-d4b5-4f7d-962f-dc48dfc24b42","title":{"de":"Datenbanken (MariaDB) nicht erreichbar","en":"Datenbanken (MariaDB) is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T08:30:35.828317+00:00","resolved_at":"2026-10-21T08:31:45.923078+00:00","components":["deploy-db"],"updates":[{"status":"investigating","at":"2026-10-21T08:30:35.828317+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T08:31:45.923078+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"9f2401f8-0125-47c2-99cd-d4e24ea9e5c0","title":{"de":"Website und Dashboard nicht erreichbar","en":"Website und Dashboard is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T07:48:38.390107+00:00","resolved_at":"2026-10-21T07:49:34.80332+00:00","components":["web"],"updates":[{"status":"investigating","at":"2026-10-21T07:48:38.390107+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T07:49:34.80332+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"ac4b59e0-e701-4aa2-bb36-9592c84e3725","title":{"de":"Kundenseiten nicht erreichbar","en":"Kundenseiten is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T07:48:34.394639+00:00","resolved_at":"2026-10-21T07:49:34.696092+00:00","components":["deploy"],"updates":[{"status":"investigating","at":"2026-10-21T07:48:34.394639+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T07:49:34.696092+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"fdbc6661-3570-4944-ac1e-f14540953962","title":{"de":"Kundenseiten nicht erreichbar","en":"Kundenseiten is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-21T00:22:25.961384+00:00","resolved_at":"2026-10-21T00:23:27.012263+00:00","components":["deploy"],"updates":[{"status":"investigating","at":"2026-10-21T00:22:25.961384+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-21T00:23:27.012263+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"361998fe-029f-44c0-9b4c-3ae54d6e352b","title":{"de":"Reseller-Portal nicht erreichbar","en":"Reseller-Portal is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-20T19:31:22.795365+00:00","resolved_at":"2026-10-20T19:32:33.461192+00:00","components":["reseller-portal"],"updates":[{"status":"investigating","at":"2026-10-20T19:31:22.795365+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-20T19:32:33.461192+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"33f58f42-31ef-463a-941d-19c98942acb9","title":{"de":"Deploy nicht erreichbar","en":"Deploy is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-20T00:42:47.584046+00:00","resolved_at":"2026-10-20T00:46:06.55767+00:00","components":["deploy"],"updates":[{"status":"investigating","at":"2026-10-20T00:42:47.584046+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-20T00:46:06.55767+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"4229a7a0-0a8f-4bad-8363-d9b00388935a","title":{"de":"Node 2 · Frankfurt am Main nicht erreichbar","en":"Node 2 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-20T00:05:33.598579+00:00","resolved_at":"2026-10-20T00:06:16.63713+00:00","components":["node2"],"updates":[{"status":"investigating","at":"2026-10-20T00:05:33.598579+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-20T00:06:16.63713+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"813b4414-780a-44f4-accf-2bc374c68720","title":{"de":"Node 4 · Frankfurt am Main nicht erreichbar","en":"Node 4 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-20T00:05:32.361009+00:00","resolved_at":"2026-10-20T00:06:16.696316+00:00","components":["node4"],"updates":[{"status":"investigating","at":"2026-10-20T00:05:32.361009+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-20T00:06:16.696316+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"b170df7e-ece2-454a-98e4-063b6c2a6e48","title":{"de":"Node 3 · Frankfurt am Main nicht erreichbar","en":"Node 3 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-20T00:05:31.912542+00:00","resolved_at":"2026-10-20T00:06:16.685041+00:00","components":["node3"],"updates":[{"status":"investigating","at":"2026-10-20T00:05:31.912542+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-20T00:06:16.685041+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"08839f90-dd1e-4331-9918-6150fc889d91","title":{"de":"Node 5 · Frankfurt am Main nicht erreichbar","en":"Node 5 · Frankfurt am Main is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-20T00:05:27.994317+00:00","resolved_at":"2026-10-20T00:06:16.590359+00:00","components":["node5"],"updates":[{"status":"investigating","at":"2026-10-20T00:05:27.994317+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-20T00:06:16.590359+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"402e1af9-8eb4-4994-b2f5-808a9ffde4a5","title":{"de":"Reseller-API nicht erreichbar","en":"Reseller-API is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-19T18:46:11.623097+00:00","resolved_at":"2026-10-19T18:47:25.823451+00:00","components":["reseller-api"],"updates":[{"status":"investigating","at":"2026-10-19T18:46:11.623097+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-19T18:47:25.823451+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"dfbd0500-7923-4baa-a960-ae6fa37ababd","title":{"de":"Reseller-API nicht erreichbar","en":"Reseller-API is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-19T16:43:36.794908+00:00","resolved_at":"2026-10-19T16:44:52.711639+00:00","components":["reseller-api"],"updates":[{"status":"investigating","at":"2026-10-19T16:43:36.794908+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-19T16:44:52.711639+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"fb99d23f-6bea-4986-9c4b-0b57645627e1","title":{"de":"Reseller-Portal nicht erreichbar","en":"Reseller-Portal is unavailable"},"impact":"major_outage","status":"resolved","started_at":"2026-10-19T16:42:37.276827+00:00","resolved_at":"2026-10-19T16:43:33.208217+00:00","components":["reseller-portal"],"updates":[{"status":"investigating","at":"2026-10-19T16:42:37.276827+00:00","body":{"de":"Ein automatischer Verfügbarkeitscheck ist fehlgeschlagen. Wir untersuchen die Störung.","en":"An automated availability check failed. We are investigating the incident."}},{"status":"resolved","at":"2026-10-19T16:43:33.208217+00:00","body":{"de":"Der automatische Check ist wieder erfolgreich. Die Komponente ist wieder erreichbar.","en":"The automated check is passing again. The component is reachable."}}]},{"id":"404c0925-b8eb-417b-9ca9-35e480ac34f3","title":{"de":"Deploy-Builds schlagen fehl (BuildKit auf web-01 ohne Speicherplatz)","en":"Deploy builds failing (BuildKit on web-01 out of disk space)"},"impact":"degraded","status":"resolved","started_at":"2026-10-19T08:20:00+00:00","resolved_at":"2026-10-19T11:16:20.666+00:00","components":["deploy"],"updates":[{"status":"identified","at":"2026-10-19T08:20:00+00:00","body":{"de":"Builds in CitexNode Deploy, die dem Build-Host web-01 zugeteilt werden, brechen mit „no space left on device“ ab. Ursache: Der BuildKit-Cache auf web-01 ist über seine Grenze hinaus gewachsen, weil die Aufräumregel nur Einträge älter als 7 Tage entfernt hat. Laufende Websites und Apps sind nicht betroffen, nur neue Builds. Wir leeren den Cache und setzen eine Größengrenze auf allen Build-Hosts.","en":"Builds in CitexNode Deploy assigned to the build host web-01 fail with \"no space left on device\". Cause: the BuildKit cache on web-01 grew past its limit because the clean-up rule only removed entries older than 7 days. Running websites and apps are not affected, only new builds. We are clearing the cache and enforcing a size limit on all build hosts."}},{"status":"monitoring","at":"2026-10-19T10:37:45.480789+00:00","body":{"de":"Der BuildKit-Cache wurde auf allen drei Build-Hosts geleert, und die Aufräumregel begrenzt den Cache jetzt zusätzlich auf 8 GB je Host, unabhängig vom Alter der Einträge. web-01 hat wieder 15 GB frei. Fehlgeschlagene Builds können erneut gestartet werden; wir beobachten die nächsten Builds.","en":"The BuildKit cache has been cleared on all three build hosts, and the clean-up rule now also caps the cache at 8 GB per host regardless of entry age. web-01 has 15 GB free again. Failed builds can be restarted; we are watching the next builds."}},{"status":"resolved","at":"2026-10-19T11:16:20.843552+00:00","body":{"de":"Behoben. Der BuildKit-Cache ist auf allen Build-Hosts auf 8 GB begrenzt, web-04 ist als vierter Build-Host hinzugekommen, und deployd 0.4.3 wartet beim Ausrollen bis zu 5 Minuten auf das Image-Pull der Knoten statt 90 Sekunden. Ein Folgefehler, bei dem nach einem gescheiterten Rollout jeder weitere Deploy desselben Projekts sofort zurückgerollt wurde, ist ebenfalls beseitigt. Neue Builds laufen wieder durch; fehlgeschlagene Builds bitte einmal neu anstoßen.","en":"Resolved. The BuildKit cache is capped at 8 GB on every build host, web-04 has joined as a fourth build host, and deployd 0.4.3 now waits up to 5 minutes for nodes to pull the image during rollout instead of 90 seconds. A follow-up bug where every deploy of a project was rolled back immediately after one failed rollout is fixed as well. New builds complete again; please restart any failed builds once."}}]},{"id":"3eb8134f-ff5d-41c8-a07a-3e10b60a78ed","title":{"de":"Deploy: längere Ladezeiten bei Websites mit Datenbank","en":"Deploy: slower page loads for websites with a database"},"impact":"degraded","status":"resolved","started_at":"2026-10-18T17:13:58.096+00:00","resolved_at":"2026-10-18T18:56:19.254+00:00","components":["deploy"],"updates":[{"status":"identified","at":"2026-10-18T17:13:58.096+00:00","body":{"de":"Websites bei CitexNode Deploy, die eine Datenbank nutzen, laden teilweise deutlich langsamer. Ursache: Seit heute läuft ein zusätzlicher Server im Cluster, der weiter von den Datenbanken entfernt ist. Landet deine Website dort, dauert jede Datenbankabfrage länger.\n\nWir sorgen gerade dafür, dass Websites mit Datenbank nur noch auf den Servern direkt neben der Datenbank laufen. Du musst nichts tun.","en":"Websites on CitexNode Deploy that use a database are loading noticeably slower in some cases. Cause: since today an additional server runs in the cluster that sits further away from the databases. If your website lands there, every database query takes longer.\n\nWe are making sure websites with a database only run on the servers right next to the database. You don't need to do anything."}},{"status":"monitoring","at":"2026-10-18T17:16:26.254917+00:00","body":{"de":"Die Korrektur ist eingespielt: Websites mit Datenbank oder dauerhaftem Speicher laufen jetzt nur noch auf den Servern direkt neben der Datenbank. Betroffene Projekte wurden ohne Ausfall automatisch umgezogen. Wir beobachten die Ladezeiten.","en":"The fix is live: websites with a database or persistent storage now only run on the servers right next to the database. Affected projects were moved automatically without downtime. We are watching the load times."}},{"status":"monitoring","at":"2026-10-18T18:15:39.483581+00:00","body":{"de":"Zusätzlich verbessert: PHP-Websites liefern Bilder, Stylesheets und Skripte jetzt mit Cache-Angaben aus. Dein Browser lädt sie beim nächsten Seitenaufruf nicht erneut, und Seiten fühlen sich spürbar schneller an. Das gilt für jedes PHP-Projekt ab seinem nächsten Deploy. Die Ladezeiten sind wieder normal, wir beobachten weiter.","en":"Also improved: PHP websites now serve images, stylesheets and scripts with cache headers. Your browser no longer reloads them on the next page view, so pages feel noticeably faster. This applies to every PHP project from its next deploy. Load times are back to normal; we keep watching."}},{"status":"resolved","at":"2026-10-18T18:56:19.413665+00:00","body":{"de":"Behoben. Websites mit Datenbank oder dauerhaftem Speicher laufen nur noch auf den Servern neben der Datenbank, und PHP-Websites liefern Bilder, Stylesheets und Skripte mit Cache-Angaben aus. Die Ladezeiten sind seit dem Umzug wieder normal. Hast du eine PHP-Website, greift der Cache ab deinem nächsten Deploy. Ein Klick auf „Jetzt deployen“ reicht.","en":"Resolved. Websites with a database or persistent storage only run on the servers next to the database, and PHP websites serve images, stylesheets and scripts with cache headers. Load times have been normal since the move. If you run a PHP website, the cache applies from your next deploy; clicking \"Deploy now\" is enough."}}]},{"id":"6deac4b0-bd79-4537-9ef3-e4dd8774b71e","title":{"de":"Deploy: Cronjobs laufen teilweise nicht","en":"Deploy: some cron jobs are not running"},"impact":"degraded","status":"resolved","started_at":"2026-10-18T16:19:09.786+00:00","resolved_at":"2026-10-18T19:16:44.703+00:00","components":["deploy"],"updates":[{"status":"investigating","at":"2026-10-18T16:19:09.786+00:00","body":{"de":"Bei CitexNode Deploy schlagen gerade viele Cronjobs fehl oder laufen nicht an. Deine Websites selbst sind erreichbar, betroffen sind nur die zeitgesteuerten Aufrufe. Wir sehen uns das an.","en":"On CitexNode Deploy many cron jobs are currently failing or not starting. Your websites themselves are reachable; only the scheduled calls are affected. We are looking into it."}},{"status":"identified","at":"2026-10-18T16:21:06.191838+00:00","body":{"de":"Ursache gefunden: Die Cronjobs von Deploy laufen pünktlich und erreichen die Apps. Die betroffenen Aufrufe hat die jeweilige App selbst mit „403 Forbidden“ abgelehnt, weil ihr ein Zugangs-Token im Aufruf fehlte.\n\nWenn dein Cron-Skript einen Token erwartet, häng ihn an den Pfad an, z. B. `/cron/aufgabe.php?token=…`. Den Wert siehst du in deiner App. Im Dashboard wird er danach als `••••` angezeigt. Das Ergebnis jedes Laufs findest du unter Cronjobs → Verlauf.","en":"Cause found: Deploy's cron jobs run on time and reach the apps. The affected calls were rejected by the app itself with \"403 Forbidden\" because an access token was missing from the call.\n\nIf your cron script expects a token, add it to the path, e.g. `/cron/task.php?token=…`. You find the value in your app; the dashboard then shows it as `••••`. The result of every run is under Cron jobs → History."}},{"status":"monitoring","at":"2026-10-18T16:28:35.601586+00:00","body":{"de":"Bei den betroffenen Cronjobs ist der Token jetzt im Aufruf, und sie laufen wieder erfolgreich. Wir beobachten die nächsten Läufe.\n\nAls Nächstes bauen wir Befehls-Cronjobs: Deploy kann dann neben einem HTTP-Aufruf auch einen Befehl wie `php cron/aufgabe.php` ausführen, so wie du es von klassischem Hosting kennst.","en":"The affected cron jobs now include the token in their call and are running successfully again. We are watching the next runs.\n\nNext we are building command cron jobs: besides an HTTP call, Deploy will then be able to run a command such as `php cron/task.php`, as you know it from classic hosting."}},{"status":"monitoring","at":"2026-10-18T16:47:30.089685+00:00","body":{"de":"Neu: **Befehls-Cronjobs**. Unter Cronjobs → Neuer Cronjob wählst du bei „Art“ jetzt „Befehl“ und trägst z. B. `php cron/aufgabe.php` ein. Der Befehl läuft in einer Kopie deines Containers, mit denselben Umgebungsvariablen, Dateien und demselben Speicher, ganz ohne Token. Exit-Code und Ausgabe stehen im Verlauf.","en":"New: **command cron jobs**. Under Cron jobs → New cron job, choose \"Command\" as the type and enter e.g. `php cron/task.php`. The command runs in a copy of your container with the same environment variables, files and storage – no token needed. Exit code and output are shown in the history."}},{"status":"monitoring","at":"2026-10-18T18:15:38.734187+00:00","body":{"de":"Nachbesserung: Wenn ein Befehls-Cronjob genau während eines neuen Deploys startete, konnte er abgelehnt werden. Das ist behoben, Befehle laufen jetzt immer mit dem Stand der Instanz, neben der sie starten. Seitdem laufen alle Cronjobs fehlerfrei. Wir beobachten noch eine Weile.","en":"Follow-up fix: a command cron job that started exactly during a new deploy could be rejected. That is fixed; commands now always run with the version of the instance they start next to. Since then all cron jobs have run without errors. We are watching for a while longer."}},{"status":"monitoring","at":"2026-10-18T18:56:20.0528+00:00","body":{"de":"Seit der letzten Korrektur um 20:14 Uhr sind alle Cronjobs fehlerfrei gelaufen, HTTP-Aufrufe genauso wie Befehle. Wir beobachten noch bis etwa 21:15 Uhr und schließen den Vorfall dann.","en":"Since the last fix at 20:14 all cron jobs have run without errors, HTTP calls and commands alike. We are watching until about 21:15 and will then close the incident."}},{"status":"resolved","at":"2026-10-18T19:16:44.8385+00:00","body":{"de":"Behoben. Seit über einer Stunde laufen alle Cronjobs fehlerfrei. Neu ist die Art „Befehl“: Damit laufen Cron-Skripte wie bei klassischem Hosting direkt im Container (z. B. `php cron/aufgabe.php`), ohne Token im Aufruf. Exit-Code und Ausgabe siehst du unter Cronjobs → Verlauf.","en":"Resolved. All cron jobs have run without errors for over an hour. New is the \"Command\" type: cron scripts run directly in the container as on classic hosting (e.g. `php cron/task.php`), with no token in the call. Exit code and output are shown under Cron jobs → History."}}]},{"id":"cb9259ae-c6b8-42fa-bc33-18ea6151d560","title":{"de":"Aufladungen über Mollie werden nicht gutgeschrieben","en":"Top-ups via Mollie are not credited"},"impact":"partial_outage","status":"resolved","started_at":"2026-10-18T14:40:33.643+00:00","resolved_at":"2026-10-18T16:17:12.143+00:00","components":["api"],"updates":[{"status":"investigating","at":"2026-10-18T14:40:33.643+00:00","body":{"de":"Wer Guthaben über **Mollie** auflädt, bekommt nach der Zahlung die Meldung „Keine Zahlungsreferenz“, und das Guthaben erscheint nicht. Aufladungen per **Stripe** und **PayPal** funktionieren normal.\n\nWir sehen uns das an. Kein Geld geht verloren: Jede Zahlung ist bei Mollie gespeichert und wird nachgebucht. Hast du betroffen bezahlt, musst du nichts tun. Wenn du magst, schreib uns ein Ticket mit dem Zeitpunkt der Zahlung.","en":"If you top up via **Mollie**, the page shows \"No payment reference\" after paying and the balance does not appear. Top-ups via **Stripe** and **PayPal** work normally.\n\nWe are looking into it. No money is lost: every payment is recorded at Mollie and will be credited. If you are affected, you don't need to do anything. If you like, open a ticket with the time of the payment."}},{"status":"identified","at":"2026-10-18T14:50:11.348464+00:00","body":{"de":"Ursache gefunden: Nach der Zahlung schickt Mollie dich ohne Zahlungsnummer zurück, und die automatische Rückmeldung von Mollie an uns war nicht eingerichtet. Deshalb wussten wir nicht, welche Zahlung wir buchen sollen.\n\nDie Korrektur ist fertig. Bis sie eingespielt ist, nimm zum Aufladen bitte **Stripe** oder **PayPal**. Bereits bezahlte Mollie-Aufladungen buchen wir von Hand nach.","en":"Cause found: after paying, Mollie sends you back without a payment number, and Mollie's automatic notification to us was not set up. So we did not know which payment to book.\n\nThe fix is ready. Until it is live, please top up via **Stripe** or **PayPal**. Mollie top-ups that were already paid will be credited by hand."}},{"status":"monitoring","at":"2026-10-18T14:55:35.008324+00:00","body":{"de":"Die Korrektur ist eingespielt: Nach einer Zahlung über Mollie kommst du jetzt mit deiner Zahlungsnummer zurück, und Mollie meldet jede Zahlung zusätzlich direkt an uns. Das Guthaben wird damit auch gebucht, wenn du das Fenster vorher schließt. Wir beobachten die nächsten Mollie-Zahlungen. Ältere, nicht gebuchte Zahlungen buchen wir von Hand nach.","en":"The fix is live: after paying via Mollie you now come back with your payment number, and Mollie also reports every payment directly to us. So the balance is credited even if you close the window early. We are watching the next Mollie payments. Earlier payments that were not credited will be booked by hand."}},{"status":"resolved","at":"2026-10-18T16:17:12.313298+00:00","body":{"de":"Behoben. Wir haben den kompletten Ablauf mit einer Testzahlung bei Mollie geprüft: Die Zahlung wird gemeldet und richtig zugeordnet. Bezahlte Mollie-Aufladungen, die nicht gebucht wurden, gab es nicht. Es ist also bei niemandem Guthaben verloren gegangen.","en":"Resolved. We checked the whole flow with a test payment at Mollie: the payment is reported and assigned correctly. There were no paid Mollie top-ups that went uncredited, so nobody lost any balance."}}]},{"id":"a8b1732d-d3af-4484-8ffd-a3938d66da46","title":{"de":"Registrierung: unklare Fehlermeldung bei kurzen Passwörtern","en":"Sign-up: unclear error for short passwords"},"impact":"notice","status":"resolved","started_at":"2026-10-18T14:37:49.193+00:00","resolved_at":"2026-10-18T16:17:12.22+00:00","components":["web"],"updates":[{"status":"investigating","at":"2026-10-18T14:37:49.193+00:00","body":{"de":"Bei der Registrierung und beim Zurücksetzen des Passworts werden Passwörter mit 8 oder 9 Zeichen erst angenommen und dann mit einer unklaren Fehlermeldung abgelehnt. Wir sehen uns das an.\n\nBis dahin: Nimm ein Passwort mit **mindestens 10 Zeichen**, dann klappt es.","en":"When signing up or resetting your password, passwords with 8 or 9 characters are first accepted and then rejected with an unclear error. We are looking into it.\n\nUntil then: use a password with **at least 10 characters** and it will work."}},{"status":"identified","at":"2026-10-18T14:40:34.631594+00:00","body":{"de":"Ursache gefunden: Der Server verlangt mindestens 10 Zeichen, die Website hat aber „mindestens 8“ angezeigt und 8 oder 9 Zeichen durchgelassen. Die Korrektur ist fertig und wird gleich eingespielt.","en":"Cause found: the server requires at least 10 characters, but the website said \"at least 8\" and let 8 or 9 characters through. The fix is ready and will be rolled out shortly."}},{"status":"monitoring","at":"2026-10-18T14:50:03.165693+00:00","body":{"de":"Die Korrektur ist eingespielt: Die Website verlangt jetzt wie der Server mindestens 10 Zeichen und sagt das auch. Ist ein Passwort zu schwach, steht in der Fehlermeldung jetzt, worauf es ankommt. Wir beobachten das noch eine Weile.","en":"The fix is live: the website now requires at least 10 characters, like the server, and says so. If a password is too weak, the error now explains what is needed. We are keeping an eye on it for a while."}},{"status":"resolved","at":"2026-10-18T16:17:13.054855+00:00","body":{"de":"Behoben. Registrierung und Passwort-Reset verlangen und nennen jetzt einheitlich mindestens 10 Zeichen.","en":"Resolved. Sign-up and password reset now consistently require and state at least 10 characters."}}]},{"id":"ce2b010f-1bde-4cf4-a281-2f54981cdd74","title":{"de":"Bestätigungs-Mail lässt sich nicht erneut anfordern","en":"Confirmation email cannot be requested again"},"impact":"degraded","status":"resolved","started_at":"2026-10-18T14:36:28.289+00:00","resolved_at":"2026-10-18T16:17:13.624+00:00","components":["web","mail"],"updates":[{"status":"investigating","at":"2026-10-18T14:36:28.289+00:00","body":{"de":"Der Button **Bestätigungs-Mail erneut senden** (nach der Registrierung, im Dashboard und beim Bestellen) meldet einen Fehler zur Bot-Prüfung, eine neue Mail kommt nicht an. Wir sehen uns das an.\n\nBestellungen und Logins sind sonst nicht betroffen.","en":"The **Resend confirmation email** button (after signing up, in the dashboard and when ordering) shows a bot-check error and no new email arrives. We are looking into it.\n\nOrders and sign-ins are otherwise not affected."}},{"status":"identified","at":"2026-10-18T14:37:42.670055+00:00","body":{"de":"Ursache gefunden: Die Anfrage für eine neue Bestätigungs-Mail wurde ohne die Bot-Prüfung abgeschickt, die unser Server dafür verlangt, und deshalb abgelehnt. Solange deine Adresse nicht bestätigt ist, kannst du auch nichts bestellen.\n\nDie Korrektur ist fertig und wird gleich eingespielt.","en":"Cause found: the request for a new confirmation email was sent without the bot check our server requires for it, so it was rejected. Until your address is confirmed, you cannot place orders either.\n\nThe fix is ready and will be rolled out shortly."}},{"status":"identified","at":"2026-10-18T14:50:03.943953+00:00","body":{"de":"Teilweise behoben: Nach der Registrierung und auf der Seite „Link abgelaufen“ kannst du die Bestätigungs-Mail wieder anfordern, mit einer kurzen Sicherheitsprüfung. Für den Button im Dashboard und beim Bestellen folgt die Korrektur noch.","en":"Partly fixed: after signing up and on the \"link expired\" page you can request the confirmation email again, with a short security check. The fix for the button in the dashboard and when ordering is still to come."}},{"status":"monitoring","at":"2026-10-18T14:55:34.27637+00:00","body":{"de":"Die Korrektur ist vollständig eingespielt: Die Bestätigungs-Mail lässt sich jetzt auch im Dashboard und beim Bestellen wieder anfordern. Wir beobachten das noch eine Weile.","en":"The fix is fully live: the confirmation email can now be requested again in the dashboard and when ordering, too. We are keeping an eye on it for a while."}},{"status":"resolved","at":"2026-10-18T16:17:13.76092+00:00","body":{"de":"Behoben. Die Bestätigungs-Mail lässt sich nach der Registrierung, im Dashboard und beim Bestellen wieder anfordern. Konntest du deine Adresse bisher nicht bestätigen, fordere einfach eine neue Mail an.","en":"Resolved. The confirmation email can be requested again after signing up, in the dashboard and when ordering. If you could not confirm your address so far, just request a new email."}}]},{"id":"964b5d8d-eb5f-43cd-af0e-e79e8aa781e3","title":{"de":"Links in E-Mails führen auf eine Fehlerseite","en":"Links in emails lead to an error page"},"impact":"degraded","status":"resolved","started_at":"2026-10-18T14:23:26.004+00:00","resolved_at":"2026-10-18T14:27:48.156+00:00","components":["web","mail"],"updates":[{"status":"identified","at":"2026-10-18T14:23:26.004+00:00","body":{"de":"Mehrere Links in unseren E-Mails führen auf eine 404-Seite:\n\n- **E-Mail bestätigen** nach der Registrierung\n- **Das war ich nicht** / **Alle Geräte abmelden** in der Anmelde-Warnung\n- **Adresse bestätigen** und **Änderung abbrechen** beim Ändern der E-Mail-Adresse\n- **Passwort ändern**\n\nDie Ursache ist gefunden, die Korrektur wird gerade eingespielt. Danach funktionieren auch die Links in Mails, die du schon bekommen hast. Konntest du deine Adresse nicht bestätigen, öffne den Link einfach noch einmal, sobald dieser Vorfall als behoben markiert ist.","en":"Several links in our emails lead to a 404 page:\n\n- **Confirm email** after signing up\n- **This was not me** / **Sign out everywhere** in the sign-in alert\n- **Confirm the address** and **Cancel the change** when changing your email address\n- **Change your password**\n\nWe have found the cause and are rolling out the fix. Links in emails you already received will work again afterwards. If you could not confirm your address, just open the link again once this incident is marked as resolved."}},{"status":"resolved","at":"2026-10-18T14:27:48.963457+00:00","body":{"de":"Die Korrektur ist live. Alle Links in unseren E-Mails führen wieder auf die richtige Seite, auch in Mails, die du schon bekommen hast. Konntest du deine E-Mail-Adresse nicht bestätigen, öffne den Link aus der Mail einfach noch einmal. Ist er abgelaufen, kannst du beim Anmelden eine neue Bestätigungs-Mail anfordern.","en":"The fix is live. All links in our emails lead to the right page again, including in emails you already received. If you could not confirm your email address, just open the link from the email again. If it has expired, you can request a new confirmation email when you sign in."}}]},{"id":"771dd88b-3651-4c5c-aabe-eaf629b8527d","title":{"de":"Deploy: Datenbanken nicht erreichbar, Deploys schlugen fehl","en":"Deploy: databases unreachable, deploys failing"},"impact":"partial_outage","status":"resolved","started_at":"2026-10-17T19:53:00+00:00","resolved_at":"2026-10-17T23:24:00+00:00","components":["deploy"],"updates":[{"status":"investigating","at":"2026-10-17T19:53:00+00:00","body":{"de":"Seit **21:53 Uhr** ist einer der drei Server von CitexNode Deploy ausgefallen. In der Folge hat der Datenbank-Cluster von Deploy seine Mehrheit verloren.\n\n**Was das für dich bedeutet:**\n\n* Datenbanken, die du bei Deploy angelegt hast, sind nicht erreichbar.\n* Neue Deploys von Projekten mit zwei Instanzen schlagen fehl.\n* Deine Websites und Apps selbst laufen auf den beiden anderen Servern weiter.","en":"Since **21:53** one of the three CitexNode Deploy servers has been down. As a result the Deploy database cluster lost its majority.\n\n**What this means for you:**\n\n* Databases you created with Deploy are unreachable.\n* New deploys of projects with two instances fail.\n* Your websites and apps keep running on the other two servers."}},{"status":"identified","at":"2026-10-17T22:58:00+00:00","body":{"de":"**Ursache gefunden:** Auf dem Host, auf dem einer der Deploy-Server läuft, war der Arbeitsspeicher voll; das System hat den Server deshalb beendet.\n\nDer Server ist wieder gestartet und der Host hat einen zusätzlichen Speicherpuffer bekommen. Außerdem gehen Deploys ab sofort auch dann durch, wenn einer der drei Server fehlt.","en":"**Cause found:** the host running one of the Deploy servers ran out of memory, and the system stopped that server.\n\nThe server is running again and the host has an additional memory buffer. Deploys now also go through when one of the three servers is missing."}},{"status":"monitoring","at":"2026-10-17T23:15:00+00:00","body":{"de":"Der Datenbank-Cluster ist neu gestartet, **deine Datenbanken sind wieder erreichbar**. Es sind keine Daten verloren gegangen: alle drei Datenbank-Knoten standen auf demselben Stand. Die beiden übrigen Knoten gleichen sich gerade ab.","en":"The database cluster has been restarted, **your databases are reachable again**. No data was lost: all three database nodes were at the same position. The other two nodes are syncing now."}},{"status":"resolved","at":"2026-10-17T23:24:00+00:00","body":{"de":"**Behoben.** Alle drei Datenbank-Knoten sind wieder synchron, Deploys und Datenbanken laufen normal. Dauer: rund 3 ½ Stunden.\n\nDeploy hat ab sofort eine eigene Zeile auf dieser Seite und wird jede Minute geprüft, damit so ein Ausfall hier sofort sichtbar ist.","en":"**Resolved.** All three database nodes are in sync again; deploys and databases work normally. Duration: about 3 ½ hours.\n\nDeploy now has its own row on this page and is checked every minute, so an outage like this shows up here right away."}}]}],"maintenances":[{"id":"c5b44a05-0459-4800-8bc6-9adcdfe4e04b","title":{"de":"Update des Mailservers","en":"Mail server update"},"body":{"de":"Der Mailserver läuft auf dem November-Update. Mails, die in der Zwischenzeit verzögert wurden, werden zugestellt.","en":"The mail server is running the November update. Mail delayed in the meantime is being delivered."},"status":"completed","start_at":"2026-11-06T11:46:00+00:00","end_at":"2026-11-06T12:15:00+00:00","components":["mail"]},{"id":"531c60dd-0e64-4b1c-92ef-93f78bbe55d9","title":{"de":"Update der Datenbank-Plattform","en":"Database platform update"},"body":{"de":"Wir aktualisieren die Datenbank-Plattform hinter der Statusseite und den Statusseiten unserer Kunden. Beide können dabei ein bis zwei Minuten nicht laden.","en":"We are updating the database platform behind this status page and our customers' status pages. Both may not load for one to two minutes."},"status":"completed","start_at":"2026-11-06T11:40:00+00:00","end_at":"2026-11-06T12:00:00+00:00","components":["statuspages"]},{"id":"0c63d9dd-e1f1-4865-b237-67dafb293386","title":{"de":"Sicherheitsupdates auf allen Servern","en":"Security updates on all servers"},"body":{"de":"Alle Server sind auf dem neuesten Stand (Docker 29.9.3, Systempakete). Game-Server, Bots und Kundenseiten liefen durchgehend weiter.","en":"All servers are up to date (Docker 29.9.3, system packages). Game servers, bots and customer sites kept running throughout."},"status":"completed","start_at":"2026-11-06T11:12:00+00:00","end_at":"2026-11-06T12:30:00+00:00","components":["mail","statuspages","reseller-portal","deploy","web-01","web-02","web-03"]},{"id":"dfa99d96-7a01-4650-a8b2-2e05a834efd8","title":{"de":"Mailserver bekommt mehr Arbeitsspeicher","en":"Mail server gets more memory"},"body":{"de":"Der Mailserver hat jetzt doppelt so viel Arbeitsspeicher. Nach dem ersten Neustart startete ein Dienst nicht von selbst, darum war der Mailserver von 11:30 bis 11:36 Uhr nicht erreichbar. Eingehende Mails wurden von den Absendern später zugestellt. Der Fehler ist behoben, ein zweiter Neustart lief sauber durch.","en":"The mail server now has twice the memory. After the first restart one service didn't start by itself, so the mail server was unreachable from 11:30 to 11:36 CET. Incoming mail was delivered later by the senders. The fault is fixed and a second restart went through cleanly."},"status":"completed","start_at":"2026-11-06T10:30:00+00:00","end_at":"2026-11-06T10:45:00+00:00","components":["mail"]},{"id":"51517941-0c59-4679-93e6-71bc3c1dac16","title":{"de":"Neue Website: Feinschliff bis Donnerstag","en":"New website: finishing touches until Thursday"},"body":{"de":"Die neue Website von CitexNode ist fertig. Danke für eure Geduld und eure Rückmeldungen.\n\nNeu dazugekommen sind unter anderem eine englische Fassung unter citexnode.com/en, die komplette Verwaltung von Statusseiten im Dashboard, nächtliche Sicherungen für eigene vServer und neue Anleitungen auf docs.citexnode.com. Wenn dir etwas auffällt, schreib uns gern ein Ticket.","en":"The new CitexNode website is finished. Thank you for your patience and feedback.\n\nNew, among other things: an English version at citexnode.com/en, full status page management in the dashboard, nightly backups for own VPS and new guides at docs.citexnode.com. If you notice anything, feel free to open a ticket."},"status":"completed","start_at":"2026-11-03T09:10:00+00:00","end_at":"2026-11-05T22:59:00+00:00","components":["web"]},{"id":"cfdcfcd8-79e9-46fc-b170-03f195d5d8de","title":{"de":"Umzug der Statusseiten und ihrer Datenbank","en":"Moving status pages and their database"},"body":{"de":"Wir ziehen die Statusseiten auf statuscx.eu und die zugehörige Datenbank auf einen anderen Host um. Die Statusseiten sind dabei zeitweise nicht erreichbar, auch diese Seite kann kurz ausfallen. Server, Bots und Kundenseiten sind nicht betroffen.","en":"We are moving the status pages on statuscx.eu and their database to another host. Status pages will be unavailable at times, and this page may also be down briefly. Servers, bots and customer websites are not affected."},"status":"completed","start_at":"2026-10-31T02:33:00+00:00","end_at":"2026-10-31T04:15:00+00:00","components":["statuspages"]},{"id":"3af38c26-d22a-4ac7-abe3-2b987ee50add","title":{"de":"Netzwerkumstellung","en":"Network migration"},"body":{"de":"Wir stellen den Netzweg unserer Plattform um. Dabei kann es je Dienst zu Unterbrechungen von wenigen Sekunden kommen. Daten sind nicht betroffen.","en":"We are changing the network path of our platform. Each service may be interrupted for a few seconds. Data is not affected."},"status":"completed","start_at":"2026-10-30T21:45:00+00:00","end_at":"2026-10-30T23:00:00+00:00","components":["web","api","db","mail","statuspages","node5","reseller-portal","reseller-api","deploy","deploy-builds","deploy-db","deploy-storage","web-01","web-02","web-03"]},{"id":"a9c37249-19c5-4455-bef9-c3c87085b800","title":{"de":"Kurze Unterbrechung der Kundenseiten","en":"Short interruption of customer sites"},"body":{"de":"Die Umschaltung ist abgeschlossen. Die Kundenseiten laufen jetzt auf der neuen Plattform und waren nur für wenige Sekunden unterbrochen.","en":"The switch is complete. Customer sites now run on the new platform and were interrupted for only a few seconds."},"status":"completed","start_at":"2026-10-30T07:38:00+00:00","end_at":"2026-10-30T08:15:00+00:00","components":["deploy"]},{"id":"a3e038b0-9374-436e-bf91-53068a2df135","title":{"de":"Kurze Wartung: Umzug des Mailservers","en":"Short maintenance: moving the mail server"},"body":{"de":"Der Umzug ist abgeschlossen. Der Mailserver war von etwa 05:55 bis 06:10 Uhr UTC nicht erreichbar und läuft jetzt auf der neuen Plattform. Postfächer, Einstellungen und die Warteschlange wurden vollständig übernommen.","en":"The move is complete. The mail server was unavailable from about 05:55 to 06:10 UTC and now runs on the new platform. Mailboxes, settings and the queue were carried over completely."},"status":"completed","start_at":"2026-10-30T05:55:00+00:00","end_at":"2026-10-30T06:20:00+00:00","components":["mail"]},{"id":"bfa33b86-4773-4c23-bbb2-ee57eec93f3b","title":{"de":"Wartung: Umzug von Git und Container-Registry","en":"Maintenance: moving Git and the container registry"},"body":{"de":"Der Umzug ist abgeschlossen. git.citexnode.com und die Container-Registry waren von etwa 04:47 bis 05:31 Uhr UTC nicht erreichbar und laufen jetzt auf der neuen Plattform. Git-Pushes und Builds funktionieren wieder.","en":"The move is complete. git.citexnode.com and the container registry were unavailable from about 04:47 to 05:31 UTC and now run on the new platform. Git pushes and builds work again."},"status":"completed","start_at":"2026-10-30T04:50:00+00:00","end_at":"2026-10-30T05:45:00+00:00","components":["deploy-builds"]},{"id":"24d2c490-dcb7-4b95-b4e7-a4e7f15a0261","title":{"de":"Kurze Wartung: Umzug der API","en":"Short maintenance: moving the API"},"body":{"de":"Der Umzug ist abgeschlossen. Die API war von etwa 04:10 bis 04:13 Uhr UTC nicht erreichbar und läuft jetzt auf der neuen Plattform. Dashboard, Anmeldung und Reseller-API funktionieren wieder.","en":"The move is complete. The API was unavailable from about 04:10 to 04:13 UTC and now runs on the new platform. Dashboard, sign-in and the reseller API work again."},"status":"completed","start_at":"2026-10-30T04:10:00+00:00","end_at":"2026-10-30T04:30:00+00:00","components":["api","web","reseller-portal","reseller-api"]},{"id":"58550e4b-6a35-4863-810b-662d25376bb2","title":{"de":"Kurze Unterbrechung der MySQL-Datenbanken","en":"Short interruption of the MySQL databases"},"body":{"de":"Der Umzug ist abgeschlossen. mysql.citexnode.de war von etwa 03:55 bis 04:05 Uhr UTC nicht oder nur eingeschränkt erreichbar und läuft jetzt auf der neuen Plattform. Adresse, Zugangsdaten und Daten sind unverändert.","en":"The move is complete. mysql.citexnode.de was unavailable or partly unreachable from about 03:55 to 04:05 UTC and now runs on the new platform. Address, credentials and data are unchanged."},"status":"completed","start_at":"2026-10-30T03:55:00+00:00","end_at":"2026-10-30T04:15:00+00:00","components":["db"]},{"id":"c2d8eecd-6291-4a20-8336-a65b44ed1f1c","title":{"de":"Umzug der Datenbank-Plattform auf neue Hardware","en":"Moving the database platform to new hardware"},"body":{"de":"Der Umzug ist abgeschlossen. Die Datenbank-Plattform war von etwa 03:15 bis 03:35 Uhr UTC nicht erreichbar und läuft jetzt auf der neuen Plattform. Es sind keine Daten verloren gegangen.","en":"The move is complete. The database platform was unavailable from about 03:15 to 03:35 UTC and now runs on the new platform. No data was lost."},"status":"completed","start_at":"2026-10-30T03:15:00+00:00","end_at":"2026-10-30T04:00:00+00:00","components":["statuspages"]},{"id":"0aaab627-0c49-4a91-b55a-cd52f2b65fcd","title":{"de":"Umzug der Statusseiten auf neue Hardware","en":"Moving status pages to new hardware"},"body":{"de":"Der Umzug ist abgeschlossen. Die Statusseiten waren von etwa 03:00 bis 03:12 Uhr UTC nicht erreichbar und laufen jetzt auf der neuen Plattform. Daten und Einstellungen sind unverändert.","en":"The move is complete. Status pages were unavailable from about 03:00 to 03:12 UTC and now run on the new platform. Data and settings are unchanged."},"status":"completed","start_at":"2026-10-30T03:00:00+00:00","end_at":"2026-10-30T03:35:00+00:00","components":["statuspages"]},{"id":"36b5d2a0-07e9-4b84-aca3-3aa462d77c35","title":{"de":"Umzug der Web-Knoten (CitexNode Deploy)","en":"Moving the web nodes (CitexNode Deploy)"},"body":{"de":"Der Umzug der Web-Knoten wurde abgebrochen und wird zu einem späteren Zeitpunkt neu angekündigt. Die Knoten bleiben auf ihrem bisherigen Host.","en":"The move of the web nodes was cancelled and will be announced again later. The nodes stay on their current host."},"status":"completed","start_at":"2026-10-29T09:18:00+00:00","end_at":"2026-10-29T10:35:00+00:00","components":["deploy","deploy-builds","deploy-db","deploy-storage","web-01","web-02","web-03"]},{"id":"9dd4fea0-f0d3-4aa8-a2b3-25716954449c","title":{"de":"Speicher-Umzug interner Server","en":"Storage move of internal servers"},"body":{"de":"Der Speicher-Umzug ist abgeschlossen. Alle internen Server laufen jetzt auf dem zusätzlichen Datenträger, der schnelle Speicher steht vollständig für Kunden-vServer bereit. Dashboard, API, Datenbanken, E-Mail und Node 5 waren dabei jeweils nur wenige Minuten nicht erreichbar und laufen wieder normal.","en":"The storage move is complete. All internal servers now run on the additional disk, and the fast storage is fully available for customer VPS. Dashboard, API, databases, e-mail and Node 5 were each unavailable for only a few minutes and are running normally again."},"status":"completed","start_at":"2026-10-24T19:49:00+00:00","end_at":"2026-10-24T22:00:00+00:00","components":["node5","statuspages","api","web","db","mail","reseller-portal","reseller-api"]},{"id":"93804b0f-44af-4580-8e0a-64f01d0e13d1","title":{"de":"Arbeitsspeicher-Erweiterung der Host-Server","en":"Memory upgrade of the host servers"},"body":{"de":"Die Arbeitsspeicher-Erweiterung ist abgeschlossen. Beide Host-Server laufen jetzt mit doppelt so viel Arbeitsspeicher, alle Dienste sind wieder erreichbar. Die Datenbanken der Deploy-Kundenseiten waren nach dem Neustart etwa 10 Minuten nicht verfügbar und laufen seitdem wieder normal.","en":"The memory upgrade is complete. Both host servers now run with twice the memory, and all services are reachable again. The databases of Deploy customer sites were unavailable for about 10 minutes after the restart and have been running normally since."},"status":"completed","start_at":"2026-10-23T22:29:00+00:00","end_at":"2026-10-23T23:29:00+00:00","components":["api","web","db","mail","node5","dns-sync","reseller-portal","reseller-api","reseller-billing","deploy","deploy-builds","deploy-db","deploy-storage","web-01","web-02","web-03"]},{"id":"5cd0970e-7957-4f22-8fef-761769396aeb","title":{"de":"Umzug der Statusseite auf eigene Server","en":"Moving the status page to our own servers"},"body":{"de":"Abgeschlossen. Die Statusseite läuft jetzt mit ihrer Datenbank auf unserer eigenen Infrastruktur; sie war rund 35 Sekunden nicht erreichbar.","en":"Completed. The status page and its database now run on our own infrastructure; it was unreachable for about 35 seconds."},"status":"completed","start_at":"2026-10-23T05:43:00+00:00","end_at":"2026-10-23T06:00:00+00:00","components":[]},{"id":"01b88688-d0e0-4080-a93f-a0b705865c57","title":{"de":"Netzwerk-Firewall auf den Host-Servern einschalten","en":"Enabling the network firewall on the host servers"},"body":{"de":"Abgeschlossen. Die Firewall-Funktion ist eingeschaltet, alle Dienste liefen dabei ohne Unterbrechung weiter.","en":"Completed. The firewall feature is enabled; all services kept running without interruption."},"status":"completed","start_at":"2026-10-22T20:15:00+00:00","end_at":"2026-10-22T20:45:00+00:00","components":["api","db","mail","node5","deploy","web-01","web-02","web-03"]},{"id":"8e4a59ec-918b-4f6b-a5ef-9fec37d0ff90","title":{"de":"Neustart eines Host-Servers (Kernel-Update)","en":"Host server reboot (kernel update)"},"body":{"de":"Neustart abgeschlossen. Der Host läuft mit dem neuen Kernel, die Netzwerkkorrektur ist dauerhaft übernommen. API, E-Mail, Datenbanken, Node 5 und die Kundenseiten sind wieder erreichbar.","en":"Reboot complete. The host runs the new kernel and the network fix is now permanent. API, email, databases, Node 5 and customer sites are reachable again."},"status":"completed","start_at":"2026-10-22T19:36:00+00:00","end_at":"2026-10-22T20:05:00+00:00","components":["api","db","mail","node5","reseller-api","deploy","deploy-builds","deploy-db","deploy-storage","web-01","web-02","web-03"]},{"id":"6784ed69-3ced-4463-a9c8-69d3f2bdbc9e","title":{"de":"Sicherheits- und Systemupdates auf allen Servern","en":"Security and system updates on all servers"},"body":{"de":"Abgeschlossen: Alle Server haben die aktuellen System- und Sicherheitsupdates erhalten. Game-Server, Bots und Kundenseiten liefen durchgehend weiter; Datenbank-Replikation und gemeinsamer Speicher sind synchron.","en":"Completed: all servers have received the current system and security updates. Game servers, bots and customer sites kept running throughout; database replication and shared storage are in sync."},"status":"completed","start_at":"2026-10-22T15:50:00+00:00","end_at":"2026-10-22T16:08:00+00:00","components":["api","mail","db","node2","node3","node4","node5","deploy","deploy-builds","web-01","web-02","web-03"]},{"id":"e2703482-04a7-4154-a5bb-4ad870b7fe9e","title":{"de":"Mehr Leistung für CitexNode Deploy: Web-Knoten werden nacheinander neu gestartet","en":"More capacity for CitexNode Deploy: web nodes restart one after another"},"body":{"de":"Abgeschlossen: Alle drei Web-Knoten haben jetzt 12 CPU-Kerne, 8 GB Arbeitsspeicher und doppelt so viel Speicherplatz für Projektdaten. Die Knoten wurden nacheinander neu gestartet; Datenbank-Replikation und gemeinsamer Speicher sind vollständig synchron, Kundenseiten waren durchgehend erreichbar.","en":"Completed: all three web nodes now have 12 CPU cores, 8 GB of memory and twice the storage for project data. The nodes were restarted one after another; database replication and shared storage are fully in sync, and customer sites stayed reachable throughout."},"status":"completed","start_at":"2026-10-21T22:10:00+00:00","end_at":"2026-10-21T22:18:00+00:00","components":["web-01","web-02","web-03","deploy","deploy-builds","deploy-db","deploy-storage"]},{"id":"50efd27a-c3c3-4e8d-99ba-cde8cfc2405c","title":{"de":"Netzwerk-Optimierung zwischen den Virtualisierungs-Hosts","en":"Network optimisation between the virtualisation hosts"},"body":{"de":"Abgeschlossen: Die Verbindung zwischen den beiden Hosts läuft jetzt über den direkten Weg. Die Umschaltung dauerte rund eine Sekunde, alle Dienste sind erreichbar, Datenbank-Replikation und gemeinsamer Speicher sind synchron. Bandbreite und Antwortzeiten zwischen den Hosts haben sich deutlich verbessert.","en":"Completed: the connection between the two hosts now uses the direct path. The switch took about one second, all services are reachable, database replication and shared storage are in sync. Bandwidth and response times between the hosts have improved considerably."},"status":"completed","start_at":"2026-10-21T21:42:00+00:00","end_at":"2026-10-21T21:45:00+00:00","components":["web-01","web-02","web-03","deploy","mail","db"]},{"id":"1d2951b2-e1cf-45c6-96a1-b63143cf5ab3","title":{"de":"Umzug der Web-Knoten auf einen neuen Host","en":"Moving the web nodes to a new host"},"body":{"de":"Abgeschlossen: Alle drei Web-Knoten laufen jetzt auf dem neuen Virtualisierungs-Host. Die Umzüge erfolgten nacheinander im laufenden Betrieb mit Unterbrechungen unter einer Sekunde; die Datenbank-Replikation und der gemeinsame Speicher sind vollständig synchron. Während des letzten Umzugs kam es für einige Minuten zu erhöhten Antwortzeiten an einem Knoten, Kundenseiten blieben erreichbar.","en":"Completed: all three web nodes now run on the new virtualisation host. They were moved one after another without shutting down, with interruptions below one second; database replication and shared storage are fully in sync. During the last move one node had higher response times for a few minutes; customer sites stayed reachable."},"status":"completed","start_at":"2026-10-21T20:55:00+00:00","end_at":"2026-10-21T21:30:00+00:00","components":["web-01","web-02","web-03","deploy"]},{"id":"ebd8670f-2df6-460e-892f-7b138fa298fd","title":{"de":"Geplante Wartung: Node 2 bis 5 und CitexNode Deploy","en":"Scheduled maintenance: Node 2 to 5 and CitexNode Deploy"},"body":{"de":"Am **19. Oktober ab 23:30 Uhr** spielen wir ein Update auf **Node 2, 3, 4 und 5** und auf **CitexNode Deploy** ein. Was genau sich ändert, ergänzen wir hier vorher.\n\nWährend der Wartung können Server, Bots und Deploy-Websites kurz neu starten oder für einige Minuten nicht erreichbar sein. Deine Daten bleiben erhalten, du musst nichts tun.\n\nFragen? Schreib uns ein Ticket.","en":"On **19 October from 23:30 (CEST)** we are rolling out an update to **Node 2, 3, 4 and 5** and to **CitexNode Deploy**. We will add the details here beforehand.\n\nDuring the maintenance, servers, bots and Deploy websites may restart briefly or be unreachable for a few minutes. Your data stays as it is and you don't need to do anything.\n\nQuestions? Open a ticket."},"status":"completed","start_at":"2026-10-19T21:30:00+00:00","end_at":"2026-10-20T01:03:05+00:00","components":["node2","node3","node4","node5","deploy"]},{"id":"aab4f8bf-7786-40c5-ac65-ac7c247ed469","title":{"de":"Zahlungsarten umgestellt: PayPal und Mollie, Stripe entfällt","en":"Payment methods changed: PayPal and Mollie, Stripe removed"},"body":{"de":"Guthaben lädst du ab jetzt über **PayPal** oder **Mollie** auf. Über Mollie zahlst du per Karte, SEPA-Lastschrift und weiteren Zahlarten, die dir auf der Bezahlseite angezeigt werden. **Stripe** bieten wir nicht mehr an.\n\nFür dich ändert sich sonst nichts: Dein Guthaben, deine Server und deine Rechnungen bleiben, wie sie sind. Ältere Stripe-Zahlungen findest du weiter in deinem Buchungsverlauf. Die Datenschutzerklärung und die AGB sind entsprechend angepasst.","en":"From now on you top up your balance via **PayPal** or **Mollie**. With Mollie you pay by card, SEPA Direct Debit and the other methods shown on the checkout page. We no longer offer **Stripe**.\n\nNothing else changes for you: your balance, servers and invoices stay as they are. Earlier Stripe payments remain in your transaction history. The privacy policy and terms have been updated accordingly."},"status":"completed","start_at":"2026-10-18T15:05:00+00:00","end_at":"2026-10-18T15:20:00+00:00","components":["api","web"]},{"id":"a0f8163c-73af-485b-a06d-9b0a01663d0b","title":{"de":"Speicher-Optimierung auf dem Hauptserver","en":"Memory optimisation on the main host"},"body":{"de":"Wir verteilen den Arbeitsspeicher auf unserem Hauptserver neu, damit ein Engpass wie in der Nacht auf den 18.10. nicht mehr vorkommen kann.\n\n**Was du merken kannst:** Bei **Deploy** können neue Deploys für ein paar Minuten fehlschlagen, während der Git- und Image-Server einmal neu startet. Deine laufenden Websites und Apps sind nicht betroffen.\n\nGameServer, Bots, API, Dashboard und E-Mail laufen ohne Unterbrechung weiter.","en":"We are redistributing the memory on our main host so that a shortage like the one in the night to 18 October cannot happen again.\n\n**What you may notice:** with **Deploy**, new deploys may fail for a few minutes while the Git and image server restarts once. Your running websites and apps are not affected.\n\nGame servers, bots, API, dashboard and e-mail keep running without interruption."},"status":"completed","start_at":"2026-10-18T00:23:02.019629+00:00","end_at":"2026-10-18T00:29:58.667479+00:00","components":["deploy"]},{"id":"6d7316fc-343c-487c-9b74-ce2e0180a259","title":{"de":"Node 1 · Frankfurt am Main abgeschaltet","en":"Node 1 · Frankfurt am Main shut down"},"body":{"de":"Node 1 wird nicht ersetzt und ist endgültig abgeschaltet. Neue Server und Bots laufen auf unseren anderen Nodes. Wenn du Fragen zu einem früheren Server auf Node 1 hast, schreib uns bitte ein Ticket.","en":"Node 1 will not be replaced and has been shut down for good. New servers and bots run on our other nodes. If you have questions about a former server on Node 1, please open a ticket."},"status":"completed","start_at":"2026-10-06T22:00:00+00:00","end_at":"2026-10-31T22:59:00+00:00","components":["node1"]}]}