Systemverwaltungshandbuch: Oracle Solaris Container - Ressourcenverwaltung und Solaris Zones

Konfigurieren des FSS

Die gleichen Befehle, die Sie für andere Scheduling-Klasse im Solaris-System verwenden, können auch für den FSS eingesetzt werden. Sie können die Scheduler-Klasse festlegen, die Parameter des Scheduler konfigurieren und die Eigenschaften bestimmter Prozesse einstellen.

Zum Neustarten des Scheduler-Service geben Sie den Befehl svcadm restart ein. Weitere Informationen finden Sie unter svcadm(1M).

ProcedureSo legen Sie FSS als standardmäßige Scheduling-Klasse fest

Der FSS muss als standardmäßiger Scheduler auf dem System eingerichtet sein, damit die Zuweisung von CPU-Shares wirksam ist.

Mit einer Kombination der Befehle priocntl und dispadmin stellen Sie sicher, dass der FSS unmittelbar und auch nach einem Neustart der standardmäßige Scheduler wird.

  1. Melden Sie sich als Superuser an oder nehmen Sie eine entsprechende Rolle an.

    Rollen umfassen Autorisierungen und privilegierte Befehle. Weitere Informationen zu Rollen finden Sie unter Using the Solaris Management Tools With RBAC (Task Map) in System Administration Guide: Basic Administration.

  2. Legen Sie FSS als standardmäßigen Scheduler für das System fest.


    # dispadmin -d FSS
    

    Diese Änderung wirkt sich nach dem nächsten Neustart aus. Nach dem Neustart wird jeder Prozess auf dem System in der FSS-Scheduling-Klasse ausgeführt.

  3. Die folgende Konfiguration wird unmittelbar und ohne einen Neustart wirksam.


    # priocntl -s -c FSS -i all
    

ProcedureSo verschieben Sie manuelle Prozesse aus der TS-Klasse in die FSS-Klasse

Sie können Prozesse manuell aus einer Scheduling-Klasse in eine andere Scheduling-Klasse verschieben, ohne die standardmäßige Scheduling-Klasse zu ändern oder das System neu zu booten. Dieses Verfahren zeigt, wie Sie Prozesse manuell aus der TS-Scheduling-Klasse in die FSS-Scheduling-Klasse verschieben.

  1. Melden Sie sich als Superuser an oder nehmen Sie eine entsprechende Rolle an.

    Rollen umfassen Autorisierungen und privilegierte Befehle. Weitere Informationen zu Rollen finden Sie unter Using the Solaris Management Tools With RBAC (Task Map) in System Administration Guide: Basic Administration.

  2. Verschieben Sie den init-Prozess (pid 1) in die FSS-Scheduling-Klasse.


    # priocntl -s -c FSS -i pid 1
    
  3. Verschieben Sie alle Prozesse aus der TS-Scheduling-Klasse in die FSS-Scheduling-Klasse.


    # priocntl -s -c FSS -i class TS
    

    Hinweis –

    Nach dem Neustart werden alle Prozesse wieder in der TS-Scheduling-Klasse ausgeführt.


ProcedureSo verschieben Sie Prozesse manuell aus allen Benutzerklassen in die FSS-Klasse

Eventuell verwenden Sie eine andere Standard-Klasse als die TS-Scheduling-Klasse. Vielleicht wird das System in einer Fensterumgebung ausgeführt, die standardmäßig die IA-Klasse verwendet. Sie können alle Prozesse manuell in die FSS-Scheduling-Klasse verschieben, ohne die standardmäßige Scheduling-Klasse zu ändern oder das System neu zu booten.

  1. Melden Sie sich als Superuser an oder nehmen Sie eine entsprechende Rolle an.

    Rollen umfassen Autorisierungen und privilegierte Befehle. Weitere Informationen zu Rollen finden Sie unter Using the Solaris Management Tools With RBAC (Task Map) in System Administration Guide: Basic Administration.

  2. Verschieben Sie den init-Prozess (pid 1) in die FSS-Scheduling-Klasse.


    # priocntl -s -c FSS -i pid 1
    
  3. Verschieben Sie alle Prozesse aus den aktuellen Scheduling-Klassen in die FSS-Scheduling-Klasse.


    # priocntl -s -c FSS -i all
    

    Hinweis –

    Nach dem Neustart werden alle Prozesse wieder in der standardmäßigen Scheduling-Klasse ausgeführt.


ProcedureSo verschieben Sie die Prozesse eines Projekts manuell in die FSS-Klasse

Sie können die Prozesse eines Projekts manuell aus der aktuellen Scheduling-Klasse in die FSS-Scheduling-Klasse verschieben.

  1. Melden Sie sich als Superuser an oder nehmen Sie eine entsprechende Rolle an.

    Rollen umfassen Autorisierungen und privilegierte Befehle. Weitere Informationen zu Rollen finden Sie unter Using the Solaris Management Tools With RBAC (Task Map) in System Administration Guide: Basic Administration.

  2. Verschieben Sie Prozesse, die in der Projekt-ID 10 ausgeführt werden, in die FSS-Scheduling-Klasse.


    # priocntl -s -c FSS -i projid 10
    

    Nach dem Neustart werden die Prozesse des Projekts wieder in der standardmäßigen Scheduling-Klasse ausgeführt.

So stellen Sie die Scheduler-Parameter ein

Mit dem Befehl dispadmin können Sie die Parameter eines Prozess-Schedulers bei laufendem System anzeigen oder ändern. Beispielsweise können Sie den Befehl dispadmin eingeben, um den Zeit-Quantumwert des FSS-Schedulers zu prüfen und einzustellen. Zeit-Quantum ist die Zeit, die ein Thread ausgeführt werden darf, bevor er die Kontrolle über den Prozessor abgeben muss.

Zum Anzeigen des aktuellen Zeit-Quantums für den FSS-Scheduler bei laufendem System geben Sie Folgendes ein:


$ dispadmin -c FSS -g
#
# Fair Share Scheduler Configuration
#
RES=1000
#
# Time Quantum
#
QUANTUM=110

Wenn Sie die Option -g verwenden, können Sie auch die Option -r angeben, um die Auflösung festzulegen, die beim Drucken der Zeit-Quantumswerte verwendet wird. Wenn keine Auflösung angegeben ist, werden die Zeit-Quantumswerte standardmäßig als Millisekunden angezeigt.


$ dispadmin -c FSS -g -r 100
#
# Fair Share Scheduler Configuration
#
RES=100
#
# Time Quantum
#
QUANTUM=11

Zum Einstellen der Scheduling-Parameter der FSS-Scheduling-Klasse geben Sie dispadmin -s ein. Die Werte in Datei müssen in dem Format vorliegen, das von der Option -g ausgegeben wird. Diese Werte überschreiben die aktuellen Werte im Kernel. Geben Sie Folgendes ein:


$ dispadmin -c FSS -s file