
OpenSVC wurde gerade auf die FreeBSD-Plattform portiert. Der kleine Text in dieser Ankündigung hat mich neugierig gemacht, also ging ich zurOpenSVC-Websiteund habe Folgendes gefunden:
OpenSVC ist ein „Service“-Manager im Sinne eines Cluster-Service-Managers, der für heterogene Rechenzentren in der realen Welt und die Orchestrierung groß angelegter Vorgänge (z. B. Notfallwiederherstellung) entwickelt wurde.
Dienste sind Sammlungen von Ressourcen (virtuelle Maschinen, IP, Datenträgergruppen, Dateisysteme, Dateisynchronisierungen und Anwendungsstarter).
Dienste können gestartet, gestoppt und ihr Status abgefragt werden, wodurch ein konsistenter Befehlssatz für völlig unterschiedliche Dienstintegrationstypen bereitgestellt wird.
Dienstkonfigurationen, Status und Protokolle werden in eine zentrale Datenbank übertragen, die mit einem Web-Frontend (Collector) gekoppelt ist.
Dienste können mithilfe des eigenständigen GPLv2-Software-Stacks verwaltet werden, der auf den Knoten bereitgestellt wird (Nodeware), oder über das Web-Frontend.
Plus einige UML-artige Grafiken. Das ist alles ganz nett, aber ich verstehe immer noch nicht: Was macht es? Bin ich einfach nur dumm? Was ist der Anwendungsfall für dieses System?
Antwort1
Ich werde versuchen, anhand spezifischer Fälle die Nützlichkeit von OpenSVC zu erklären.
Stellen Sie sich einen Systemadministrator in einem Unternehmen vor, der Dienste für Kunden/Benutzer einrichtet. Er ist für etwa 50 Dienste verantwortlich. Er mag FreeBSD und neigt daher dazu, seine Dienste auf dieser Basis bereitzustellen. Er hat ein gutes Verständnis davon, wie rsnapshot funktioniert, und hat daher Skripte zur Automatisierung von Backups erstellt und gewissenhaft Skripte vorbereitet, die bei der Wiederherstellung nach einem Serverabsturz oder vielleicht sogar einem Site-Blackout helfen.
Der Sysadmin in der nächsten Kabine ist auch für etwa 50 andere Dienste zuständig. Er wird seine Hausaufgaben auch richtig gemacht haben, aber mit seinem eigenen Stil. Er bevorzugt vielleicht Linux und rsync, seine Wiederherstellungsskripte befinden sich an einem anderen Ort (vielleicht auf seinem Desktop). Seine Clients benötigen vielleicht mehr Verfügbarkeit, also musste er einen Clustering-Stack wählen.
Jetzt skalieren Sie auf Dutzende von Administratoren und Tausende von Diensten. Das Rechenzentrum ist ein Flickenteppich aus Technologien: 3 bis 4 verschiedene Betriebssysteme, 2 verschiedene Speicherhardware mit eigenem Replikationsprotokoll (Hitachi Shadow Copy, EMC SRDF, NetApp SnapMirror), 2 Clustering-Stacks (HACMP, RedHat Cluster, SunCluster, Veritas Cluster), unzählige verschiedene Skripte zur Automatisierung von Aktionen in kleinen Bereichen.
Und stellen Sie sich einige häufige Szenarien vor: o Leck in einem Rack: 20 Server ausgefallen, 50 Dienste, die ein Failover benötigen, 10 verschiedene Administratoren mit all ihren spezifischen Failover-Mechanismen o Site-Blackout: gleiches Szenario, zehnfach o Das Unternehmen hat die Diensteüberwachung ausgelagert: es ist schwer, dem unauffälligen Screener die Verantwortung für die fein abgestimmten Start-/Stopp-Aktionen der Dienste anzuvertrauen o Wechsel der Systemadministratoren: die ganze Feinabstimmung lässt sich nicht so einfach an den Neuling weitergeben.
OpenSVC kann als kostenloser, einfach zu implementierender und überall einsetzbarer Cluster-Stack angesehen werden. Dienste mit niedriger Kritikalität können nur einen Knoten haben. Dienste mit mittlerer Kritikalität können 2 Knoten und kein automatisches Failover haben. Dienste mit hoher Kritikalität haben 2+ Knoten mit automatischem Failover plus einen Remote-Knoten für die Notfallwiederherstellung.
Dasselbe Tool für alle, das die Präferenzen jedes Systemadministrators (Betriebssystem, Virtualisierungsmodell, Dateisystem, Replikationsschema) und jedes Verfügbarkeitsziel berücksichtigt, um die Stopp-/Start-/Replikationsaktionen für diese unterschiedlichen Integrationstypen bereitzustellen.
Ich habe das Beispiel auf eine große Umgebung konzentriert, um die Nützlichkeit von OpenSVC hervorzuheben, aber im wirklichen Leben verwenden viele Benutzer OpenSVC, um 1 bis 4 Dienste zu verwalten, nur um eine Menge Skripte zu verteilen, die sie zuvor selbst gepflegt haben.
Der Web Collector bietet zusätzliche Vorteile als Frontend für Berichte, Warnungen und Data-Mining. Diese Komponente steht nicht unter der GPL, ist aber auch nicht erforderlich, um von den oben genannten Vorteilen zu profitieren. Freiberufler verwenden den Internet Collector häufig, um einen einzigen Berichtspunkt für die Dienste zu haben, die sie für verschiedene Kunden bereitstellen.
Ich hoffe, es hilft, die Position von OpenSVC in der Clusterwelt zu klären.
Antwort2
Klingt, als wäre es ein Aggregator für den Status von Diensten auf einem Cluster von Maschinen in einem Rechenzentrum. Vielleicht so etwas wie ein zentraler Ort zur Überwachung Ihrer Dateiserver, Webserver, NFS-Server, virtuellen Maschinen usw. zusammen mit Statusprotokollen und so weiter.
Darüber hinaus klingt es so, als könnten Sie die Dienste neu starten, stoppen, „anpingen“ usw. – im Grunde ein Tool, mit dem Sie viele Computer in einem Rechenzentrum von einem Ort aus steuern und überwachen können.
Antwort3
Es gibt mehrere Cluster-Service-Manager fürHochverfügbarkeits-Linux. (Ich habe allerdings keine weiteren Links zur Hand) Dies scheint ein FreeBSD-zentriertes Angebot zur Verwaltung von Ressourcen in einer Clusterumgebung zu sein (d. h. sicherstellen, dass der Webserver jederzeit auf mindestens einem der Knoten im Cluster verfügbar ist usw.)