Geschichten der 1C-Entwickler: Administratoren

Alle 1C-Entwickler interagieren auf die eine oder andere Weise eng mit IT-Diensten und direkt mit Systemadministratoren. Doch nicht immer verläuft dieses Zusammenspiel reibungslos. Dazu möchte ich euch ein paar lustige Geschichten erzählen.

Hochgeschwindigkeits-Kommunikationskanal

Die meisten unserer Kunden sind große Konzerne mit eigenen großen IT-Abteilungen. Und Kundenspezialisten sind in der Regel für Sicherungskopien von Informationsdatenbanken verantwortlich. Es gibt aber auch relativ kleine Organisationen. Speziell für sie haben wir einen Service, bei dem wir alle Probleme im Zusammenhang mit der Sicherung von allem 1C übernehmen. Über dieses Unternehmen werden wir in dieser Geschichte sprechen.

Ein neuer Kunde kam, um 1C zu unterstützen, und der Vertrag enthielt unter anderem eine Klausel, dass wir für Backups verantwortlich waren, obwohl sie über einen eigenen Systemadministrator verfügten. Client-Server-Datenbank, MS SQL als DBMS. Eine ziemlich normale Situation, aber es gab immer noch eine Nuance: Die Hauptbasis war ziemlich groß, aber der monatliche Anstieg war sehr gering. Das heißt, die Datenbank enthielt viele historische Daten. Unter Berücksichtigung dieser Funktion habe ich Backup-Wartungspläne wie folgt erstellt: Am ersten Samstag jedes Monats wurde ein vollständiges Backup erstellt, das ziemlich umfangreich war, dann wurde jede Nacht eine Differenzkopie erstellt – ein relativ kleines Volumen und eine Kopie des Transaktionsprotokolls stündlich. Darüber hinaus wurden Voll- und Differenzkopien nicht nur auf eine Netzwerkressource kopiert, sondern zusätzlich auch auf unseren FTP-Server hochgeladen. Dies ist eine zwingende Voraussetzung für die Erbringung dieser Dienstleistung.

All dies wurde erfolgreich konfiguriert, in Betrieb genommen und funktionierte im Allgemeinen ohne Ausfälle.

Doch einige Monate später wechselte der Systemadministrator in dieser Organisation. Der neue Systemadministrator begann, die IT-Infrastruktur des Unternehmens schrittweise entsprechend den modernen Trends umzubauen. Insbesondere trat Virtualisierung auf, Festplattenregale, der Zugriff wurde überall und alles blockiert usw., was im Allgemeinen natürlich nur erfreulich ist. Doch nicht immer lief es für ihn reibungslos; oft gab es Probleme mit der Leistung von 1C, was zu einigen Meinungsverschiedenheiten und Missverständnissen mit unserem Support führte. Außerdem ist anzumerken, dass unser Verhältnis zu ihm im Allgemeinen recht kalt und etwas angespannt war, was die Spannung bei auftretenden Problemen nur noch verstärkte.

Doch eines Morgens stellte sich heraus, dass der Server dieses Kunden nicht erreichbar war. Ich rief den Systemadministrator an, um herauszufinden, was passiert war, und erhielt als Antwort etwas wie „Unser Server ist abgestürzt, wir arbeiten daran, es liegt nicht an Ihnen.“ Nun, es ist gut, dass sie funktionieren. Dies bedeutet, dass die Situation unter Kontrolle ist. Nach dem Mittagessen rufe ich noch einmal zurück und statt Gereiztheit höre ich bereits Müdigkeit und Apathie in der Stimme des Administrators. Ich versuche herauszufinden, was passiert ist und können wir irgendetwas tun, um zu helfen? Als Ergebnis des Gesprächs kam Folgendes heraus:

Er verlegte den Server auf ein neues Speichersystem mit einem neu zusammengestellten Raid. Aber etwas ging schief und ein paar Tage später scheiterte dieser Überfall sicher. Ob der Controller durchgebrannt ist oder etwas mit den Festplatten passiert ist, weiß ich nicht mehr genau, aber alle Informationen gingen unwiederbringlich verloren. Und die Hauptsache war, dass die Netzwerkressource mit Backups bei verschiedenen Migrationen auch auf demselben Festplatten-Array landete. Das heißt, sowohl die produktive Datenbank selbst als auch alle ihre Sicherungskopien gingen verloren. Und es ist unklar, was jetzt zu tun ist.

Beruhige dich, sage ich. Wir haben Ihr nächtliches Backup. Als Reaktion darauf herrschte Stille, und mir wurde klar, dass ich gerade einem Mann das Leben gerettet hatte. Wir beginnen mit der Diskussion, wie diese Kopie auf einen neuen, neu bereitgestellten Server übertragen werden kann. Aber auch hier trat ein Problem auf.

Erinnern Sie sich, als ich sagte, dass das vollständige Backup ziemlich groß sei? Nicht umsonst habe ich es einmal im Monat samstags gemacht. Tatsache ist, dass es sich bei dem Unternehmen um eine kleine Fabrik handelte, die weit außerhalb der Stadt lag und deren Internet sehr mittelmäßig war. Bis Montagmorgen, also am Wochenende, schaffte es diese Kopie gerade noch, auf unseren FTP-Server hochzuladen. Aber es gab keine Möglichkeit, ein oder zwei Tage zu warten, bis es in die entgegengesetzte Richtung geladen wurde. Nach mehreren erfolglosen Versuchen, die Datei zu übertragen, holte der Administrator die Festplatte direkt vom neuen Server, fand irgendwo ein Auto mit Fahrer und eilte schnell zu unserem Büro, zum Glück sind wir immer noch in derselben Stadt.

Während sie in unserem Serverraum standen und auf das Kopieren der Dateien warteten, trafen wir uns zum ersten Mal sozusagen „persönlich“, tranken eine Tasse Kaffee und unterhielten uns in ungezwungener Atmosphäre. Ich hatte Verständnis für seine Trauer und schickte ihn mit einer ganzen Reihe von Backups zurück, um die eingestellte Arbeit des Unternehmens hastig wiederherzustellen.

Anschließend wurden alle unsere Anfragen an die IT-Abteilung sehr schnell geklärt und es kam zu keinen Unstimmigkeiten mehr.

Kontaktieren Sie Ihren Systemadministrator

Einmal, sehr lange, konnte ich 1C für den Webzugriff über IIS für einen Client nicht veröffentlichen. Es schien eine gewöhnliche Aufgabe zu sein, aber es gab keine Möglichkeit, alles zum Laufen zu bringen. Lokale Systemadministratoren schalteten sich ein und probierten verschiedene Einstellungen und Konfigurationsdateien aus. 1C im Web wollte normalerweise überhaupt nicht funktionieren. Irgendetwas stimmte nicht, entweder mit den Domänensicherheitsrichtlinien oder mit der lokalen, hochentwickelten Firewall, oder Gott weiß was sonst noch. Bei der N-ten Iteration sendet mir der Administrator einen Link mit den Worten:

- Versuchen Sie es erneut anhand dieser Anweisungen. Dort ist alles sehr ausführlich beschrieben. Wenn es nicht funktioniert, schreiben Sie dem Autor dieser Seite, vielleicht kann er Ihnen helfen.
„Nein“, sage ich, „es wird nicht helfen.“
- Warum nicht?
— Ich bin der Autor dieser Seite... (

Infolgedessen haben wir es ohne Probleme auf Apache gestartet. IIS wurde nie besiegt.

Eine Ebene tiefer

Wir hatten einen Kunden – ein kleines Produktionsunternehmen. Sie hatten einen Server, eine Art „klassisches“ 3-in-1-System: Terminalserver + Anwendungsserver + Datenbankserver. Sie arbeiteten in einer branchenspezifischen Konfiguration auf Basis von UPP, es gab etwa 15 bis 20 Benutzer und die Leistung des Systems war im Prinzip für jeden geeignet.

Mit der Zeit funktionierte alles mehr oder weniger stabil. Doch dann verhängte Europa Sanktionen gegen Russland, wodurch die Russen begannen, hauptsächlich im Inland hergestellte Produkte zu kaufen, und das Geschäft dieses Unternehmens ging stark bergauf. Die Anzahl der Benutzer stieg auf 50-60 Personen, eine neue Filiale wurde eröffnet und der Dokumentenfluss erhöhte sich entsprechend. Und nun war der aktuelle Server der stark gestiegenen Belastung nicht mehr gewachsen und 1C begann, wie man sagt, „langsamer“ zu werden. Zu Spitzenzeiten dauerte die Verarbeitung von Dokumenten mehrere Minuten, es kam zu Blockierungsfehlern, das Öffnen von Formularen dauerte lange und vieles mehr. Der lokale Systemadministrator wischte alle Probleme beiseite und sagte: „Das ist Ihr 1C, Sie werden es schon herausfinden.“ Wir haben wiederholt vorgeschlagen, eine Leistungsprüfung des Systems durchzuführen, aber zur eigentlichen Prüfung kam es nie. Der Kunde bat lediglich um Empfehlungen zur Behebung von Problemen.

Nun, ich habe mich hingesetzt und einen ziemlich langen Brief über die Notwendigkeit geschrieben, die Rollen des Terminalservers und des Anwendungsservers beim DBMS zu trennen (was wir im Prinzip schon oft gesagt haben). Ich habe über DFSS auf Terminalservern und Shared Memory geschrieben, Links zu maßgeblichen Quellen bereitgestellt und sogar einige Optionen für die Ausrüstung vorgeschlagen. Dieser Brief erreichte die Verantwortlichen im Unternehmen, ging mit den Beschlüssen „Umsetzen“ zurück an die IT-Abteilung und das Eis war allgemein gebrochen.

Nach einiger Zeit sendet mir der Administrator die IP-Adresse des neuen Servers und die Anmeldeinformationen. Er sagt, dass dort MS SQL- und 1C-Serverkomponenten eingesetzt werden und die Datenbanken übertragen werden müssen, allerdings vorerst nur auf den DBMS-Server, da einige Probleme mit den 1C-Schlüsseln aufgetreten sind.

Als ich reinkam, liefen tatsächlich alle Dienste, der Server war nicht sehr leistungsfähig, aber ok, ich denke, es ist besser als nichts. Ich werde die Datenbanken vorerst übertragen, um den aktuellen Server irgendwie zu entlasten. Ich habe alle Übertragungen zum vereinbarten Zeitpunkt abgeschlossen, aber die Situation hat sich nicht geändert – immer noch die gleichen Leistungsprobleme. Es ist natürlich seltsam, also registrieren wir die Datenbanken im 1C-Cluster und wir werden sehen.

Es vergehen mehrere Tage, die Schlüssel wurden nicht übergeben. Ich frage mich, wo das Problem liegt. Alles scheint einfach zu sein: Nehmen Sie es von einem Server, schließen Sie es an einen anderen an, installieren Sie den Treiber und fertig. Der Administrator reagiert, indem er viel Aufhebens macht und etwas über Portweiterleitung, einen virtuellen Server usw. sagt.

Hmm... Virtueller Server? Es scheint, dass es nie eine Virtualisierung gegeben hat und es auch nie eine gegeben hat ... Ich erinnere mich an ein ziemlich bekanntes Problem mit der Unmöglichkeit, einen 1C-Serverschlüssel an eine virtuelle Maschine unter Hyper-V in Windows Server 2008 weiterzuleiten. Und hier In mir beginnen sich einige Verdächtigungen zu formen...

Ich öffne den Servermanager – Rollen – eine neue Rolle ist erschienen – Hyper-V. Ich gehe zum Hyper-V-Manager, sehe eine virtuelle Maschine, verbinde mich ... Und tatsächlich ... Unser neuer Datenbankserver ...

Na und? Die Anweisungen der Behörden und meine Empfehlungen wurden umgesetzt, die Rollen wurden getrennt. Die Aufgabe kann geschlossen werden.

Nach einiger Zeit kam es zur jetzigen Krise, die neue Filiale musste geschlossen werden, die Auslastung nahm ab und die Systemleistung wurde mehr oder weniger erträglich.

Nun, natürlich konnten sie den Serverschlüssel nicht an die virtuelle Maschine weiterleiten. Infolgedessen blieb alles so, wie es war: Terminalserver + 1C-Cluster auf einer physischen Maschine, Datenbankserver dort auf einer virtuellen Maschine.

Und es wäre schön, wenn dies eine Art Sharashkin-Büro wäre. Also nein. Ein bekanntes Unternehmen, dessen Produkte Sie wahrscheinlich kennen und in den entsprechenden Abteilungen aller Lentas und Auchans gesehen haben.

Urlaubsplan für Festplatten

Eine große Holdinggesellschaft mit ehrgeizigen Plänen, die Welt zu erobern, hat erneut ein kleines Unternehmen gekauft, um es in seinen Megakonzern einzubinden. In allen Bereichen dieser Holding arbeiten die Nutzer in eigenen Datenbanken, jedoch mit identischer Konfiguration. Und so starteten wir ein kleines Projekt, um eine neue Einheit in dieses System einzubinden.

Zunächst müssen Produktions- und Testdatenbanken bereitgestellt werden. Der Entwickler hat die Verbindungsdaten erhalten, meldet sich beim Server an, sieht MS SQL installiert, 1C-Server, sieht 2 logische Laufwerke: Laufwerk „C“ mit einer Kapazität von 250 Gigabyte und Laufwerk „D“ mit einer Kapazität von 1 Terabyte. Nun, „C“ ist das System, „D“ steht für Daten, der Entwickler entscheidet logischerweise und stellt alle Datenbanken dort bereit. Für alle Fälle erstelle ich sogar Wartungspläne inklusive Backup (auch wenn wir dafür nicht verantwortlich sind). Zwar wurden hier Backups zu „D“ hinzugefügt. Für die Zukunft war geplant, es auf eine separate Netzwerkressource umzukonfigurieren.

Das Projekt startete, Berater führten Schulungen zum Umgang mit dem neuen System durch, Reste wurden übertragen, einige kleinere Verbesserungen vorgenommen und die Benutzer begannen mit der Arbeit in der neuen Informationsdatenbank.

Alles lief gut, bis eines Montagmorgens festgestellt wurde, dass die Datenbankfestplatte fehlte. Es gibt einfach kein „D“ auf dem Server und das war’s.

Weitere Untersuchungen ergaben Folgendes: Dieser „Server“ war tatsächlich der Arbeitscomputer eines lokalen Systemadministrators. Es stimmt, es hatte immer noch ein Server-Betriebssystem. Das persönliche USB-Laufwerk dieses Administrators wurde an den Server angeschlossen. Und so ging der Administrator in den Urlaub und nahm seine Schraube mit, mit dem Ziel, Filme für die Reise hineinzupumpen.

Gott sei Dank gelang es ihm nicht, die Datenbankdateien zu löschen und die produktive Datenbank wiederherzustellen.

Bemerkenswert ist, dass im Großen und Ganzen alle mit der Leistung des Systems auf einem USB-Stick zufrieden waren. Niemand hat sich über eine unbefriedigende Leistung von 1C beschwert. Erst später startete die Holding ein Megaprojekt zur Übertragung aller Informationsdatenbanken an einen einzigen zentralen Standort mit Superservern, Speichersystemen für mehr als eine Million Rubel, hochentwickelten Hypervisoren und unerträglichen 1C-Bremsen in allen Filialen.

Aber das ist eine ganz andere Geschichte ...

Source: habr.com

Kommentar hinzufügen