Skip to content
Uudet virat
  • Slik fikser du varme skjermfarger på Windows 11
  • Slik aktiverer du Spotlight-skrivebord på Windows 11
  • Pantone Color of the Year 2022-tema for Windows 11
  • Windows 11 Voice Access lar deg kontrollere PC-en med stemmen din
  • Slik legger du til stasjoner i bassenget i Storage Spaces på Windows 10
onioni tech

Vain yksi tekninen sivustoz

  • Home
  • Technology News
  • Linux
  • Windows
  • Mac
  • Hardware
  • Internet
  • More
    • Opinions
    • Productivity
    • Smart Home
onioni tech

Vain yksi tekninen sivustoz

  • Home
  • Technology News
  • Linux
  • Windows
  • Mac
  • Hardware
  • Internet
  • More
    • Opinions
    • Productivity
    • Smart Home
onioni tech

Vain yksi tekninen sivustoz

Home - Linux - Hvordan begrense ressurser en LXD-beholder kan bruke

Lx Containers Limit Resources vist

Hvordan begrense ressurser en LXD-beholder kan bruke

    onsdag mai 5, 2021

Contents

  • 1 Hvordan begrense ressurser en LXD-beholder kan bruke
    • 1.1 Når begrensninger på LXD-containere kan være nyttige
    • 1.2 Hvordan sette ressursbegrensninger på LXD-containere
      • 1.2.1 Begrens minnebruk
      • 1.2.2 Begrens CPU-bruk
      • 1.2.3 Begrens diskbruk
      • 1.2.4 Begrens nettverksbruk
    • 1.3 Konklusjon

Hvordan begrense ressurser en LXD-beholder kan bruke

I en tidligere artikkel kan du utforske hva LXD er og hvordan du kommer i gang med det, i tilfelle du ikke er kjent med plattformen.

I de fleste tilfeller vil du bruke flere containere på samme system for å dele en større helhet i mindre komponenter. Det er fornuftig å begrense mengden ressurser hver komponent kan bruke. Men hvorfor? Åpenbart er antall årsaker like ubegrensede som scenariene du kan bruke containere til.

Når begrensninger på LXD-containere kan være nyttige

  • Å tilby en tjeneste og gi hver kunde en LXD-forekomst. Dette kan for eksempel være en stor server, og du er vert for hvert kundenettsted i en separat container. Hvis et nettsted får en plutselig utbrudd av trafikk, kan dette redusere de andre forekomsten. Med begrensninger vil bare en container bremse, og resten vil fungere normalt.
  • I et lignende scenario kan du enkelt selge forskjellige serviceplaner. Den ene kunden kan betale for X mengde ressurser, og den andre kan betale for Y-beløpet. Og du kan enkelt justere dette med noen få enkle kommandoer.
  • Du kan beskytte deg mot enklere former for Denial of Service-angrep. Når en container blir bombardert, vil den nå grensene for ressursbruk. De andre beholderne blir ikke berørt.
  • Du har to containere som hver bruker 100% av CPU-tiden som er tilgjengelig. Imidlertid vil du at en skal fullføre jobben raskere enn den andre. For eksempel kan man gjengi en video for et prosjekt du trenger i morgen. Du kan tilordne 90% av CPU-tiden til den første og 10% til den andre.

Selvfølgelig kan du ha dine egne grunner. Og hvis du bare bruker en container på hele systemet, trenger du kanskje ikke engang dette. Men hvis du bruker flere containere, må du nesten alltid sette noen typer grenser. Fordi et angrep, en feil eller annen form for dårlig oppførsel i en LXD-forekomst kan påvirke hele systemet og bremse det. Jo flere containere du har, jo større øker sannsynligheten for et slikt scenario.

Hvordan sette ressursbegrensninger på LXD-containere

Ressurskontroll knyttet til diskoperasjoner vil trenge at ZFS installeres. Hvis du fulgte veiledningen her, er den allerede installert. Ellers installerer du ZFS-verktøy som beskrevet i opplæringen, og kjører deretter kommandoen på nytt. Velg ZFS når du blir spurt om hvilken lagringsbakgrunn du skal bruke.

sudo lxd init

Begrens minnebruk

I kommandoene nedenfor erstatter du «container_name» med det faktiske navnet på containeren din. Å sette en minnegrense er så enkelt som å angi:

lxc config set container_name limits.memory 100MB

Skriv “GB” i stedet for “MB” hvis du vil bruke gigabyte i stedet for megabyte.

Begrens CPU-bruk

Når du vil begrense hvor mange CPU-kjerner en container kan bruke, skriv inn:

lxc config set container_name limits.cpu 2

For å «feste» til spesifikke CPU-kjerner, bruk:

lxc config set container_name limits.cpu 0-0

Dette vil gjøre at beholderen bare bruker den første CPUen. For å bruke det andre skriver du 1-1. Hvis du vil bruke alle CPU-kjernene fra første til tredje, skriver du 0-3.

En annen type grense er hvor mye CPU-tid en container kan bruke.

lxc config set container_name limits.cpu.allowance 10ms/100ms

Dette ville bare la containeren bruke ti milisekunder CPU-tid ut av hver 100 milisekund, så rundt 10% av en CPU-kjerne.

Begrens diskbruk

For å begrense diskrelaterte ressurser, må du først legge til en rotdiskenhet i beholderen din. Den eksisterer allerede som standard, arvet fra standard LXD-profilen. Men du kan ikke endre innstillingene per container-basis før du gjør dette.

lxc config device add container_name root disk pool=default path=/

Hvis du navngir bassenget ditt annerledes, erstatter du «standard» med navnet på lagringsbassenget ditt. Hvis du har glemt navnet, kan du vise det med:

lxc storage list

For å begrense diskplass kan en LXD-forekomst bruke:

lxc config device set container_name root size 7GB

Dessverre begrenser I / O (les / skriv «hastigheter» og IOPS) fungerer ikke for øyeblikket.

Begrens nettverksbruk

Som med disker, må du først legge til en virtuell Ethernet-enhet som du kan konfigurere. Finn navnet på nettverksbroen din som forbinder dine LXD-forekomster med omverdenen.

lxc network list

Bytt ut “lxdbr0” om nødvendig (hvis broen er navngitt annerledes i ditt tilfelle). Hvis du ikke valgte nettverkstypen som bro (standardsvar), i konfigurasjonstrinnene “lxd init” må du kanskje tilpasse kommandoen nedenfor for å gjenspeile ditt valg. For eksempel kan det hende du må erstatte «nictype» også med det du brukte for LXD-nettverket.

lxc config device add container_name eth0 nic name=eth0 nictype=bridged parent=lxdbr0

Til slutt, sett grenser for nettverksinngang (nedlasting) og / eller utgang (opplasting).

lxc config device set container_name eth0 limits.ingress 1Mbit

1Mbit er en megabit (ikke megabyte). En byte inneholder 8 biter, noe som betyr at dette vil begrense nedlastinger til rundt 1/8 = 0,125 Mbps per sekund, omtrent 120 kilobyte. Så hvis du vil at den skal lastes ned med 1 MB / s (megabyte), multipliser med 8, og sett inngangsgrensen til 8 MB.

For utgang, bruk:

lxc config device set container_name eth0 limits.egress 1Mbit

Konklusjon

Dette dekker de mest brukte egenskapene knyttet til ressursgrenser. Men det er mange flere variabler du kan stille med lxc config device set og lxc config set. Du kan Les mer om disse justerbare beholderegenskapene på LXDs GitHub-side.

#Hvordan #begrense #ressurser #LXDbeholder #kan #bruke

How much onions deserves this post?

Click a onion to throw it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

Innleggsnavigasjon

Previous Article
Next Article

Siste innlegg

  • Slik fikser du varme skjermfarger på Windows 11
  • Slik aktiverer du Spotlight-skrivebord på Windows 11
  • Pantone Color of the Year 2022-tema for Windows 11
  • Windows 11 Voice Access lar deg kontrollere PC-en med stemmen din
  • Slik legger du til stasjoner i bassenget i Storage Spaces på Windows 10

Kategorier

  • Chrome OS
  • Gaming
  • How Things Work
  • How-To
  • Mobile
  • Review
  • Software Hacks
  • Windows
  • Windows 11

Sitemaps

FINLAND | SWEDEN | NORWAY zz
Contact
ONIONI.FI
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies.
Cookie settingsACCEPT
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
SAVE & ACCEPT

Terms and Conditions - Privacy Policy