Spiegelserverinfrastruktur

aus openSUSE, der freien Wissensdatenbank

(Weitergeleitet von Spiegelserver Infrastruktur)

Dieses Dokument beschreibt die verschieden Wege, wie der Inhalt von ftp.opensuse.org gespiegelt werden kann und wie ein offizieller Spiegelserver etabliert werden kann.

Inhaltsverzeichnis

Öffentliche Server

rsync.opensuse.org

Dieser Server bietet einen öffentlichen Zugriff auf den Inhalt von ftp.opensuse.org über das rsync-Protokoll an. Er ist momentan auf 50 gleichzeitige Verbindungen begrenzt, weshalb es sein könnte, dass Sie nicht immer darauf zugreifen können. Verschiedene Spiegelserver bieten ebenfalls einen rsync-Dienst an.

rsync-Module

allgemeine ftp.opensuse.org-Module:

opensuse-hotstuff-160gb: Die meistangefragten Dateien, die in 160 GB passen. Dies umfasst zur Zeit das Installationspaketdepot, die CD/DVD-Medien des aktuellen Produkts, seine Aktualisierungen und die beliebtesten anderen Paketdepots.
opensuse-hotstuff-80gb: Eine eingeschränktere Auswahl beliebter Dateien, die in 80 GB passen. Nutzen Sie dieses Modul, wenn Sie stark begrenzten Speicherplatz haben. Dennoch gehen die meisten Anfragen an Dateien in diesem Modul, weshalb es nützlich ist, auch "nur" diese Dateien zu spiegeln.
opensuse-updates: Dieses rsync-Modul stellt den /update-Baum bereit, der die offiziellen Aktualisierungen für veröffentlichte openSUSE-Distributionen enthält, beginnend mit openSUSE 10.3. (Um Aktualisierungen für ältere Veröffentlichungen zu spiegeln, prüfen Sie rsync://ftp.suse.com/suse/update/.)
opensuse-full: Dieses Modul bietet bis auf das Verzeichnis SL-OSS-factory den kompletten Inhalt von ftp.opensuse.org an. SL-OSS-factory wird ausgeschlossen, weil sich sein Inhalt ständig verändert. Sie sollten stattdessen drpmsync benutzen um dieses Verzeichnis zu aktualisieren, da es im Vergleich zu rsync den Datenverkehr auf unter 10% reduziert.
opensuse-full-with-factory: Das selbe wie vorher, diesmal aber mit SL-OSS-factory-Verzeichnis, welche die Factory Distribution enthält. Wir empfehlen aber weiterhin, dieses Modul nicht zu benutzen. Sie können das "drpmsync"-Verzeichnis ausschließen, wenn Sie nicht planen, einen drpmsync-Server zu unterhalten.
opensuse-stable: Nur die stabile Version von SUSE Linux wird gespiegelt. Eine Aktualisierung steht etwa alle acht Monate an.
opensuse-current: Nur die aktuellste Entwicklerversion (Alpha, Beta oder RC) wird gespiegelt. Eine Aktualisierung wird in der Alpha-Phase jeden Monat und in der Beta-Phase jede Woche vorgenommen.

Module zur Spiegelung der Build Service-Paketdepots:

buildservice-repos: Der komplette Inhalt
buildservice-repos-main: Alles, bis auf die home:-Projekte der Nutzer

Aktualisierungen passieren jederzeit, wann immer ein Paketdepot des Build Service neu gebaut und aktualisiert wird. Es ist auch möglich, die Aktualisierungen gepushed zu bekommen.


Module zur Spiegelung des drpmsync-Baums:

opensuse-drpmsync: nur distribution/SL-OSS-factory/drpmsync Baum (OSS-Teil)
opensuse-drpmsync-nonoss: nur distribution/SL-Factory-non-oss/drpmsync Baum (non-OSS-Teil)
opensuse-full-with-factory-drpmsync: Das selbe wie opensuse-full-with-factory, enthält auch den drpmsync-Baum.

Fall Sie die drpmsync-Bäume spiegeln wollen, dann seien Sie sich im Klaren darüber, dass die enorme Anzahl von Dateien (~200000) zu sehr hohem Datenverkehrsaufkommen auf rsync.opensuse.org führen wird. Vermeiden Sie dies bitte nach Möglichkeit.


drpmsync.opensuse.org

Drpmsync ist ein Synchronisierungsdienst für die Factory Distribution. Er reduziert den Dantentransfer auf ein Minimum, indem er nur xdelta-Daten übermittelt, falls die lokalen RPMS nicht älter als einen Monat sind.

Drpmsync bietet nur Zugang zum SL-OSS-factory-Verzeichnis. Dieses Verzeichnis enthält immer den letzten Entwicklungsstand der Distribution, wodurch es auch einen inkonsistenten oder fehlerhaften Zustand beinhalten kann. Es ist nützlich für Entwickler, um den neuesten Code zu erhalten oder für Tester um den letzten Entwicklungsstand zu überprüfen.

Einen drpmsync-Klienten können Sie im Paket deltarpm finden oder von http://download.opensuse.org/tools/drpmsync/ herunterladen. Aufrufen können Sie ihn beispielsweise so:

  drpmsync drpmsync.opensuse.org:8888/Factory /mein/verzeichnis

Beachten Sie bitte, dass drpmsync.opensuse.org schwer beansprucht sein könnte, wir suchen deshalb nach öffentlichen Spiegelservern welche ebenfalls einen drpmsync-Server unterhalten möchten. Kontaktieren Sie uns, wenn Sie solch einen ebenfalls laufen lassen wollen.


Zugang für registrierte Server

stage.opensuse.org

Einige stark eingebundene Spiegelserver erhalten Zugriff auf stage.opensuse.org. Dieser Server bietet den aktualisierten Inhalt von ftp.opensuse.org vor der offiziellen Veröffentlichung an und verfügt über eine höhere Transferrate als die öffentlichen Server. Wenn ihr Server über mindestens 100MBit Bandbreite verfügt, möchten Sie sich vielleicht bei mailto:ftpadmin@suse.de für einen Zugang registrieren. Dieser Server bietet sowohl rsync-, als auch drpmsync-Dienste an.

Pushing-Unterstützung für Build Service-Aktualisierungen

stage.opensuse.org beherbergt auch den kompletten Inhalt des Build Service. Da die Aktualisierungen die ganze Zeit über geschehen, wann immer ein neuer Paketsazt gebaut wurde, ist es genauso möglich, die Inhalte zugeschoben (pushed) zu bekommen, anstatt ständig danach anfragen (polling) zu müssen. Dies benötigt aber rsync-Schreibzugriff für stage.opensuse.org auf ihrem Server. Die Vorteile dabei sind, dass

  • der Spiegelserver immer aktuell ist,
  • keine Notwendigkeit besteht, rsync-Aufrufe über alle Paketdepots laufen lassen zu müssen. Das pushing wird nur die Depots aktualisieren, in denen sich etwas geändert hat. Die reduziert die E/A-Last auf dem Spiegel maßgeblich.
  • der Weiterleiter, der auf http://download.opensuse.org/ läuft, darüber in Kenntnis ist, dass die Pakete aktualisiert wurden und so sofort auf den Spiegelserver weiterleiten kann.

Wie wird man zu einem pushed Spiegelserver?

Der normale Weg (wir können allerdings auch einen alternativen Weg anbieten) besteht darin, ein rsync-Modul auf ihrem Server aufzumachen, auf welches stage.opensuse.org Schreibzugriff erhält. Eine Anmeldung und ein Passowrt sind optional möglich, aber nicht wirklich notwendig. Schreiben Sie dann bitte eine E-Mail an mailto:ftpadmin@suse.de , in der Sie uns die folgenden Informationen mitteilen:

  • den Servernamen, auf den gepushed werden soll
  • das zu nutzende rsync-Modul
  • ein eventuell benötigtes Nutzerkonto samt Passwort
  • Was Sie spiegel wollen (alles oder nur einige bestimmte Projekte)
  • Wie die öffentliche URL zum Herunterladen lauten wird.
  • Alle Arten spezieller Wünsche :)

Dann benötigen wir noch rsync-Lesezugriff, um ihren Spiegelserver für unseren Weiterleiter überprüfen zu können. Die Weiterleiterdatenbank muss periodisch aktualisiert werden, so dass sie die aktuellen Dateien auf ihrem Spiegel kennt. Die Prüfung geschieht von 195.135.220.0/22.

Der push pausiert zwischen 1:00 und 2:00 MESZ und zwischen 13:00 und 14:00 MESZ. Wenn Sie von ihrer Seite aus einen pulling rsync laufen lassen wollen, dann ist dies die beste Zeit dafür.


Registrieren Sie ihren Spiegelserver

Um Clients an ihren Spiegelserver weiterleiten zu können, benötigen wir folgendes:

  • E-Mail-Adresse zur Kontaktaufnahme
  • HTTP URL auf ihrem Spiegelserver (bspw. http://ihrspiegelserver.beispiel.de/pub/opensuse/)
  • Ist ihr Spiegel in der Lage, große Dateien zu handhaben? (um Abbilder größer als 2Gb handhaben zu können)
  • nur-lesen rsync-Zgriff für unseren Scanner -- für Überprüfungen, die wir durchführen, um unsere Weiterleiterdatenbank aktuell zu halten. Die geschieht von 195.135.220.0/22.
  • FTP URL, falls Sie einen FTP-Server laufen haben. Kann als Rückfallprotokoll für das Scannen dienen, falls rsync nicht verfügbar ist.

Falls Sie diese Informationen in einem Schreiben an mailto:ftpadmin@suse.de, werden wir ihren Spiegelserver zu unserer Spiegelserverdatenbank hinzufügen. Die Spiegelserverdatenbank wird von unserem Weiterleitungsdienst verwendet, um Clients aktiv auf ihren Server weiterleiten zu können. Wir versuchen, Anfragen auf geographischer Grundlage über die Client-IP-Adresse zu verteilen. Die Menge an Weiterleitungen hängt auch von einer Punktzahl ab, welche wir gemeinsam mit ihnen ermitteln werden, um Kapazitäten genau zu treffen.

Weiterhin überwachen wir aktiv den Inhalt auf Spiegelservern, so dass wir nur auf Dateien weiterleiten, die auch aktuell auf einem Spiegelserver existieren. rsync ist dafür die effektivste Methode; die Überprüfung von 300.00 Dateien dauert damit nur wenige Minuten. Die zweitbeste Methode, falls rsync nicht verfügbar ist, nutzt FTP, allerdings ist dies weniger effizient (dauert beträchtlich länger und verursacht auf ihrem Server mehr Last). Als allerletzte Möglichkeit können wir auch noch auf HTTP zurückfallen, falls weder rsync noch FTP verfügbar sind. Allerdings erreicht man dann nur Schneckentempo. Folglich sollten Sie bitte ein rsync-Modul für den openSUSE-Inhalt in Betracht ziehen, welches eine wesentlich schnellere Überprüfung ihres Servers ermöglicht.


Vielleicht wollen Sie ihren Spiegelserver zu unseren offiziellen Listen für die stabile Version oder die Entwicklerversion hinzufügen. Dies ist ein Wiki, klicken Sie einfach oben auf die Verknüpfung "bearbeiten", am besten auch noch "edit" im englischen Wiki ;)


Einrichtung eines Spiegelservers

Anleitung zur Einrichtung eines Spiegelservers


Planung: Größe & Aktualisierungsfrequenz

Nächtliche Statistik der rsync-Modulgrößen:

Größe Pfad des Baums Frequenz der Aktualisierung
25G distribution/10.2/iso selten/nie
36G distribution/10.2/repo selten/nie
20G distribution/10.3/iso selten/nie
51G distribution/10.3/repo selten/nie


18G update häufig (Synchronisierung alle 4-24 Stunden)

Dieser Baum wird wachsen. Ende 2008 wird eine Größe von 35G erwartet. wuchs innerhalb von einem Jahr auf 15G an

235G repositories (mit home:/) sehr oft -- push rsync empfohlen
133G repositories (ohne home:/) sehr oft -- push rsync empfohlen


<160G [opensuse-hotstuff-160gb] unterschiedlich (synchronisieren Sie all sechs Stunden)
<80G [opensuse-hotstuff-80gb] unterschiedlich (synchronisieren Sie all sechs Stunden)


(Stand 19. Mai 2008)


Informiert bleiben

Die Mailing-Liste mirror@opensuse.org (vormals suse-mirror@suse.de) ist recht ruhig und wird hauptsächlich für Ankündigungen genutzt. Sie ist auch ein guter Ort für Diskussionen rund um die Spiegelung von openSUSE-Inhalt, sollte diese nötig sein. Zum Abonnieren schreiben Sie bitte an mailto:ftpadmin@suse.de (da dies eine geschlossene Liste ist).

Die allgemeine Kontaktadresse lautet: mailto:ftpadmin@suse.de