Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 7160|Svar: 5

Docker modifierar och begränsar container-CPU, minne och andra resurser

[Kopiera länk]
Publicerad på 2022-08-06 13:55:37 | | | |
Krav: När du skapar en docker-container kan du begränsa den maximala minnesanvändningen för containern genom att lägga till parametern -m.

Granska containerminnesgränser

Värddatorn installerar ett 8G-minnesminne och skapar 3 containrar, varav det maximala minnet i itsvse-redis-containern är begränsat till 512M, och de återstående två containrarna är inte begränsade, som visas i figuren nedan:



Detaljerad förklaring av utdatainformationsformatet

[CONTAINER]: Visar containerns ID i kort form.
CPU %: CPU-användning.
[MEM ANVÄNDNING/GRÄNS]: Det minne som används för närvarande och det maximala minnet som kan användas.
[MEM %]: Visar minnesanvändning som procent.
[NET I/O]: Nätverks-I/O-data.
[BLOCK I/O]: Disk I/O-data.
[PIDS]:P ID-nummer.

Docker-uppdateringskommando

Docker update-kommandot uppdaterar dynamiskt containerkonfigurationen. Du kan använda detta kommando för att förhindra att containrar förbrukar för mycket resurser från sina Docker-värdar. Med ett enda kommando kan du sätta gränser för en enda container eller flera containrar. För att specificera flera behållare, tillhandahåll en lista med containernamn eller ID:n separerade med mellanslag.

OPTIONSBESKRIVNING

Namn
beskrivning
--blkio-vikt
Blockering av IO (relativ vikt), mellan 10 och 1000, 0 är avstängd (standard undertryckt)
--CPU-period
Begränsa CPU:s CFS (Totally Fair Scheduler) varaktighet
--cpu-kvot
Begränsa CPU CFS (Completely Fair Scheduler)-kvoter
--cpu-rt-period
API 1.25+, som begränsar CPU:ns realtidstid till mikrosekunder
--cpu-rt-runtime
API 1.25+, som begränsar CPU:ns realtidskörning till mikrosekunder
--cpu-shares, -c
CPU-andel (relativ vikt)
--Processorer
API 1.29+, antal CPU:er
--cpuset-cpus
Tillåten CPU (0-3,0,1)
--cpuset-mem
Tillåten MEM (0-3,0,1)
--kärnminne
Kärnminnesgränser
--minnesbyte
Swap-gränsen är lika med minne plus swapping, "-1" för att möjliggöra obegränsad swapping
--minnesreservatio
Minnesmjuk gräns
--minne, -m
Minnesgräns
--pids-gräns
API 1.40+, justera container-pids-gränser (-1 betyder obegränsad)
--starta om
Starta om policyn för att applicera när containern lämnar

Dokumentation:Inloggningen med hyperlänken är synlig.

Anta att du begränsar php5-fpm-containernMaximal minnesanvändning 1024M (1G), kommandot är följande:



(Slut)




Föregående:HTML5 PostMessage kommunikation över fönster
Nästa:[Vrid] En mening Uppgift. Resultatet kommer att låsas, hur annars skriva den här koden?
 Hyresvärd| Publicerad på 2022-08-06 13:58:43 |
Om du inte sätter parametern --memory-swap kan du få ett fel:

Felsvar från daemon: Kan inte uppdatera container ae7884f515f96cad65668d6a44e13bb899c1e7fd411abcc88577a79d4302a3: Minnesgränsen bör vara mindre än den redan inställda minneswapgränsen, uppdatera minneswapen samtidigt
 Hyresvärd| Publicerad på 2022-08-06 14:31:57 |
Linux använder lookbusy för att simulera CPU-användning
https://www.itsvse.com/thread-10260-1-1.html
Publicerad på 2022-08-06 15:52:44 |
Lär dig att lära dig
 Hyresvärd| Publicerad på 2023-07-01 21:46:50 |
Runtime-alternativ för Docker-minne, CPU och GPU:Inloggningen med hyperlänken är synlig.

--minnesbytesdetaljer

--memory-swap är en modifierflagga som bara är logisk om --minne också är satt. När en container använder allt tillgängligt RAM tillåter swap containern att skriva överflödiga minneskrav till disken. För applikationer som ofta byter minne till disk försämras prestandan.

Dess inställningar kan ha komplexa effekter:

Om --memory-swap är satt till ett positivt heltal, måste både ---minnet sättas till --memory-swap. --minnesswap representerar den totala mängden minne och swapzoner som kan användas, och --minne styr mängden minne som används i icke-swapzoner. därförOm --minne="300m" och --minnesbyte="1g" kan containern byta plats med 300m minne och 700m (1g - 300m).

Om --memory-swap är satt till 0, ignoreras inställningen och värdet anses vara obestämt.

Om --memory-swap sätts till samma värde som --memory, och --memory sätts till ett positivt heltal, har containern inte tillgång till swap。 Se Förhindra att behållare använder swaps.

Om --memory-swap inte är satt och --memory är satt, kan containern använda så mycket swap --minne som satt (om värdcontainern är konfigurerad med swap-minne). Till exempel, om --memory="300m" och --memory-swap inte är satta, kan containern använda totalt 600m minne och swaputrymme.

Om --memory-swap uttryckligen är satt till -1, får containern använda ett obegränsat antal swaps, upp till det antal som finns tillgängligt på värdsystemet.

Inuti containern rapporterar verktyg som free om tillgängliga utbyten för värden istället för att rapportera om vilka utbyten som finns i containern. Lita inte på resultatet från gratis eller liknande verktyg för att avgöra om en börs existerar.
 Hyresvärd| Publicerad på 2024-02-16 04:07:22 |

Om --memory-swap inte är satt,-- sätts minnet till ett värde,Standardinställningen --memory-swap kan använda samma minne som --minnetTill exempel, om du ,-- memory-swap=1G, kan du använda 1G swap-utrymme, och slutligen kan containern använda 2G minne (--minne 1G utrymme + --minnesbyte 1G utrymme).

Detta innebär att när --minne sätts,-- kan minnesbyte förstås som den totala minnesgränsen, och det tillgängliga swaputrymmet är lika med värdet av minnesswap minus minne.

Titta på container--memory-swap-konfigurationen med följande kommando:



"Minne": 536870912, // 512M=536870912/1024/1024/1024
"Minnesreservation": 0,
"MemorySwap": 1073741824, // 1G=1073741824/1024/1024/1024
"MemorySwappiness": null,

Ovanstående konfiguration är att containern begränsar minnet --memory=512M, och --memory-swap är inte satt.
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com