GNU/Linux >> LINUX-Kenntnisse >  >> Linux

CentOS / RHEL 6 :So begrenzen Sie Speicherressourcen für einen bestimmten Benutzer mithilfe von cgroups

Kontrollgruppen (strong>cgroups ) ermöglichen es Ihnen, Rechenressourcen bestimmten Prozessen oder Aufgaben zuzuweisen. Sie können einer bestimmten Gruppe von Aufgaben oder sogar einem bestimmten Benutzer einen Satz CPU und Arbeitsspeicher zuweisen. Der Beitrag hier beschreibt die Schritte zum Zuweisen einer definierten Speicherressource zu einer bestimmten Verwendung. Ulimit wird dieses Ziel nicht erreichen können, da ulimit den Benutzerspeicherverbrauch pro Prozess begrenzt. Die beste Option ist die Verwendung von cgroups. Mit Cgroups können Benutzer nicht nur auf Speicherressourcen, sondern auch auf CPU/IO beschränkt werden. Sehen wir uns ein Beispiel an, um den vom Benutzer „john“ verwendeten Speicher auf 100 MB zu begrenzen.

Einschränken des Speichers für einen bestimmten Benutzer

1. Bearbeiten Sie die cgroups-Konfigurationsdatei /etc/cgconfig.conf und fügen Sie die folgenden Zeilen hinzu

# vi /etc/cgconfig.conf
group memlimit {
	memory {
		memory.limit_in_bytes = 104857600;    #### limit memory to 100MB
	}
}

Der obige Codeabschnitt erstellt eine cgroup namens memlimit wobei das Limit 100 MB ist .

2. Bearbeiten Sie nun eine weitere Datei /etc/cgrules.conf und fügen Sie die folgende Zeile hinzu:

# vi /etc/cgrules.conf
john memory memlimit

Dies teilt cgroups mit, dass Benutzer john zur memlimit cgroup hinzugefügt wird und nur 100 MB vom System nehmen kann.

3. Wenn Sie mit der Bearbeitung der Konfigurationsdateien fertig sind, starten Sie die Dienste cgred neu und cgconfig .

# service cgred restart
# service cgconfig restart
cgconfig(control group config) service – Wird verwendet, um cgroups zu erstellen und Subsysteme zu verwalten
cgred (Control Group Rules Engine Daemon) Service – Wird verwendet, um Aufgaben gemäß den in der Datei /etc/cgrules.conf festgelegten Parametern in cgroups zu verschieben.

4. Aktivieren Sie beide Dienste, um beim Systemstart zu starten. Damit stellen wir sicher, dass die Konfigurationsdateien /etc/cgconfig.conf und /etc/cgrules.conf beim Booten gelesen und cgroups erstellt werden.

# chkconfig cgred on
# chkconfig cgconfig on


Linux
  1. So deaktivieren Sie NUMA in CentOS / RHEL 6,7

  2. So begrenzen Sie einige Benutzerspeicherressourcen unter CentOS/RHEL mithilfe von cgroup

  3. CentOS / RHEL :Wie finde ich heraus, welcher Benutzer einen bestimmten Befehl ausführt?

  4. CentOS / RHEL :So ändern Sie die Anmelde-Shell des Benutzers

  5. CentOS / RHEL :So deaktivieren Sie ssh für Nicht-Root-Benutzer (ssh nur für Root-Benutzer zulassen)

So fügen Sie einen Benutzer zu einer Gruppe auf RHEL 8 / CentOS 8 hinzu

So beschränken Sie den Root-Benutzer in CentOS

So installieren Sie Zenoss Core für die Überwachung unter Linux CentOS / RHEL

So richten Sie den VNC-Server für neue Benutzer in CentOS/RHEL 5 ein

CentOS / RHEL 6:So booten Sie in den Einzelbenutzermodus

CentOS / RHEL :So installieren Sie eine bestimmte Version des RPM-Pakets mit YUM