Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Bestätigen der Konfiguration

Mit dem commit Befehl configuration mode können Sie die Änderungen an der Gerätekonfiguration in der Konfigurationsdatenbank speichern und die Konfiguration auf dem Gerät aktivieren.

Das Commit-Modell für Konfigurationen

Die Gerätekonfiguration wird mithilfe eines Commit-Modells gespeichert – eine Kandidatenkonfiguration wird wie gewünscht geändert und dann an das System übergeben. Wenn eine Konfiguration festgeschrieben wird, prüft das Gerät die Konfiguration auf Syntaxfehler, und wenn keine Fehler gefunden werden, wird die Konfiguration gespeichert juniper.conf.gz und aktiviert. Die ehemals aktive Konfigurationsdatei wird als erste Rollback-Konfigurationsdatei (juniper.conf.1.gz) gespeichert, und alle anderen Rollback-Konfigurationsdateien werden um 1 erhöht. Wird z. B. auf juniper.conf.2.gzinkrementiert, juniper.conf.1.gzwas sie zur zweiten Rollback-Konfigurationsdatei macht. Auf dem Gerät können maximal 49 Rollback-Konfigurationen (mit den Nummern 1 bis 49) auf dem System gespeichert sein.

Auf dem Gerät befinden sich die aktuelle Konfigurationsdatei und die ersten drei Rollback-Dateien (juniper.conf.gz.1, juniper.conf.gz.2, juniper.conf.gz.3) im /config Verzeichnis. (Die restlichen Rollback-Dateien 4 bis 49 befinden sich in /var/db/config.)

Wenn die Wiederherstellungskonfigurationsdatei rescue.conf.gz vorhanden ist, befindet sich diese Datei ebenfalls im /config Verzeichnis. Die werkseitig voreingestellten Dateien befinden sich im /etc/config Verzeichnis.

Es gibt zwei Mechanismen, die verwendet werden, um die Konfigurationen zwischen Routing-Engines innerhalb eines Geräts weiterzugeben:

  • Synchronisation: Überträgt eine Konfiguration von einer Routing-Engine an eine zweite Routing-Engine innerhalb desselben Gerätegehäuses.

    Verwenden Sie zum Synchronisieren von Konfigurationen den commit synchronize CLI-Befehl. Wenn eine der Routing-Engines gesperrt ist, schlägt die Synchronisierung fehl. Wenn die Synchronisierung aufgrund einer gesperrten Konfigurationsdatei fehlschlägt, können Sie den commit synchronize force Befehl verwenden. Mit diesem Befehl wird die Sperre außer Kraft gesetzt und die Konfigurationsdateien synchronisiert.

  • Verteilung: Gibt eine Konfiguration über die Routingebene auf einem Gerät mit mehreren Chassis weiter. Die Verteilung erfolgt automatisch. Es steht kein Benutzerbefehl zur Steuerung des Verteilungsprozesses zur Verfügung. Wenn eine Konfiguration während einer Verteilung einer Konfiguration gesperrt wird, erhält die gesperrte Konfiguration die verteilte Konfigurationsdatei nicht, sodass die Synchronisierung fehlschlägt. Sie müssen die Sperre vor der Konfiguration aufheben und die Routingebenen neu synchronisieren.

    HINWEIS:

    Wenn Sie den commit synchronize force CLI-Befehl auf einer Multichassis-Plattform verwenden, wirkt sich die erzwungene Synchronisierung der Konfigurationsdateien nicht auf die Verteilung der Konfigurationsdatei über die Routingebene aus. Wenn eine Konfigurationsdatei auf einem Gerät gesperrt ist, das von dem Gerät entfernt ist, auf dem der Befehl ausgegeben wurde, schlägt die Synchronisierung auf dem Remotegerät fehl. Sie müssen die Sperre aufheben und den synchronization Befehl erneut ausführen.

Bestätigen einer Gerätekonfiguration

Verwenden Sie den commit Befehl Konfigurationsmodus, um Änderungen an der Gerätekonfiguration in der Konfigurationsdatenbank zu speichern und die Konfiguration auf dem Gerät zu aktivieren. Sie können den commit Befehl von einer beliebigen Hierarchieebene aus ausgeben:

Bei der Eingabe des commit Befehls wird die Konfiguration zunächst auf Syntaxfehler (commit check) überprüft. Wenn die Syntax korrekt ist, wird die Konfiguration aktiviert und zur aktuellen, betriebsbereiten Gerätekonfiguration.

HINWEIS:

Es wird nicht empfohlen, einen Commit-Vorgang für die Backup-Routing-Engine durchzuführen, wenn der ordnungsgemäße Routing-Engine-Switchover auf dem Router aktiviert ist.

Ein Konfigurationscommit kann aus einem der folgenden Gründe fehlschlagen:

  • Die Konfiguration enthält eine falsche Syntax, die dazu führt, dass die Commit-Prüfung fehlschlägt.

  • Die Kandidatenkonfiguration, für die Sie einen Commit ausführen möchten, ist größer als 700 MB.

  • Die Konfiguration wird von einem Benutzer gesperrt, der den configure exclusive Befehl eingegeben hat.

Wenn die Konfiguration Syntaxfehler enthält, wird in einer Meldung der Ort des Fehlers angegeben, und die Konfiguration ist nicht aktiviert. Die Fehlermeldung hat folgendes Format:

Zum Beispiel:

Sie müssen den Fehler korrigieren, bevor Sie die Konfiguration erneut bestätigen. Um schnell zu der Hierarchieebene zurückzukehren, auf der sich der Fehler befindet, kopieren Sie den Pfad aus der ersten Zeile des Fehlers, und fügen Sie ihn an der Eingabeaufforderung für den Konfigurationsmodus auf der [edit] Hierarchieebene ein.

Die nicht festgeschriebene Kandidatenkonfigurationsdatei ist /var/rundb/juniper.db. Es ist auf 700 MB begrenzt. Wenn der Commit mit einer Meldung configuration database size limit exceededfehlschlägt, zeigen Sie die Dateigröße im Konfigurationsmodus an, indem Sie den Befehl run file list /var/rundb detaileingeben. Sie können die Konfiguration vereinfachen und die Dateigröße reduzieren, indem Sie Konfigurationsgruppen mit Platzhaltern erstellen oder weniger spezifische Übereinstimmungsrichtlinien in Ihren Firewallfiltern definieren.

HINWEIS:

CLI-Commit-Time-Warnungen, die für Konfigurationsänderungen auf Hierarchieebene [edit interfaces] angezeigt werden, werden entfernt und als Systemprotokollmeldungen protokolliert.

Dies gilt auch für die VRRP-Konfiguration auf den folgenden Hierarchieebenen:

  • [edit interfaces interface-name unit logical-unit-number family (inet | inet6) address address]

  • [edit logical-systems logical-system-name interfaces interface-name unit logical-unit-number family (inet | inet6) address address]

Wenn Sie einen Commit für eine Konfiguration ausführen, bestätigen Sie die gesamte Konfiguration in ihrer aktuellen Form.

HINWEIS:
  • Es wird nicht empfohlen, einen Commit-Vorgang für die Backup-Routing-Engine auszuführen, wenn die ordnungsgemäße Routing-Engine-Umschaltung auf dem Gerät aktiviert ist.

  • Wenn Sie dieselbe IP-Adresse für eine Verwaltungsschnittstelle oder eine interne Schnittstelle fxp0 und eine externe physische Schnittstelle konfigurieren ge-0/0/1, wenn GRES (Graceful Routing Engine Switchover) aktiviert ist, zeigt die CLI eine entsprechende Commit-Fehlermeldung an, dass auf der privaten und der öffentlichen Schnittstelle identische Adressen gefunden wurden. In solchen Fällen müssen Sie eindeutige IP-Adressen für die beiden Schnittstellen zuweisen, die doppelte Adressen aufweisen.

Commit-Vorgang, wenn mehrere Benutzer die Software konfigurieren

Bis zu 32 Benutzer können sich gleichzeitig im Konfigurationsmodus befinden und Änderungen an der Konfiguration vornehmen. Alle Änderungen, die von allen Benutzern vorgenommen werden, sind für alle Benutzer sichtbar, die die Konfiguration bearbeiten – die Änderungen werden sichtbar, sobald der Benutzer die Eingabetaste am Ende eines Befehls drückt, der die Konfiguration ändert, z. B set. , editoder delete.

Wenn einer der Benutzer, der die Konfiguration bearbeitet, einen commit Befehl ausgibt, überprüft und aktiviert die CLI alle Änderungen durch alle Benutzer.

Wenn Sie mit dem Befehl in den configure private Konfigurationsmodus wechseln, hat jeder Benutzer eine private Kandidatenkonfiguration, die er etwas unabhängig von anderen Benutzern bearbeiten kann. Wenn Sie einen Commit für die Konfiguration ausführen, übernimmt die CLI nur Ihre eigenen Änderungen. Um Ihre Kopie der Konfiguration zu synchronisieren, nachdem andere Benutzer Änderungen übernommen haben, können Sie den update Befehl im Konfigurationsmodus ausführen. Bei einem Commit-Vorgang werden auch alle privaten Kandidatenkonfigurationen aktualisiert. Angenommen, Benutzer X und Benutzer Y befinden sich beide im configure private Modus und Benutzer X führt einen Commit für eine Konfigurationsänderung aus. Wenn Benutzer Y einen nachfolgenden Commit-Vorgang ausführt und dann die neue Konfiguration anzeigt, enthält die neue Konfiguration, die Benutzer Y sieht, die von Benutzer X vorgenommenen Änderungen.

Wenn Sie mit dem Befehl in den configure exclusive Konfigurationsmodus wechseln, sperren Sie die Kandidatenkonfiguration so lange, wie Sie im Konfigurationsmodus bleiben. Auf diese Weise können Sie Änderungen vornehmen, ohne dass andere Benutzer eingreifen. Andere Benutzer können in den Konfigurationsmodus wechseln und ihn beenden, aber sie können die Konfiguration nicht bestätigen. Dies gilt auch dann, wenn die anderen Benutzer vor der Eingabe des Befehls in den configure exclusive Konfigurationsmodus gewechselt sind. Angenommen, Benutzer X befindet sich bereits im configure private oder-Modus configure . Angenommen, Benutzer Y wechselt in den configure exclusive Modus. Benutzer X kann keine Änderungen an der Konfiguration übernehmen, selbst wenn Benutzer X diese Änderungen eingegeben hat, bevor sich Benutzer Y angemeldet hat. Wenn Benutzer Y den Modus verlässt configure exclusive , kann Benutzer X die in configure private oder configure -Modus vorgenommenen Änderungen übernehmen.

Übersicht über die Commit-Vorbereitung und -Aktivierung

Sie können den Commit-Vorgang in zwei Schritten abschließen. Die zweistufige Commit-Funktion ermöglicht es Ihnen, mehrere Geräte zu konfigurieren und die Konfigurationen gleichzeitig zu aktivieren. Der zweistufige Commit bietet ein endgültiges Zeitfenster, in dem der Commit auf dem System wirksam wird. Sie können in den Commit-Modus wechseln, nachdem der Commit vorbereitet wurde, aber Sie erhalten eine Meldung, dass die Aktivierung des Commits aussteht.

Im ersten Schritt, der Vorbereitungsphase, wird der Commit validiert und eine neue Datenbank mit den notwendigen Dateien generiert. Wenn die Konfiguration Syntaxfehler enthält, wird eine entsprechende Fehlermeldung angezeigt, und die Konfiguration wird nicht vorbereitet. Bei einem Fehler während der Vorbereitungsphase wird die Fehlermeldung commit check-out failedangezeigt.

Im zweiten Schritt, der Aktivierungsstufe, wird die zuvor vorbereitete Konfiguration aktiviert. Wenn Sie als Nächstes die vorbereitete Konfiguration löschen müssen, können Sie dies mit dem clear system commit prepared Befehl tun. Nach erfolgreichem Löschen des ausstehenden Commits wird eine Protokollmeldung generiert.

HINWEIS:

Es wird empfohlen, zwischen den Vorbereitungs- und Aktivierungsphasen keine Änderungen an der Konfiguration vorzunehmen.

Der zweistufige Commit-Prozess ist dem einstufigen Prozess für zeitkritische Commits überlegen. Im einstufigen Prozess kann die Vorbereitungszeit je nach vorhandener Konfiguration auf dem Gerät variieren. Im zweistufigen Prozess werden die komplexen Vorbereitungsarbeiten effizienter abgewickelt.

Es werden Konfigurationsbefehle bereitgestellt, mit denen Sie den Konfigurationscache vorbereiten und die Konfiguration aktivieren können. Sie können die Geräte mit neuen Konfigurationen vorbereiten und sie genau zu den von Ihnen gewünschten Zeiten aktivieren.

Der commit prepare Befehl überprüft die Konfigurationen, und der commit activate Befehl aktiviert die Konfigurationen. Die Befehle verfügen über die folgenden Konfigurationsoptionen:

  • and-quit

  • no-synchronize

  • peers-synchronize

  • synchronize

Die commit prepare Befehle und commit activate sind nur für private, exklusive und freigegebene Commits verfügbar. Die Befehle gelten nicht für dynamische und flüchtige Modi. Diese Funktion gilt für Geräte mit mehreren Chassis, jedoch nicht für Batch-Commits.

Um diese Funktionalität mithilfe von NETCONF (Network Configuration Protocol) zu unterstützen, werden die folgenden neuen Remote Procedure Calls (RPCs) bereitgestellt:

  • <commit-configuration>< prepare/></commit-configuration>

  • <commit-configuration><activate/></commit-configuration>

  • <clear-system-commit><prepared/></clear-system-commit>

HINWEIS:
  • In einem Virtual Chassis-Setup der MX-Serie gilt Folgendes: Wenn commit prepare eine Routing-Engine gefolgt von einem Switchover ausgegeben wird, wird die Routing-Engine, an der der Switchover-Befehl ausgegeben wird, neu gestartet. Daher wird der vorbereitete Cache in dieser Routing-Engine gelöscht.

  • In einem Virtual Chassis-Setup der MX-Serie ist es ratsam, den Befehl nur auf dem primären VC auszuführen clear system commit prepared .

Bestätigen Sie Gerätekonfigurationen in zwei Schritten: Vorbereitung und Aktivierung

Sie können den Commit-Vorgang in zwei Schritten abschließen. Auf diese Weise können Sie mehrere Geräte konfigurieren und die Konfigurationen können gleichzeitig aktiviert werden. Im ersten Schritt, der sogenannten Vorbereitungsphase, wird der Commit validiert und eine neue Datenbank mit den erforderlichen Dateien generiert. Wenn die Konfiguration Syntaxfehler enthält, wird eine entsprechende Fehlermeldung angezeigt, und die Konfiguration wird nicht vorbereitet. Im zweiten Schritt, der sogenannten Aktivierungsphase, wird die zuvor vorbereitete Konfiguration aktiviert und zur aktuellen, betriebsbereiten Gerätekonfiguration.

So bereiten Sie die Konfiguration vor:

  1. Nehmen Sie auf Hierarchieebene [edit] im Konfigurationsmodus die erforderlichen Änderungen an der Konfiguration vor.

    Um beispielsweise die Skripts des Systems zu konfigurieren, geben Sie den folgenden Befehl ein:

    Zum Beispiel:

  2. Geben Sie den commit prepare Befehl ein.

    Die Meldung commit prepare successful wird angezeigt.

    Wenn die Vorbereitungsphase fehlschlägt, wird die Fehlermeldung commit check-out failed angezeigt.

  3. Verwenden Sie den folgenden Befehl, um die Ausgabe des show system commit Befehls nach commit prepare der Ausgabe zu überprüfen:

So aktivieren Sie die vorbereitete Konfiguration:

  1. Verwenden Sie den commit activate Befehl

    Die Meldung commit complete wird angezeigt.

  2. Um die aktivierte Systemkonfiguration zu überprüfen, verwenden Sie den folgenden Befehl:

Um die Ausgabe der show system commit Befehle and show system commit revision detail nach commit activate der Ausgabe zu überprüfen, geben Sie die folgenden Befehle ein.

Aktivieren einer Gerätekonfiguration mit Bestätigung

Wenn Sie die aktuelle Kandidatenkonfiguration bestätigen, können Sie eine explizite Bestätigung anfordern, damit der Commit dauerhaft wird. Dies ist nützlich, wenn Sie überprüfen möchten, ob eine Konfigurationsänderung ordnungsgemäß funktioniert und den Zugriff auf das Gerät nicht verhindert. Wenn die Änderung den Zugriff verhindert oder andere Fehler verursacht, kehrt das Gerät automatisch zur vorherigen Konfiguration zurück und stellt den Zugriff wieder her, nachdem das Zeitlimit für die Rollbackbestätigung abgelaufen ist. Diese Funktion wird als automatisches Rollback bezeichnet.

Um die aktuelle Kandidatenkonfiguration zu bestätigen, aber eine explizite Bestätigung zu benötigen, damit der Commit dauerhaft wird, verwenden Sie den commit confirmed Befehl configuration mode:

Nachdem Sie sich vergewissert haben, dass die Änderung ordnungsgemäß funktioniert, können Sie die neue Konfiguration aktiv halten, indem Sie innerhalb von 10 Minuten nach dem commit confirmed Befehl einen commitoder-Befehl commit check eingeben. Zum Beispiel:

Wenn der Commit nicht innerhalb einer bestimmten Zeit (standardmäßig 10 Minuten) bestätigt wird, wird das Betriebssystem automatisch auf die vorherige Konfiguration zurückgesetzt und eine Broadcast-Nachricht an alle angemeldeten Benutzer gesendet.

Um anzuzeigen, wann nach einem commit confirmed Befehl ein Rollback geplant ist, geben Sie den show system commit Befehl ein. Zum Beispiel:

Wie der commit Befehl überprüft auch der commit confirmed Befehl die Konfigurationssyntax und meldet alle Fehler. Wenn keine Fehler auftreten, wird die Konfiguration vorübergehend aktiviert (standardmäßig 10 Minuten) und auf dem Gerät ausgeführt.

Abbildung 1: Bestätigen einer KonfigurationBestätigen einer Konfiguration

Um die Zeitspanne zu ändern, bevor Sie die neue Konfiguration bestätigen müssen, geben Sie die Anzahl der Minuten an, wenn Sie den Befehl ausgeben:

Sie können den commit confirmed Befehl auch im [edit private] Konfigurationsmodus verwenden.

Planen eines Commit-Vorgangs

Sie können festlegen, wann Ihre Kandidatenkonfiguration aktiv werden soll. Um Änderungen an der Gerätekonfiguration zu speichern und die Konfiguration auf dem Gerät zu einem späteren Zeitpunkt oder nach einem Neustart zu aktivieren, verwenden Sie den commit at Befehl configuration mode und geben Sie auf der Hierarchieebene [edit] einen zukünftigen Zeitpunkt anreboot:

string ist reboot oder der zukünftige Zeitpunkt, um die Konfigurationsänderungen zu aktivieren. Sie können die Uhrzeit in zwei Formaten angeben:

  • Ein Zeitwert im Format hh:mm[:ss] (Stunden, Minuten und optional Sekunden): Bestätigen Sie die Konfiguration zum angegebenen Zeitpunkt, der in der Zukunft, aber vor 23:59:59 Uhr an dem Tag liegen muss, an dem der commit at Konfigurationsmodusbefehl ausgegeben wird. Verwenden Sie eine 24-Stunden-Zeit für den hh Wert, z. B. 04:30:00 4:30:00 Uhr und 20:00 20:00 Uhr. Die Uhrzeit wird in Bezug auf die Uhr- und Zeitzoneneinstellungen auf dem Router interpretiert.

  • Ein Datums- und Uhrzeitwert im Format yyyy-mm-dd hh:mm[:ss] (Jahr, Monat, Datum, Stunden, Minuten und optional Sekunden): Bestätigen Sie die Konfiguration am angegebenen Tag und zur angegebenen Uhrzeit, die nach der Ausgabe des commit at Befehls erfolgen muss. Verwenden Sie 24-Stunden-Zeit für den hh Wert. Beispiel: 2018-08-21 12:30:00 Am 21. August 2018 ist es 12:30 Uhr. Die Uhrzeit wird in Bezug auf die Uhr- und Zeitzoneneinstellungen auf dem Router interpretiert.

Schließen Sie den string Wert in Anführungszeichen (" ") ein. Beispiel: commit at "18:00:00". Fügen Sie für Datum und Uhrzeit beide Werte in denselben Satz von Anführungszeichen ein. Zum Beispiel commit at "2018-03-10 14:00:00".

Eine Commit-Prüfung wird sofort durchgeführt, wenn Sie den commit at Befehl configuration mode absetzen. Wenn das Ergebnis der Überprüfung erfolgreich ist, wird der aktuelle Benutzer aus dem Konfigurationsmodus abgemeldet, und die Konfigurationsdaten verbleiben in einem schreibgeschützten Zustand. Es kann kein weiterer Commit ausgeführt werden, bis der geplante Commit abgeschlossen ist.

HINWEIS:

Wenn die Gerätesoftware ausfällt, bevor die Konfigurationsänderungen aktiv werden, gehen alle Konfigurationsänderungen verloren.

Sie können den commit at Konfigurationsbefehl nicht mehr eingeben, nachdem Sie den request system reboot Befehl ausgegeben haben.

Sie können den Befehl nicht eingeben, request system reboot nachdem Sie einen Commit-Vorgang für einen bestimmten Zeitpunkt in der Zukunft geplant haben.

Sie können keine Konfiguration festschreiben, wenn ein geplanter Commit aussteht. Informationen zum Abbrechen einer geplanten Konfiguration mithilfe des clear Befehls finden Sie im CLI-Explorer.

HINWEIS:

Es wird nicht empfohlen, einen Commit-Vorgang für die Backup-Routing-Engine auszuführen, wenn die ordnungsgemäße Routing-Engine-Umschaltung auf dem Gerät aktiviert ist.

Überwachen des Commit-Prozesses

Um den Commit-Prozess für die Gerätekonfiguration zu überwachen, verwenden Sie den display detail Befehl nach der Pipe mit dem commit folgenden Befehl:

Zum Beispiel:

Fügen Sie einen Kommentar hinzu, um die festgeschriebene Konfiguration zu beschreiben

Sie können einen Kommentar einfügen, der Änderungen an der festgeschriebenen Konfiguration beschreibt. Fügen Sie dazu die commit comment Anweisung ein. Der Kommentar kann bis zu 512 Byte lang sein und Sie müssen ihn in einer einzigen Zeile eingeben.

comment-string ist der Text des Kommentars.

HINWEIS:

Sie können dem commit check Befehl keinen Kommentar hinzufügen.

Um dem commit Befehl einen Kommentar hinzuzufügen, fügen Sie die comment Anweisung nach dem commit Befehl ein:

Um dem commit confirmed Befehl einen Kommentar hinzuzufügen, fügen Sie die comment Anweisung nach dem commit confirmed Befehl ein:

Um diese Commit-Kommentare anzuzeigen, geben Sie den show system commit Befehl operational mode ein.

HINWEIS:

Sie können den commit confirmed Befehl auch im [edit private] Konfigurationsmodus verwenden.

Ab Junos OS Version 24.2R1 erzwingt Junos OS, dass Sie für jede Commit-Anforderung einen Kommentar abgeben. Dies hilft dabei, Änderungen zu verfolgen, die von mehreren Benutzern oder Administratoren zum Zeitpunkt der Übertragung vorgenommen wurden.

HINWEIS:

Der commit Befehl wird ohne das comment Argument nicht ausgeführt.

Um zu erzwingen, dass der Benutzer für jede Commit-Anforderung einen Kommentar hinzufügt, konfigurieren force-commit-log Sie die Option auf Hierarchieebene [edit system commit] .

Übersicht über Batch-Commits

Batch-Commit aggregiert oder führt mehrere Konfigurationsänderungen aus verschiedenen CLI-Sitzungen oder Benutzern zusammen und fügt sie einer Batch-Commit-Warteschlange hinzu. Ein auf dem Gerät ausgeführter Batch-Commit-Server übernimmt einen oder mehrere Aufträge aus der Batch-Commit-Warteschlange, wendet die Konfigurationsänderungen auf die freigegebene Konfigurationsdatenbank an und führt dann einen Commit für die Konfigurationsänderungen in einem einzigen Commit-Vorgang aus.

Batches werden vom Commit-Server basierend auf der Priorität des vom Benutzer angegebenen Batches oder dem Zeitpunkt, zu dem der Batchauftrag hinzugefügt wird, priorisiert. Wenn ein Batch-Commit abgeschlossen ist, werden die nächsten Konfigurationsänderungen aggregiert und in die Batch-Warteschlange für die nächste Sitzung des Batch-Commit-Vorgangs geladen. Batches werden so lange erstellt, bis keine Commit-Einträge mehr im Warteschlangenverzeichnis vorhanden sind.

Im Vergleich zum regulären Commit-Vorgang, bei dem alle Commits unabhängig voneinander sequenziell festgeschrieben werden, sparen Batch-Commits Zeit und Systemressourcen, indem sie mehrere kleine Konfigurationsänderungen in einem einzigen Commit-Vorgang ausführen.

Batch-Commits werden im [edit batch] Konfigurationsmodus ausgeführt. Die Eigenschaften des Commit-Servers können auf Hierarchieebene [edit system commit server] konfiguriert werden.

Aggregation und Fehlerbehandlung

Wenn in einem der aggregierten Aufträge ein Ladezeitfehler auftritt, wird der Commitauftrag, bei dem der Fehler auftritt, verworfen, und die verbleibenden Aufträge werden aggregiert und festgeschrieben.

Wenn z. B. fünf Commitaufträge (commit-1, commit-2, , commit-3commit-4und commit-5) aggregiert werden und commit-3 beim Laden ein Fehler auftritt, commit-3 wird verworfen und commit-1, commit-2, commit-4und commit-5 werden aggregiert und festgeschrieben.

Wenn während des Commitvorgangs ein Fehler auftritt, wenn zwei oder mehr Aufträge aggregiert und festgeschrieben werden, wird die Aggregation verworfen, und für jeden dieser Aufträge wird wie bei einem regulären Commitvorgang einzeln ein Commit ausgeführt.

Wenn z. B. fünf Commit-Aufträge (commit-1, commit-2, commit-3, commit-4und commit-5) aggregiert werden und ein Commit-Fehler auftritt, der commit-3durch verursacht wird, wird die Aggregation verworfen, commit-1, commit-3commit-2commit-4, und commit-5 einzeln festgeschrieben, und die CLI meldet einen Commit-Fehler für . commit-3

Beispiel: Konfigurieren der Eigenschaften des Batch-Commit-Servers

In diesem Beispiel wird gezeigt, wie die Eigenschaften des Batchcommitservers konfiguriert werden, um Batchcommitvorgänge zu verwalten.

Anforderungen

In diesem Beispiel werden die folgenden Hardware- und Softwarekomponenten verwendet:

  • Universelle 5G-Routing-Plattform der MX-Serie

Überblick

Sie können steuern, wie die Batch-Commit-Warteschlange vom Commit-Server behandelt wird, indem Sie die Servereigenschaften auf Hierarchieebene [edit system commit server] konfigurieren. Auf diese Weise können Sie steuern, wie viele Commit-Aufträge zu einem einzelnen Batch-Commit zusammengefasst oder zusammengeführt werden, die maximale Anzahl von Aufträgen, die der Warteschlange hinzugefügt werden können, die Tage für die Aufbewahrung von Batch-Commit-Fehlerprotokollen, das Intervall zwischen zwei Batch-Commits und die Ablaufverfolgung von Vorgängen für Batch-Commit-Vorgänge.

Konfiguration

CLI-Schnellkonfiguration

Um diesen Abschnitt des Beispiels schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf Hierarchieebene [edit] ein. Sie können die Eigenschaften des Commit-Servers entweder im regulären [edit] Modus oder im [edit batch] Modus konfigurieren.

Gerät R0

Konfigurieren der Commit-Servereigenschaften

Schritt-für-Schritt-Anleitung
  1. (Optional) Konfigurieren Sie die Anzahl der Commit-Transaktionen, die in einem einzigen Commit-Vorgang aggregiert oder zusammengeführt werden sollen.

    Der Standardwert für maximum-aggregate-pool ist 5.

    HINWEIS:

    Festlegen maximum-aggregate-pool , dass 1 für jeden der Aufträge ein Commit ausgeführt wird.

    In diesem Beispiel wird die Anzahl der Commit-Transaktionen so 4 festgelegt, dass angegeben wird, dass vier verschiedene Commit-Aufträge zu einem einzigen Commit aggregiert werden, bevor der Commit-Vorgang initiiert wird.

  2. (Optional) Konfigurieren Sie die maximal zulässige Anzahl von Aufträgen in einem Batch.

    Dies begrenzt die Anzahl der Commits-Aufträge, die der Warteschlange hinzugefügt werden.

    HINWEIS:

    Wenn Sie auf 1setzenmaximum-entries, kann der Commit-Server der Warteschlange nicht mehr als einen Auftrag hinzufügen, und die CLI zeigt eine entsprechende Meldung an, wenn Sie versuchen, mehr als einen Auftrag zu bestätigen.

  3. (Optional) Konfigurieren Sie die Zeit (in Sekunden), die gewartet werden soll, bevor der nächste Batch-Commit-Vorgang gestartet wird.

  4. (Optional) Konfigurieren Sie die Anzahl der Tage, für die Fehlerprotokolle aufbewahrt werden sollen.

    Der Standardwert ist 30 Tage.

  5. (Optional) Konfigurieren Sie Ablaufverfolgungsvorgänge zum Protokollieren von Batch-Commit-Ereignissen.

    In diesem Beispiel lautet commitd_novder Dateiname für die Protokollierung von Batch-Commit-Ereignissen , und alle traceoptionsflags sind festgelegt.

Ergebnisse

Bestätigen Sie im Konfigurationsmodus Ihre Konfiguration, indem Sie den show system commit server Befehl eingeben. Wenn die Ausgabe nicht die gewünschte Konfiguration anzeigt, wiederholen Sie die Anweisungen in diesem Beispiel, um die Konfiguration zu korrigieren.

Bestätigen der Konfiguration aus dem Batchkonfigurationsmodus

Schritt-für-Schritt-Anleitung

Führen Sie einen der folgenden Schritte aus, um die Konfiguration aus dem [edit batch] Modus heraus zu bestätigen:

  • Melden Sie sich beim Gerät an und geben Sie commitein.

  • Um einem Batch-Commit-Auftrag eine höhere Priorität zuzuweisen, geben Sie den commit Befehl mit der priority Option ab.

  • Wenn Sie einen Commit für eine Konfiguration ausführen möchten, ohne die Konfigurationsänderungen mit anderen Commit-Aufträgen in der Warteschlange zu aggregieren, setzen Sie den commit Befehl mit der atomic Option ab.

  • Um eine Konfiguration zu bestätigen, ohne die Konfigurationsänderungen mit anderen Commit-Aufträgen in der Warteschlange zu aggregieren und dem Commit-Auftrag eine höhere Priorität zuzuweisen, geben Sie den commit Befehl mit der atomic priority Option ab.

Verifizierung

Vergewissern Sie sich, dass die Konfiguration ordnungsgemäß funktioniert.

Überprüfen des Status des Batch-Commit-Servers

Zweck

Überprüfen Sie den Status des Batch-Commit-Servers.

Action!

Standardmäßig ist Not runningder Status des Commit-Servers . Der Commit-Server wird nur ausgeführt, wenn der Warteschlange ein Batch-Commit-Auftrag hinzugefügt wird.

Wenn der Warteschlange ein Batch-Commit-Auftrag hinzugefügt wird, ändert sich der Status des Commit-Servers in Running.

Bedeutung

Das Jobs in process Feld listet die Commit-IDs von Aufträgen auf, die in Bearbeitung sind.

Überprüfen des Batch-Commit-Status

Zweck

Überprüfen Sie die Commit-Serverwarteschlange auf den Status der Batch-Commits.

Action!
Bedeutung

Pending commits Zeigt Commit-Aufträge an, die der Commit-Warteschlange hinzugefügt, aber noch nicht festgeschrieben wurden. Completed commits Zeigt die Liste der Commit-Aufträge an, die erfolgreich waren. Error commits sind Commits, die aufgrund eines Fehlers fehlgeschlagen sind.

Anzeigen der Patch-Dateien in einem Batch-Commit-Auftrag

Zweck

Zeigen Sie die Zeitstempel, Patch-Dateien und den Status der einzelnen Commit-Jobs an. Patch-Dateien zeigen die Konfigurationsänderungen, die bei jedem Commit-Vorgang auftreten, der der Batch-Commit-Warteschlange hinzugefügt wird.

Action!
  1. Verwenden Sie den show system commit server queue patch Befehl, um die Patches für alle Commit-Vorgänge anzuzeigen.

    Die Ausgabe zeigt die Änderungen in der Konfiguration für jede Commit-Job-ID.

  2. Um den Patch für eine bestimmte Commit-Job-ID anzuzeigen, geben Sie den show system commit server queue patch id <id-number> Befehl ein.

Bedeutung

Die Ausgabe zeigt den Patch, der für einen Commit-Job erstellt wurde. Das + Oder-Zeichen - gibt die Änderungen in der Konfiguration für einen bestimmten Commit-Auftrag an.

Anzeigen der Ablaufverfolgungsdateien für Batch-Commit-Vorgänge

Zweck

Zeigen Sie die Ablaufverfolgungsdateien für Batch-Commit-Vorgänge an. Sie können die Ablaufverfolgungsdateien zu Fehlerbehebungszwecken verwenden.

Action!
  • Verwenden Sie den file show /var/log/<filename> Befehl, um alle Einträge in der Protokolldatei anzuzeigen.

    Die Ausgabe zeigt Commitserver-Ereignisprotokolle und andere Protokolle für Batch-Commits an.

  • Wenn Sie Protokolleinträge nur für erfolgreiche Batch-Commit-Vorgänge anzeigen möchten, geben Sie den file show /var/log/<filename> Befehl mit der | match committed Option pipe ab.

    Die Ausgabe zeigt die Batch-Commit-Auftrags-IDs für erfolgreiche Commit-Vorgänge an.

  • Wenn Sie Protokolleinträge nur für fehlgeschlagene Batch-Commit-Vorgänge anzeigen möchten, geben Sie den file show /var/log/<filename> Befehl mit der | match “Error while” Option pipe ab.

    In der Ausgabe werden Commit-Auftrags-IDs für fehlgeschlagene Commit-Vorgänge angezeigt.

  • Wenn Sie Protokolleinträge nur für Commit-Serverereignisse anzeigen möchten, setzen Sie den file show /var/log/<filename> Befehl mit der | match “commit server” Option pipe ab.

    Die Ausgabe zeigt Commit-Server-Ereignisprotokolle an.

Sichern Sie die festgeschriebene Konfiguration auf dem alternativen Startlaufwerk

Nachdem Sie die Konfiguration bestätigt und sich davon überzeugt haben, dass sie erfolgreich ausgeführt wird, sollten Sie den request system snapshot Befehl zum Sichern der neuen Software im /altconfig Dateisystem ausführen. Wenn Sie den request system snapshot Befehl nicht ausführen, ist die Konfiguration auf dem alternativen Startlaufwerk nicht synchron mit der Konfiguration auf dem primären Startlaufwerk.

Der request system snapshot Befehl sichert das Root-Dateisystem nach /altrootund /config nach /altconfig. Das Root- und /config Dateisystem befindet sich auf dem Flash-Laufwerk des Routers und das /altroot Dateisystem und /altconfig auf der Festplatte des Routers (falls verfügbar).

Nachdem Sie den request system snapshot Befehl ausgegeben haben, können Sie nicht zur vorherigen Version der Software zurückkehren, da die ausgeführte und die Sicherungskopie der Software identisch sind.