Under Construction

NTP-Konfiguration auf der HMC

Die HMC verwendet als unterliegendes Betriebssystem Linux. Damit steht natürlich auch ein NTP-Daemon zur Verfügung. Allerdings hat der HMC-Administrator keinen Zugriff auf den root-Account und ist zusätzlich aufgrund der zu benutzenden restricted bash auf die von IBM vorgesehenen Kommandos eingeschränkt. Es ist also nicht möglich NTP mit Hilfe einer Konfigurations-Datei und dem Editor vi zu konfigurieren.

Das LPAR-Tool stellt für die Administration und Konfiguration die folgenden Kommandos zur Verfügung:

$ hmc help ntp
USAGE: hmc [<option> ...] <keyword> [<option> ...] [<argument> ...]

Recognized keywords for topic 'ntp' are:
   addntpserver [-i <ethX>] [-n <ntpversion>] [-v] <hmc> <IP> [<netmask>]
   disablentp [-v] <hmc>
   enablentp [-v] <hmc>
   lsntp [-a] [-o <format>] [{-f|-j|-y}] [-F <fields>] [-s <selections>] [-v] [<hmc> ...]
   rmntpserver [-i <ethX>] [-n <ntpversion>] [-v] <hmc> <IP> [<netmask>]
$

(Hinweis: Die zugehörigen unterliegenden Kommandos auf der HMC CLI sind lshmc und chhmc.)

Den aktuellen Status von NTP auf einer HMC kann man sich dann mittels „hmc lsntp“ anzeigen lassen:

$ hmc lsntp hmc01
NAME   XNTP     XNTPSTATUS  XNTPSERVER
hmc01  disable  -           -
$

Auf der HMC (hmc01) ist NTP aktuell nicht aktiviert (Spalte XNTP: disable).

Man kann auch mehrere HMCs als Argument angeben, oder das Argument weglassen (alle HMCs):

$ hmc lsntp
NAME   XNTP    XNTPSTATUS    XNTPSERVER
hmc01  disable  -           -
hmc02  enable  synchronized  192.168.189.77,192.168.189.78
hmc03  enable  synchronized  192.168.189.77,192.168.189.78
$

Über das Kommando „hmc addntpserver“ kann der NTP-Konfiguration einer HMC ein weiterer NTP-Server hinzugefügt werden:

$ hmc addntpserver hmc01 192.168.189.77
$

Optional kann mit Hilfe der Option „-i“ das zu verwendende Interface angegeben werden. Dies hat eine Auswirkung auf die Firewall-Regeln. Standardmäßig werden beim Hinzufügen eines NTP-Servers mittels IP-Adresse Firewall-Regeln hinzugefügt, welche NTP für die angegebene IP-Adresse erlauben. Ohne Option „-i“ werden Firewall-Regeln für alle verfügbaren Netzwerk-Interfaces hinzugefügt. Gibt man ein Interface mit der Option „-i“ an, so wird nur für dieses Interface eine Firewall-Regel hinzugefügt.

Außerdem kann auch die gewünschte NTP-Version (1-4) angegeben werden, dazu gibt es die Option „-n“.

Für den Fall das der obige NTP-Server nicht verfügbar ist, fügen wir einen zweiten NTP-Server hinzu:

$ hmc addntpserver hmc01 192.168.189.78
$

Eine Kontrolle mit „hmc lsntp“ zeigt, das nun zwei NTP-Server konfiguriert sind, NTP aber nach wie vor nicht aktiviert ist:

$ hmc lsntp hmc01
NAME   XNTP     XNTPSTATUS  XNTPSERVER
hmc01  disable  -           192.168.189.77,192.168.189.78
$

NTP kann nun mit dem Kommando „hmc enablentp“ aktiviert werden:

$ hmc enablentp hmc01
$

Die erste Synchronisierung kann eine Weile dauern:

$ hmc lsntp hmc01
NAME   XNTP    XNTPSTATUS      XNTPSERVER
hmc01  enable  unsynchronized  192.168.189.77,192.168.189.78
$

Die Zeit auf der HMC ist unmittelbar nach dem Aktivieren von NTP noch nicht synchronisiert (XNTPSTATUS: unsynchronized).

Einen detaillierten Status für jeden NTP-Server bekommt man durch Verwendung der Option „-a“ (all NTP-Servers):

$ hmc lsntp –a hmc01
NAME    SERVER         STATE          POLL_FREQ_SECONDS  SECONDS_SINCE_LAST_POLL
hmc01  192.168.189.77 not connected  64                 0
hmc01  192.168.189.78  not connected  64                 0
$

Nachfolgend ist die wiederholte Ausgabe von „hmc lsntp –a“ mit den durchlaufenen Stati gezeigt:

NAME   SERVER          STATE                POLL_FREQ_SECONDS  SECONDS_SINCE_LAST_POLL
hmc01  192.168.189.77 not connected        64                 0
hmc01  192.168.189.78  not connected        64                 0

hmc01  192.168.189.77 poll testing 1 of 4  64                 1
hmc01  192.168.189.78  poll testing 1 of 4  64                 0

hmc01  192.168.189.77 poll testing 1 of 4  64                 65
hmc01  192.168.189.78  poll testing 1 of 4  64                 64

hmc01  192.168.189.77 poll testing 1 of 4  64                 67
hmc01  192.168.189.78  poll testing 2 of 4  64                 1

hmc01  192.168.189.77 poll testing 2 of 4  64                 1
hmc01  192.168.189.78  poll testing 2 of 4  64                 2

hmc01  192.168.189.77 poll testing 3 of 4  64                 0
hmc01  192.168.189.78  poll testing 2 of 4  64                 65

hmc01  192.168.189.77 poll testing 3 of 4  64                 1
hmc01  192.168.189.78  poll testing 3 of 4  64                 0

hmc01  192.168.189.77 synchronized         64                 1
hmc01  192.168.189.78  poll testing 3 of 4  64                 64

hmc01  192.168.189.77 synchronized         64                 4
hmc01  192.168.189.78  available            64                 1

Sobald eine Synchronisierung mit einem der NTP-Server erreicht ist, ist der Gesamt-Status synchronized:

$ hmc lsntp hmc01
NAME   XNTP    XNTPSTATUS    XNTPSERVER
hmc01  enable  synchronized  192.168.189.77,192.168.189.78
$

Der NTP-Client auf der HMC kontaktiert in regelmäßigen Abständen (Poll-Intervall) die konfigurierten NTP-Server. Die Zeitdauer zwischen den Abfragen wird in der Spalte POLL_FREQ_SECONDS angezeigt, die Zeit seit der letzten Abfrage in der Spalte SECONDS_SINCE_LAST_POLL:

$ hmc lsntp -a hmc01
NAME   SERVER          STATE         POLL_FREQ_SECONDS  SECONDS_SINCE_LAST_POLL
hmc01  192.168.189.77 synchronized  64                 40
hmc01  192.168.189.78  available     64                 35
$

Nach der ersten Synchronisierung (sollte etwa 4 Minuten dauern) wird mit einem zeitlichen Abstand von 64 Sekunden zwischen den einzelnen Abfragen gestartet. Dieses Intervall wird aber vom NTP-Client dynamisch optimiert und ist normalerweise nach einiger Zeit deutlich größer (was letztlich weniger Abfragen bedeutet). Hier ist eine Ausgabe nach einer Stunde:

$ hmc lsntp -a hmc01
NAME   SERVER          STATE         POLL_FREQ_SECONDS  SECONDS_SINCE_LAST_POLL
hmc01  192.168.189.77 synchronized  128                16
hmc01  192.168.189.78  available     128                102
$

Die Zeitspanne, nach der sich das optimierte Zeitintervall „eingespielt“ hat, kann viele Stunden betragen. Nach ca. 3 Stunden haben sich auf der obigen HMC die folgenden Intervalle eingestellt:

$ hmc lsntp -a hmc01
NAME   SERVER          STATE         POLL_FREQ_SECONDS  SECONDS_SINCE_LAST_POLL
hmc01  192.168.189.77 synchronized  512                500
hmc01  192.168.189.78  available     512                467
$

Soll ein NTP-Server aus der Konfiguration entfernt werden, gibt es hierzu das Kommando „hmc rmntpserver“:

$ hmc rmntpserver hmc01 192.168.189.78
$

NTP kann natürlich auch wieder komplett deaktiviert werden, dazu kann das Kommando „hmc disablentp“ verwendet werden:

$ hmc disablentp hmc01
$

Allerdings verliert man dadurch alle Vorteile einer zeitlichen Synchronisierung.