Cgroups Manager (Linux)

Eine Website auf einem gemeinsam genutzten Server kann alle Systemressourcen beanspruchen und die Leistung anderer Websites beeinträchtigen. Dieses Problem wird auch "Noisy Neighbor", also "lauter Nachbar" genannt.

Plesk Cgroups Manager ist eine Erweiterung, mit der Sie dieses Problem verhindern können, indem Sie den Verbrauch von CPU, RAM und Bandbreite zum Lesen/Schreiben auf dem Datenträger verwalten können.

Mithilfe von Cgroups Manager können Sie für jedes Abonnement und jede Systemressource Folgendes ausführen:

  • Grenzwert für die Ressource festlegen, den das Abonnement maximal erreichen darf
  • Ressourcenverbrauch des Abonnements überwachen und E-Mail-Benachrichtigungen senden, wenn ein bestimmter Schwellenwert überschritten wird
 

Anforderungen

Plesk Lizenz

Cgroups Manager ist für die folgenden Plesk Editionen verfügbar:

  • Plesk Web Pro
  • Plesk Web Host

Wenn Sie das Web Admin-Paket verwenden und den Ressourcenverbrauch Ihrer Websites verwalten möchten, sollten Sie ein Upgrade auf Web Pro durchführen und Websites auf mehrere Abonnements aufteilen.

Lizenz für die Erweiterung

Cgroups Manager ist eine kostenpflichtige Erweiterung. Sie können sie entweder separat oder als Teil des Hosting-Pakets erwerben.

Betriebssystem und init-System

Cgroups Manager ist verfügbar für:

  • Debian 8
  • Ubuntu 16.04
  • CentOS 7
  • Red Hat Enterprise Linux 7

Standardmäßig verwenden alle diese Distributionen das init-System namens systemd, das für Cgroups Manager erforderlich ist. Plesk kann jedoch auch unter Debian mit einem alternativen init-System namens System V installiert werden. Um zu überprüfen, welches init-System derzeit verwendet wird, führen Sie in der Befehlszeilenschnittstelle cat /proc/1/comm aus.

Hinweis: Wenn Sie Cgroups Manager unter Debian mit System V installieren, wird das System in Plesk mit systemd ersetzt. Sie müssen das System nach der Installation manuell neu starten, damit die Änderung angewendet wird.

Einschränkungen für Virtuozzo 6 und 7

In Plesk unter Virtuozzo 6 kann nur RAM verwaltet werden. In Plesk unter Virtuozzo 7 können RAM und CPU, aber nicht Datenträger-E/A verwaltet werden.

Falls Ihr System eine der Anforderung nicht erfüllt, können Sie Plesk in ein System migrieren, das den Anforderungen entspricht.

 

Installation

So aktivieren Sie Cgroups Manager:

  1. Installieren Sie die Komponente "Ressourcenkontrolle (Cgroups)" mithilfe von Plesk Installer:
    1. Gehen Sie zu "Tools & Einstellungen".
    2. Klicken Sie auf den Link "Updates und Upgrades".
    3. Klicken Sie auf den Link "Komponenten hinzufügen/entfernen".
    4. Wählen Sie "Ressourcenkontrolle (Cgroups)" aus und klicken Sie auf "Weiter".

      Hinweis: Wenn die erforderliche Komponente nicht in der Liste der verfügbaren Komponenten angezeigt wird, vergewissern Sie sich, dass Ihr System den Anforderungen entspricht.

  2. Starten Sie die Komponente:
    1. Gehen Sie zu "Tools & Einstellungen".
    2. Klicken Sie auf den Link "Dienstverwaltung".
    3. Starten Sie den Dienst "Ressourcenkontrolle (Cgroups)".
 

Konfigurieren von Cgroups Manager

Achtung: Wenn Cgroups Manager falsch konfiguriert wird, können gehostete Websites dadurch langsamer werden oder sogar nicht verfügbar sein. Bevor Sie Änderungen vornehmen, lesen Sie sich die Anleitung in diesem Kapitel sorgfältig durch und vergewissern Sie sich, dass Sie den Ablauf verstanden haben.

Sie können Cgroups Manager auf den folgenden Ebenen konfigurieren:

  • Für ein Service-Paket und damit für alle darin enthaltenen Abonnements
  • Für ein einzelnes Abonnement

Die Einstellungen für das Abonnement setzen die Konfiguration des Service-Pakets außer Kraft. Add-on-Pakete können nicht zur Änderung der Einstellungen von Cgroups Manager eingesetzt werden.

Nachdem Sie den Dienst installiert und gestartet haben, sind die folgenden Konfigurationstools verfügbar:

 

Einschränken des Ressourcenverbrauchs

Einrichten von Grenzwerten

Für jede verwaltete Ressource kann ein Grenzwert festgelegt werden. Dieser Grenzwert gilt dann speziell für die jeweilige Ressource. Standardmäßig sind keine Grenzwerte festgelegt, d. h. Ressourcen sind nicht beschränkt.

Für Abonnements können die gleichen Einstellungen vorgenommen werden, aber jedes Abonnement hat seinen eigenen Grenzwert.

Wenn eine Ressource für ein bestimmtes Abonnement beschränkt ist, gilt Folgendes:

  • In Cgroups Manager werden alle Prozesse im Abonnement des Systembenutzers überwacht. Diese Prozesse können in Summe den Grenzwert der einzelnen Ressourcen nicht überschreiten.
  • Wenn ein Abonnement den Wert erreicht, wird vom Betriebssystem je nach Ressourcentyp eine bestimmte Maßnahme durchgeführt.
  • Dieser Grenzwert kann für ein Abonnement nie überschritten werden, auch wenn auf dem Server noch Ressourcen des entsprechenden Typs vorhanden sind (z. B. CPU-Zyklen im Leerlauf, freier RAM).

Wenn eine Ressource für ein bestimmtes Abonnement nicht beschränkt ist, gilt Folgendes:

  • Die Prozesse des Abonnements können so viele Ressourcen wie verfügbar beanspruchen.
  • Die Ressource wird von den Prozessen aller Abonnements verwendet:
    • CPU-Zeit und Datenträger-E/A werden beinahe gleichmäßig verteilt.
    • RAM wird wie von den Prozessen angefordert aufgeteilt.

In beiden Fällen wird nicht garantiert, dass ein Abonnement ein Minimum an verfügbaren Ressourcen erhält.

Zulässige Grenzwerte

Die folgenden Werte können für die Einschränkungen festgelegt werden:

Einstellung Gemessen in Verfügbare Werte

CPU-Limit

Prozentsatz der CPU-Zeit, wobei 100 % einem voll ausgelasteten CPU-Kern entspricht

Nicht mehr als 100 % * Anzahl der CPU-Kerne

RAM-Limit

Byte

Nicht weniger als 1 MB

Datenträgerschreibgeschwindigkeit

Byte pro Sekunde

Nicht weniger als 1 MB pro Sekunde

Datenträgerlesegeschwindigkeit

Byte pro Sekunde

Nicht weniger als 1 MB pro Sekunde

Verwaltung des Ressourcenverbrauchs

Wenn die Prozesse eines bestimmten Abonnements den maximal zulässigen Wert einer Ressource erreicht haben, wird vom Betriebssystem je nach Ressourcentyp eine bestimmte Maßnahme durchgeführt.

Überbeanspruchte Ressource Aktionen Auswirkung

CPU, RAM und Bandbreite zum Lesen/Schreiben

Die Prozesse dieses Abonnements werden eingeschränkt, damit sie nicht mehr Ressourcen als den maximal zulässigen Wert verbrauchen.

Die entsprechenden Websites sind möglicherweise langsamer und die Reaktionszeit erhöht sich.

RAM

Wenn die Prozesse eines bestimmten Abonnements das RAM-Limit erreichen, werden die Prozesse beendet, die am meisten Speicher verbrauchen.

Die entsprechenden Websites sind für einige Zeit möglicherweise nicht verfügbar und geben HTTP-Codes 5xx auf Anfragen zurück.

 

Überwachen des Ressourcenverbrauchs und Senden von Benachrichtigungen

Einrichten von Überwachung und Benachrichtigungen

Wenn Sie einen Grenzwert für eine Ressource festlegen, können Sie in Plesk einrichten, dass der Verbrauch dieser Ressource überwacht wird.

Geben Sie die folgenden Werte an, wenn Sie die Überwachung aktivieren möchten:

  • Schwellenwert ("Benachrichtigung erhalten, wenn Grenzwert überschritten wird" in Plesk Panel)
  • Zeitraum

Wenn Sie die Überwachung wieder deaktivieren möchten, entfernen Sie den entsprechenden Grenzwert.

Zulässige Werte für die Überwachung

Die folgenden Werte können für die Überwachung festgelegt werden:

Einstellung Gemessen in Verfügbare Werte

CPU-Limit

Prozentsatz der CPU-Zeit, wobei 100 % einem voll ausgelasteten CPU-Kern entspricht

Nicht mehr als der CPU-Grenzwert

RAM-Limit

Byte

Nicht weniger als 1 MB und nicht mehr als der RAM-Grenzwert

Datenträgerschreibgeschwindigkeit

Byte pro Sekunde

Nicht weniger als 1 MB pro Sekunde und nicht mehr als der Grenzwert zum Schreiben auf dem Datenträger

Datenträgerlesegeschwindigkeit

Byte pro Sekunde

Nicht weniger als 1 MB pro Sekunde und nicht mehr als der Grenzwert zum Lesen auf dem Datenträger

Prüfzeitraum (für alle Ressourcen)

Sekunden

300 (5 Minuten), 3600 (1 Stunde) oder 86400 (24 Stunden)

Überwachung durch das System

Wenn Sie die Ressourcenüberwachung für eine oder mehrere Ressourcen aktivieren, wird die Überwachung durch Cgroups Manager gestartet. Falls Sie die Ressourcenüberwachung auf Abonnementebene aktiviert haben, wird der Ressourcenverbrauch für dieses Abonnement überwacht. Falls Sie die Ressourcenüberwachung auf Service-Paket-Ebene aktiviert haben, wird der Ressourcenverbrauch für alle Abonnements in diesem Service-Paket überwacht:

  1. Alle 5 Minuten wird in Cgroups Manager der durchschnittliche Verbrauch einer Ressource im Abonnement berechnet und überprüft, ob der Wert dem Grenzwert entspricht oder darüber liegt.
  2. Mit dem unter Zeitraum angegebenen Wert wird festgelegt, wie oft in Cgroups Manager überprüft wird, ob das Abonnement den Grenzwert innerhalb des letzten Prüfzeitraums überschritten hat.
    • Wenn das Abonnement den Grenzwert in allen Abschnitten des Prüfzeitraums überschritten hat, sendet Cgroups Manager eine E-Mail-Benachrichtigung.
    • Wenn für ein Abonnement über mehr als einen Zeitraum hinweg der Grenzwert erreicht wird, werden keine weiteren Benachrichtigungen gesendet.
Beispiel für die Überwachung

Mit diesem Beispiel möchten wir die Überwachung durch Cgroups Manager und das Auslösen von Benachrichtigung genauer erläutern.

Für das Abonnement-Paket P gelten die folgenden Einstellungen:

Einstellung Wert

CPU-Limit

200 %

CPU-Grenzwert

160 %

Prüfzeitraum für CPU

1 Stunde

Wie bereits erwähnt, heißt 100 %, dass ein CPU-Kern voll ausgelastet ist.

Es gibt zwei Abonnement in diesem Plan: A und B

Das Abonnement A umfasst eine Aufgabe, die die CPU stark auslastet, einmal pro Stunde ausgeführt wird und in etwa 10 Minuten dauert. In diesen 10 Minuten verbrauchen die Prozesse des Abonnements mehr als 160 % der CPU-Zeit. In der restlichen Zeit verbraucht das Abonnement weniger als 160 % der CPU-Zeit. Für die Benachrichtigungen ist es nicht wichtig, ob der Grenzwert erreicht wird.

Die Website des Abonnements B wird stark genutzt. Die Prozesse des Abonnements verbrauchen immer mehr als 160 % der CPU-Zeit.

In einem Intervall von 5 Minuten wird in Cgroups Manager der durchschnittliche Verbrauch berechnet. Nach einer Stunde liegt das folgende Ergebnis vor:

  • Das Abonnement A hat den Grenzwert in 2 von 12 Intervallen überschritten. Cgroups Manager sendet keine Benachrichtigung.
  • Das Abonnement B hat den Grenzwert in allen 12 Intervallen überschritten. Cgroups Manager sendet eine Benachrichtigung, wiederholt dies jedoch nicht, wenn die Belastung weiterhin gleich bleibt.
Empfänger und Inhalt der Benachrichtigungen

So legen Sie die Empfänger der Benachrichtigungen fest:

  1. Gehen Sie zu "Tools & Einstellungen" > "Benachrichtigungen".
  2. Wählen Sie die erforderlichen Empfänger neben "RAM, CPU, Datenträger-E/A (Cgroups)" aus.

Der Inhalt der Benachrichtigungen ist in einem Template festgelegt. So können Sie das Template aufrufen und bearbeiten:

  1. Gehen Sie zu "Tools & Einstellungen" > "Benachrichtigungen".
  2. Wählen Sie die Schaltfläche ganz rechts neben "RAM, CPU, Datenträger-E/A (Cgroups)" aus.

Weitere Informationen zu automatischen E-Mail-Benachrichtigungen

 

Einschränkungen

Einige technische oder unternehmensspezifische Probleme können nicht über die Ressourcenverwaltung gelöst werden:

  • Kunden, die Ressourcen bereits überbeansprucht haben, sehen sich mit Wahrscheinlichkeit einer geringeren Leistung gegenüber.
  • In Cgroups Manager werden Ressourcen für Ruby, Python und Node.js-Web-Anwendungen mit Phusion Passenger nicht überwacht und eingeschränkt.
 

Deaktivieren von Cgroups Manager

Wenn Sie die Cgroups Manager-Funktion ausblenden möchten, fügen Sie diese Zeilen in der Datei panel.ini hinzu:

[resourceController]
enabled = false
 

Leave your feedback on this topic here

If you have questions or need support, please visit the Plesk forum or contact your hosting provider.
The comments below are for feedback on the documentation only. No timely answers or help will be provided.