Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Membatasi penggunaan sumber daya proses di AL2 023 menggunakan cgroups
Meskipun disarankan untuk digunakanKontrol sumber daya dengan systemd, bagian ini mencakup penggunaan dasar libcgroup-tools utilitas dasar untuk membatasi penggunaan CPU dan memori proses. Kedua metode tersebut merupakan alternatif untuk menggunakan cpulimit utilitas, yang sebelumnya ditemukan diEPEL.
Contoh di bawah ini mencakup menjalankan stress-ng stress test (dari stress-ng paket) sambil membatasi penggunaan CPU dan memorinya menggunakan utilitas dari libcgroup-tools paket, dan tunable insysfs.
Gunakan libcgroup-tools pada baris perintah untuk membatasi penggunaan sumber daya
-
Instal paket
libcgroup-tools.[ec2-user ~]$sudo dnf installlibcgroup-tools -
Buat
cgroupdenganmemorydancpupengontrol, dan beri nama (our-example-limits). Menggunakan-topsi-adan untuk memungkinkanec2-userpengguna mengontrol tunablecgroup[ec2-user ~]$sudo cgcreate -aec2-user-tec2-user-g memory,cpu:our-example-limitsSekarang ada
/sys/fs/cgroup/our-example-limits/direktori yang berisi file yang dapat digunakan untuk mengontrol setiap tunable.catatan
Amazon Linux 2 menggunakan
cgroup-v1lebih tepatnyacgroup-v2yang digunakan pada AL2 023. Pada AL2,sysfsjalurnya berbeda, dan akan ada/sys/fs/cgroup/memory/our-example-limitsdan/sys/fs/cgroup/cpu/our-example-limitsdirektoriec2-useryang dimiliki yang berisi file yang dapat digunakan untuk mengontrol batas.cgroup -
Batasi penggunaan memori dari semua proses dalam 100 juta byte kami
cgroup.[ec2-user ~]$echo100000000> /sys/fs/cgroup/our-example-limits/memory.maxcatatan
Amazon Linux 2 menggunakan
cgroup-v1bukancgroup-v2yang digunakan Amazon Linux 2023. Ini berarti bahwa beberapa tunable berbeda. Untuk membatasi penggunaan memori AL2, tunable di bawah ini digunakan sebagai gantinya.[ec2-user ~]$echo10000000> /sys/fs/cgroup/memory/our-example-limits/memory.limit_in_bytes -
Batasi penggunaan CPU dari semua proses di kami
cgrouphingga 10%. Formatcpu.maxfile adalah$MAX $PERIOD, membatasi kelompok untuk mengkonsumsi$MAXuntuk setiap$PERIOD.[ec2-user ~]$echo10000 100000> /sys/fs/cgroup/our-example-limits/cpu.maxAmazon Linux 2 menggunakan
cgroup-v1bukancgroup-v2yang digunakan Amazon Linux 2023. Ini berarti bahwa beberapa tunable berbeda, termasuk cara membatasi penggunaan CPU. -
Contoh di bawah ini berjalan
stress-ng(yang dapat diinstal dengan menjalankandnf install -y stress-ng) diour-example-limitscgroup. Saatstress-ngperintah sedang berjalan, Anda dapat mengamati menggunakantopbahwa itu dibatasi hingga 10% dari CPU waktu.[ec2-user ~]$sudo cgexec -g memory,cpu:our-example-limitsstress-ng --cpu 1 -
Bersihkan dengan menghapus cgroup
[ec2-user ~]$sudo cgdelete -g memory,cpu:our-example-limits
Dokumentasi Kernel Linux untuk cgroup-v2