Cgroups with systemd complex: Unterschied zwischen den Versionen
| Zeile 7: | Zeile 7: | ||
*[[systemd cgroups Servicedateien bearbeiten]] | *[[systemd cgroups Servicedateien bearbeiten]] | ||
| − | + | *[[systemd cgroups Verwendung von Drop-in-Dateien]] | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
=Nutzen von systemctl set-property= | =Nutzen von systemctl set-property= | ||
Die letzte Methode, die zum Konfigurieren von cgroups verwendet werden kann, ist der Befehl systemctl set-property. Ich beginne mit einer grundlegenden Dienstdatei md5sum.service: | Die letzte Methode, die zum Konfigurieren von cgroups verwendet werden kann, ist der Befehl systemctl set-property. Ich beginne mit einer grundlegenden Dienstdatei md5sum.service: | ||
Version vom 15. Januar 2023, 09:12 Uhr
Prinzip
- Standardmäßig erstellt systemd eine neue cgroup unter system.slice für jeden Dienst, den es überwacht.
- Das ausführen von systemd-cgls zeigt die folgenden Dienste unter system.slice (die Ausgabe ist der Kürze halber abgeschnitten):
- Sie können dieses Verhalten ändern, indem Sie die systemd-Dienstdatei bearbeiten.
- Es gibt drei Optionen in Bezug auf die cgroup-Verwaltung mit systemd
Nutzen von systemctl set-property
Die letzte Methode, die zum Konfigurieren von cgroups verwendet werden kann, ist der Befehl systemctl set-property. Ich beginne mit einer grundlegenden Dienstdatei md5sum.service:
[Service] Type=oneshot ExecStart=/root/generate_load3.sh TimeoutSec=0 StandardOutput=tty RemainAfterExit=yes Slice=AWESOME.slice
[Install] WantedBy=multi-user.target
Mit dem Befehl systemctl set-property werden die Dateien in
/etc/systemd/system.control
abgelegt. Diese Dateien dürfen nicht von Hand bearbeitet werden. Nicht jede Eigenschaft wird vom set-property-Befehl erkannt, daher wurde die Slice-Definition in die Dienstdatei selbst eingefügt.
Nachdem ich die Unit-Datei eingerichtet und den Daemon neu geladen habe, verwende ich den systemctl-Befehl ähnlich dem folgenden:
- systemctl set-property md5sum.service CPUShares=1024
Dadurch wird eine Drop-In-Datei für Sie erstellt, die sich unter
/etc/systemd/system.control/md5sum.service.d/50-CPUShares.conf
befindet. Schauen Sie sich die Dateien gerne an, wenn Sie neugierig auf deren Inhalt sind. Da diese Dateien nicht dazu gedacht sind, von Hand bearbeitet zu werden, werde ich keine Zeit damit verbringen.
Sie können testen, ob die Änderungen wirksam wurden, indem Sie Folgendes ausführen:
- systemctl start md5sum.service cat.service sha256sum.service
Wie Sie im Screenshot unten sehen, scheinen die Änderungen erfolgreich zu sein. sha256sum.service ist für 2048 CPUShares konfiguriert, während md5sum.service 1024 hat. Schließlich hat cat.service 256.