Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Limitazione dell'utilizzo delle risorse di processo in AL2 023 utilizzando cgroups
Sebbene se ne consiglia l'usoControllo delle risorse con systemd, questa sezione tratta l'utilizzo di base delle libcgroup-tools utilità di base per limitare l'utilizzo di CPU e memoria dei processi. Entrambi i metodi sono alternativi all'utilizzo dell'cpulimitutilità, precedentemente disponibile inEPEL.
L'esempio seguente illustra l'esecuzione dello stress-ng stress test (dal stress-ng pacchetto) limitando al contempo l'utilizzo della CPU e della memoria utilizzando le utilità del libcgroup-tools pacchetto e i regolabili in esso contenuti. sysfs
Utilizzalo libcgroup-tools sulla riga di comando per limitare l'utilizzo delle risorse
-
Installare il pacchetto
libcgroup-tools.[ec2-user ~]$sudo dnf installlibcgroup-tools -
Crea un comando
cgroupconcpui controllermemorye assegnagli un nome (our-example-limits). Utilizzando le-topzioni-aand per consentire all'ec2-userutente di controllare i regolabili delcgroup[ec2-user ~]$sudo cgcreate -aec2-user-tec2-user-g memory,cpu:our-example-limitsOra c'è una
/sys/fs/cgroup/our-example-limits/directory che contiene i file che possono essere usati per controllare ogni tunable.Nota
Amazon Linux 2 utilizza
cgroup-v1piuttosto ciòcgroup-v2che viene utilizzato su AL2 023. Su AL2, isysfspercorsi sono diversi e ci saranno/sys/fs/cgroup/memory/our-example-limits/sys/fs/cgroup/cpu/our-example-limitsdelle cartelle di proprietàec2-userche contengono file che possono essere utilizzati per controllare i limiti di.cgroup -
Limita l'utilizzo della memoria di tutti i processi
cgroupa 100 milioni di byte.[ec2-user ~]$echo100000000> /sys/fs/cgroup/our-example-limits/memory.maxNota
Amazon Linux 2 utilizza
cgroup-v1invece dicgroup-v2quello utilizzato da Amazon Linux 2023. Ciò significa che alcuni regolabili sono diversi. Per limitare l'utilizzo della memoria AL2, viene invece utilizzato il seguente sintonizzabile.[ec2-user ~]$echo10000000> /sys/fs/cgroup/memory/our-example-limits/memory.limit_in_bytes -
Limita l'utilizzo della CPU di tutti i processi nel nostro paese
cgroupal 10%. Il formato delcpu.maxfile è che$MAX $PERIODlimita il gruppo a consumare$MAXper tutti$PERIOD.[ec2-user ~]$echo10000 100000> /sys/fs/cgroup/our-example-limits/cpu.maxAmazon Linux 2 utilizza
cgroup-v1invece dicgroup-v2quello utilizzato da Amazon Linux 2023. Ciò significa che alcuni regolabili sono diversi, incluso il modo di limitare l'utilizzo della CPU. -
L'esempio seguente viene eseguito
stress-ng(che può essere installato eseguendodnf install -y stress-ng) inour-example-limitscgroup. Mentre ilstress-ngcomando è in esecuzione, è possibile osservaretopche è limitato al 10% di CPU tempo.[ec2-user ~]$sudo cgexec -g memory,cpu:our-example-limitsstress-ng --cpu 1 -
Pulisci rimuovendo il cgroup
[ec2-user ~]$sudo cgdelete -g memory,cpu:our-example-limits
La documentazione del kernel Linux cgroup-v2