abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:22 | IT novinky

    Před 25 lety zaplavil celý svět virus ILOVEYOU. Virus se šířil e-mailem, jenž nesl přílohu s názvem I Love You. Příjemci, zvědavému, kdo se do něj zamiloval, pak program spuštěný otevřením přílohy načetl z adresáře e-mailové adresy a na ně pak „milostný vzkaz“ poslal dál. Škody vznikaly jak zahlcením e-mailových serverů, tak i druhou činností viru, kterou bylo přemazání souborů uložených v napadeném počítači.

    Ladislav Hagara | Komentářů: 0
    včera 22:33 | Nová verze

    Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.

    Ladislav Hagara | Komentářů: 2
    2.5. 22:22 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).

    Ladislav Hagara | Komentářů: 0
    2.5. 19:11 | IT novinky

    Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.

    Ladislav Hagara | Komentářů: 3
    2.5. 11:22 | Zajímavý projekt

    Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.

    Ladislav Hagara | Komentářů: 2
    2.5. 09:11 | Bezpečnostní upozornění

    Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.

    Ladislav Hagara | Komentářů: 2
    1.5. 20:00 | Komunita

    V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.

    Ladislav Hagara | Komentářů: 3
    1.5. 19:22 | IT novinky

    Oficiální ceny Raspberry Pi Compute Modulů 4 klesly o 5 dolarů (4 GB varianty), respektive o 10 dolarů (8 GB varianty).

    Ladislav Hagara | Komentářů: 0
    30.4. 22:33 | Nová verze

    Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.

    Ladislav Hagara | Komentářů: 0
    30.4. 17:44 | Zajímavý článek

    Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.

    karkar | Komentářů: 0
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (9%)
     (22%)
     (4%)
     (2%)
     (3%)
     (0%)
     (1%)
     (3%)
    Celkem 516 hlasů
     Komentářů: 19, poslední 30.4. 11:32
    Rozcestník

    Dotaz: Kde "nájsť" informácie o záťaži qemu-kvm virtuálky

    26.11.2015 19:36 Peter
    Kde "nájsť" informácie o záťaži qemu-kvm virtuálky
    Přečteno: 223×
    Dobrý deň vám prajem.

    Mám server s niekoľkými virtuálkami priamo nad qemu-kvm (čiže žiaden libvirt, virsh, proxmox, ...) a chcem si vytvoriť grafy vytaženia jednotlivých virtuálok. V podstate potrebujem zistiť ako konkrétny PID qemu-kvm vyťažuje procesor, koľko RAM má vyhradené a koľko naozaj spotrebováva, ako vyťažuje IO disku, ako aktuálne vyťažuje sieť (aktuálna rýchlosť upload, download) a koľko od spustenia preniesol dát (používam tap v bridge) a neviem čo ešte by bolo vhodné monitorovať. Pochopiteľne potrebujem aby tie dáta získaval skript, teda interaktívne nástroje typu htop sú nepoužitelné.

    Silne predpokladám, že napríklad na ten procesor a pamäť potrebujem ps, ale napríklad neviem, že či VSS a RSZ je to čo hľadám (VSZ - vyhradená pamäť - čiže napríklad pri spustení qemu-kvm som nastavil stroju 4GB + réžia a RSZ - aktuálne používaná pamäť - čiže napríklad ten virtuálny linux vo vnútri aktuálne používa povedzme 500MB)

    Proste potrebujem len pomoc s tým aké nástroje a ako (s akými prepínačmi - voľbami) mi povedia čo chcem vedieť - zvyšok si samozrejme naskriptujem sám.

    Vopred vám za všetky odpovede veľmi pekne ďakujem.

    Odpovědi

    26.11.2015 21:43 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Kde "nájsť" informácie o záťaži qemu-kvm virtuálky

    Musím se předem přiznat, že s monitorováním RAM a disku moc zkušeností nemám, ale o zatížení CPU něco vím. Takže se ve své odpovědi omezím na CPU a snad objasním aspoň z malé části, jak se to dá monitorovat.

    Jednoduchá odpověď je „v /proc/[pid]/stat“, ale zkusím to trochu rozvést. Tady je jednoduchý load monitor, který se dá rovnou spustit a vyzkoušet:

    (
    # Vyrobíme nějaký proces k monitorování.
    (for ((;;)); do stress -c 1 -t 1; sleep 1; done >/dev/null;) &
    
    # Poznamenáme si, který proces to byl a že ho máme zabít.
    trap 'kill "$PID"' EXIT
    PID="$!"
    
    # Naprogramujeme výpočet vytížení procesoru v awk.
    AWK_SCRIPT='
    	BEGIN {
    		getconf = "getconf CLK_TCK"
    		getconf | getline TCK
    		close(getconf)
    	}
    	{
    		uspace = $14
    		kernel = $15
    		kids_uspace = $16
    		kids_kernel = $17
    		kvm_uspace = $43
    		kvm_kernel = $44
    		total_ticks = uspace + kernel + kids_uspace + kids_kernel
    		kvm_ticks = kvm_uspace + kvm_kernel
    	}
    	NR > 1 {
    		print	(100 * (total_ticks - last_total_ticks) / TCK) "% total,",
    				(100 * (kvm_ticks - last_kvm_ticks) / TCK) "% in KVM"
    	}
    	{
    		last_total_ticks = total_ticks
    		last_kvm_ticks = kvm_ticks
    	}'
    
    # Každou sekundu načteme statistiky vytížení procesoru do awk.
    for ((i = 0; i < 20; ++i)); do
    	cat "/proc/${PID}/stat"
    	sleep 1
    done | awk "$AWK_SCRIPT"
    )
    Co tohle dělá, v kostce:
    • Spustí to subshell, který sekundu spí a sekundu stressuje jeden procesor na 100%. Poznamená si to PID toho subshellu (nikoliv však PID stressu ani PID jednoho dalšího potomka, kterého stress zplodí).
    • Pomocí awk čte informace o tom, kolik tiků příslušný proces spotřeboval od minulého čtení (před sekundou) a na základě toho ukazuje vytížení procesoru v procentech. Protože stress nic nevirtualizuje, bude druhá vypisovaná hodnota v tomto případě vždycky nula. Protože děti toho shellu, jehož PID sledujeme, vždy jednu sekundu stressují a jednu sekundu spí, právě tomu bude odpovídat první vypisovaná hodnota. Co znamenají které hodnoty v daném /proc/[pid]/stat souboru nebo v globálním /proc/stat souboru, se dá snadno nalézt v man 5 proc.
    • Nakonec to dvacet sekund ukazuje každou sekundu zatížení. Záleží na počtu tiků za sekundu (často je jich 100), a na délce intervalu (1 sekunda v tomto případě), jak bude monitorování přesné. Samozřejmě se tiky počítají pro každý procesor zvlášť, takže pokud monitorovaný proces spustí víc subprocesů na multiprocesoru, například stress -c 3, bude chvílemi ukazovat například vytížení 300%. To je zcela normální a očekávaný jev. Aby člověk získal hodnotu od 0 do 100%, musí to normalizovat třeba počtem virtuálních procesorů toho KVM.

    Ke KVM musím dodat, že se mi teď zrovna nechce logovat na některý z mých KVM serverů a tudíž jsem hodnoty typu kvm_ticks ani náznakem neotestoval. Takže tam můžu mít celkem značnou spoustu chyb jak ve sloupcích, které dané hodnoty obsahují, tak i v jejich interpretaci. ;-) To už si musíš dořešit. Každopádně manuálová stránka říká, že hodnoty pro virtualizaci, tedy kvm_uspace a kvm_kernel, jsou už zahrnuté v hodnotách pro děti daného procesu (kids_uspace a kids_kernel), takže není radno všech šest políček sečíst. První dvě plně stačí pro procesy bez dětí, druhá dvě je třeba přičíst, když je to (jako v tomto případě) nějaký shell nebo stress s potomky a ta poslední dvě jsou asi tou slibovanou třetinou odpovědi na tvou otázku — udávají, kolik se strávilo virtualizací. Ovšem pokud někomu počítáš vytížení jeho KVM stroje, podle mě bys měl počítat všechny userspace + kernel + kvm_uspace + kvm_kernel tiky daného KVM procesu, protože to, co proces virtuálního stroje dělá mimo virtuální stroj (údržbu kdovíčeho, mapování paměti, přístupy k disku a k virtuálním zařízením všeho druhu atd. atp.), by se rozhodně mělo taky „účtovat“ tomu klientovi. Děje se to přece kvůli podpoře běhu toho příslušného virtuálního stroje a že při tom procesor není zrovna ve virtualizačním režimu a nevykonává přímo instrukce toho KVM, to není až tak rozhodující.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.