

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Begrenzung der Nutzung von Prozessressourcen in AL2 023 mithilfe cgroups
<a name="resource-limiting-raw-cgroups"></a>

 Die Verwendung wird zwar empfohlen[Ressourcenkontrolle mit systemd](resource-limiting-systemd.md), in diesem Abschnitt wird jedoch die grundlegende Verwendung der `libcgroup-tools` Basisdienstprogramme behandelt, um die CPU- und Speicherauslastung von Prozessen zu begrenzen. Beide Methoden sind Alternativen zur Verwendung des [`cpulimit`](epel.md#cpulimit) Hilfsprogramms, das zuvor unter beschrieben wurde[EPEL](epel.md). 

 Das folgende Beispiel behandelt die Ausführung des `stress-ng` Stresstests (aus dem `stress-ng` Paket) bei gleichzeitiger Begrenzung der CPU- und Speicherauslastung mithilfe der Dienstprogramme aus dem `libcgroup-tools` Paket und den darin enthaltenen Tunables. `sysfs` 

**Verwenden Sie es `libcgroup-tools` in der Befehlszeile, um die Ressourcennutzung zu begrenzen**

1.  Installieren Sie das Paket `libcgroup-tools`. 

   ```
   [ec2-user ~]$ sudo dnf install libcgroup-tools
   ```

1.  Erstellen Sie eine `cgroup` mit den `cpu` Controllern `memory` und und geben Sie ihr einen Namen (`our-example-limits`). Verwenden Sie die `-t` Optionen `-a` und, um es dem `ec2-user` Benutzer zu ermöglichen, die Tunables des `cgroup` 

   ```
   [ec2-user ~]$ sudo cgcreate -a ec2-user -t ec2-user -g memory,cpu:our-example-limits
   ```

    Es gibt jetzt ein `/sys/fs/cgroup/our-example-limits/` Verzeichnis, das Dateien enthält, die zur Steuerung der einzelnen Tunables verwendet werden können. 
**Anmerkung**  
 Amazon Linux 2 verwendet `cgroup-v1` Rather`cgroup-v2`, das auf AL2 023 verwendet wird. Auf AL2, die `sysfs` Pfade sind unterschiedlich, und es wird `/sys/fs/cgroup/memory/our-example-limits` `/sys/fs/cgroup/cpu/our-example-limits` Verzeichnisse geben`ec2-user`, deren Eigentümer Dateien sind, mit denen die Grenzen von kontrolliert werden können. `cgroup` 

1.  Beschränken Sie den Speicherverbrauch aller Prozesse in unserer `cgroup` Datenbank auf 100 Millionen Byte. 

   ```
   [ec2-user ~]$ echo 100000000 > /sys/fs/cgroup/our-example-limits/memory.max
   ```
**Anmerkung**  
 Amazon Linux 2 verwendet `cgroup-v1` eher als `cgroup-v2` das, was Amazon Linux 2023 verwendet. Das bedeutet, dass einige Tunables unterschiedlich sind. Um die Speichernutzung zu begrenzen AL2, wird stattdessen das unten stehende Tunable verwendet.   

   ```
   [ec2-user ~]$ echo 10000000 > /sys/fs/cgroup/memory/our-example-limits/memory.limit_in_bytes
   ```

1.  Beschränken Sie die CPU-Auslastung aller Prozesse in unserer Datenbank `cgroup` auf 10%. Das Format der `cpu.max` Datei beschränkt `$MAX $PERIOD` die Gruppe auf die Nutzung `$MAX` für jeden`$PERIOD`. 

   ```
   [ec2-user ~]$ echo 10000 100000 > /sys/fs/cgroup/our-example-limits/cpu.max
   ```

    Amazon Linux 2 verwendet `cgroup-v1` eher als `cgroup-v2` das, was Amazon Linux 2023 verwendet. Das bedeutet, dass einige Tunables unterschiedlich sind, einschließlich der Frage, wie die CPU-Auslastung begrenzt werden kann. 

1.  Das folgende Beispiel läuft `stress-ng` (das durch Ausführen installiert werden kann`dnf install -y stress-ng`) im `our-example-limits` cgroup. Während der Ausführung des `stress-ng` Befehls können Sie beobachten, `top` dass er auf 10% von begrenzt ist CPU Zeit. 

   ```
   [ec2-user ~]$ sudo cgexec -g memory,cpu:our-example-limits stress-ng --cpu 1
   ```

1. Räumen Sie auf, indem Sie die Cgroup entfernen

   ```
   [ec2-user ~]$ sudo cgdelete -g memory,cpu:our-example-limits
   ```

 Die [Linux-Kernel-Dokumentation für `cgroup-v2`](https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v2.html) enthält ausführliche Informationen darüber, wie sie funktionieren. In der Dokumentation der [CPU](https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v2.html#cpu) - und [Speichercontroller](https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v2.html#memory) wird detailliert beschrieben, wie die einzelnen einstellbaren Optionen verwendet werden. 