Hvordan analysere systemd boot ytelse

Datasenterets Linux-servere bruker sannsynligvis systemd som initialiseringssystem. For det formål kan du være interessert i å vite at det er et verktøy tilgjengelig som kan analysere oppstartsytelsen til serveren din. Verktøyet kalles systemd-analyse, og jeg skal vise deg hvordan du bruker det.
10 ting selskaper oppbevarer i sine egne datasentre (TechRepublic nedlasting)
Hva du trenger
Alt du trenger for å få dette til er en systemd aktivert Linux-maskin og en brukerkonto med sudo-rettigheter.
Hvordan installere systemd-analyse
Gode nyheter. Det er ingen installasjon å gjøre, da systemd-analyse er en del av systemd-pakken med verktøy. Du kan bekrefte at verktøyet er installert ved å gi kommandoen:
som systemd-analyserer
Du skal se banen til den kjørbare kommandoen oppført ( figur A ).
Figur A
Our systemd-analyze executable path." data-credit="" rel="noopener noreferrer nofollow">
Vår systemd-analyser kjørbare bane.
Hvordan analysere systemd
Nå kjører vi analysekommandoen. La oss først finne ut den faktiske starttiden for maskinen ved å kjøre kommandoen uten argumenter, slik:
sudo systemd-analyse
Som du kan se (i figur B ) er den totale starttiden for System76 Thelio min 55.252 sekunder.
Figur B
Total boot time for the machine." data-credit="" rel="noopener noreferrer nofollow">
Total starttid for maskinen.
Denne starttiden er delt opp i:
Fastvare: 33.568 sekunder.
Startlaster: 8.323 sekunder
Kernel: 5.555 sekunder
Brukerspace: 7, 805 sekunder
Hvis den tiden er for lang for deg, hvordan finner du ut hva du har skylden? Jeg er glad du spurte. Gi kommandoen:
sudo systemd-analyse skyld
Kommandoen over vil liste opp hver eneste tjeneste som starter opp på maskinen, og tiden det tar ( Figur C ). For eksempel, på min maskin er de største lovbryterne:
NetworkManager-wait-online: 6.401 sekunder
Plymouth-sluttet-ventetid: 2.793 sekunder
E2scrub_all: 2.002 sekunder
Snap-core: 283 ms
Snap-bluemail: 253 ms
Udisks2: 251 ms
System-løst: 250 ms
Logrotate: 238 ms
Dev-nvme0n1p3: 232 ms
Figur C
All services and their boot time." data-credit="" rel="noopener noreferrer nofollow">
Alle tjenester og deres starttid.
Denne listen fortsetter å "skylde" på et ganske stort antall tjenester - de fleste av dem er under 100 ms. Det er klart jeg ikke har noe som forårsaker lange forsinkelser under oppstart. Skulle en tjeneste forårsake en slik forsinkelse, blir den imidlertid oppført, og du kan begynne å feilsøke hvorfor.
Du kan også la kommandoen skrive ut resultatene i en hendelsesstil med kommandoen:
sudo systemd-analyse kritisk kjede
Resultatene vil vise tiden da en enhet ble aktiv, som en kjede av hendelser ( figur C ).
Figur C
The critical-chain display." data-credit="" rel="noopener noreferrer nofollow">
Den kritiske kjededisplayet.
Og det er slik du kan bruke det innebygde systemverktøyet for å hjelpe deg med å begynne å feilsøke hvorfor Linux-systemene dine kan være treg å starte opp. Hvis du vil lære mer om systemd-analyseverktøyet, må du utgi kommandoen man systemd-analyse og lese alt om det.
Datasenter Trender Nyhetsbrev
DevOps, virtualisering, hybridsky, lagring og driftseffektivitet er bare noen av datasentertemaene vi vil trekke frem. Leveres mandager og onsdager
Registrer deg i dag