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í
×
    včera 22:44 | Nová verze

    Programovací jazyk Python byl vydán v nové major verzi 3.15.0. Podrobný přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    včera 22:33 | Zajímavý projekt

    BIGWORDS.PAGE je open-source webová aplikace, která po otevření odkazu v prohlížeči vykreslí přes celou obrazovku jednoduché informační sdělení. Zpráva i její nastavení jsou uložené v části URL za znakem #, například odkaz https://bigwords.page/#abclinuxu zobrazí jako velký bílý nápis 'abclinuxu' na černém pozadí. Obsah odkazu lze upravovat i vestavěným editorem, ten umožňuje nastavovat formátování a vizuální efekty textu, časovače, QR kódy a obrázky. Zdrojový kód je dostupný pod licencí MIT na GitHubu.

    ❗Červivý Hřib krade❗ | Komentářů: 5
    včera 11:55 | Upozornění

    V neděli 11. října proběhne rotace klíče kořenové zóny. Podruhé v historii. Ondřej Filip na blogu CZ.NIC: "Pokud je pro Vás DNS protokol spíše výzva, ale přesto spravujete nějakou síť či DNS resolver, zkuste si jednoduchý test, který připravila firma Cloudflare na této adrese. Obzvláště zbystřit byste měli, pokud uvidíte nějaká červená políčka."

    Ladislav Hagara | Komentářů: 7
    včera 09:55 | IT novinky

    Vláda Spojených států se rozhodla vyřadit americkou softwarovou společnost Microsoft a několik dalších velkých technologických podniků z programu, který umožňuje kvalifikovaným zahraničním pracovníkům získat povolení k trvalému pobytu. Oznámila to včera administrativa amerického prezidenta Donalda Trumpa. Opatření zdůvodnila rozsáhlým zneužíváním programu, který je dlouhodobě terčem kritiky ze strany Trumpových příznivců, neboť prý znevýhodňuje americké pracovníky.

    Ladislav Hagara | Komentářů: 11
    včera 09:44 | IT novinky

    Datové centrum největší ruské technologické společnosti Jandex v Rjazaňské oblasti se stalo cílem dronového útoku a zastavilo provoz. Jandexu se někdy přezdívá „ruský Google“. Provozuje nejoblíbenější internetový vyhledávač v Rusku nebo aplikace pro objednávky jídla a taxi. Využívají jej desítky milionů lidí v rusky mluvících zemích.

    Ladislav Hagara | Komentářů: 12
    včera 09:33 | Nová verze

    Francouzská společnost Mistral AI představila Mistral Large 4 (interně přezdívaný 'le Chonk', volně přeloženo 'pořádný macek'), 'open-weight multimodální hybridní instruct-and-reasoning model s architekturou granulárního MoE, nativně podporující více jak 160 jazyků'. Model má přes jeden bilión parametrů, z nichž při práci využívá 49 miliard, kontextové okno o délce milion tokenů a obrazový enkodér o 1,6 miliardách parametrů.

    … více »
    ❗Červivý Hřib krade❗ | Komentářů: 2
    včera 03:22 | Nová verze

    Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.20. Díky 227 přispěvatelům.

    Ladislav Hagara | Komentářů: 0
    včera 03:11 | Komunita

    Simon Long oznámil Raspberry Pi Desktop pro PC a Mac s Intelem postavený na aktualizovaném Debianu 13 Trixie. S klientem Raspberry Pi Connect pro vzdálenou správu. Ke stažení je vedle Raspberry Pi OS pro Raspberry Pi.

    Ladislav Hagara | Komentářů: 2
    8.10. 21:33 | Zajímavý projekt

    ESP32-C3 adblock přemění lacinou vývojovou desku ESP32‑C3 na samostatný DNS blokovač nejenom reklamních domén, minimalistickou alternativu k populárnímu Pi-hole. ESP32-C3 adblock místo objemných názvů domén ukládá jejich 40-bitové FNV-1a hashe do flash paměti, které pak binárně prohledává, kontrola jedné domény trvá přibližně 10 milisekund. Blocklist pojme až 537 tisíc domén a lze jej spravovat přes webové rozhraní. Projekt zatím

    … více »
    ❗Červivý Hřib krade❗ | Komentářů: 0
    8.10. 21:00 | Zajímavý software

    ArtCraft je sada open source aplikací pro práci s obrázky a videi "inspirovaných" aplikacemi od Adobe. Napsaných v Rustu. Pro MacOS, Windows i Linux. Běží také ve webovém prohlížeči. Aktuálně se jedná o 7 aplikací: PhotoCraft (Photoshop), VectorCraft (Illustrator), FilmCraft (Premiere Pro), LightCraft (Lightroom), PdfCraft (Acrobat), EffectCraft (After Effects) a DesignCraft (InDesign). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 8
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (29%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2820 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: OOM killer: zamrznutí

    29.9.2011 22:15 Jiří J. | skóre: 34 | blog: Poutník | Brno
    OOM killer: zamrznutí
    Přečteno: 641×

    Zdravím,
    celkem nedávno mi OOM killer připomněl takovou zajímavost, která mi už delší dobu vrtá hlavou. Vyskytlo se to tedy na Debianím 2.6.32.Y kernelu, ale mám pocit, že jsem to zažil i po přepisu OOM (2.6.36 myslím).

    Ve zkratce jde o to, že pokaždé, když OOM killer něco zabije, tak systém "zamrzne" na pár minut - neodpovídá na pingy, ssh, nic. Zamrznutí se prodlouží s přidáním swapu, ale i bez něj to je schopno neodpovídat 5-10 minut. Ptám se tedy - co sakra tak dlouho kernel na stroji s 8GB ram dělá? Zrušit reference zabitého programu přece tak dlouho trvat nemůže, swap není, takže diskem to také být nemůže. Nejzáhadnější je to, že systém po celou dobu "svítí" LED diodou HDD. Přitom - ještě jednou - swap na disku není!

    Našel jsem vícero lidí se stejným problémem, bez odpovědi.

    Tento dotaz píši čistě ze zvědavosti - pokud někdo ví, proč to kernelu tak trvá, je vítán i se svou odpovědí.

    Díky.

     

    PS: Může to být tím, že OOM prostě není těch 5-10 minut vůbec zavolán a nakopne ho až, já nevím, soft lockup detekce?


    Řešení dotazu:


    Odpovědi

    29.9.2011 23:42 ewew | skóre: 40 | blog: ewewov_blog
    Rozbalit Rozbalit vše Re: OOM killer: zamrznutí
    OOM-killer sa riadi tzv. oom-score. Je to súbor /proc/(PID)/oom_score. Pravidla pre pridanie + alebo - k hodnote v oom_score sú uvedené v dokumentácii. Daná dokumentácia je prístupná v repozitári Debianu. Názov balíčka je linux-doc-x.x.xx Cesta k dokumentácii oom killera je /usr/share/doc/linux-doc-x.x.xx/Documentation/filesystem/proc.txt.gz

    Ďalej skontroluj cron a anacron. Pokiaľ viem tak v defaultných cron a anacron tabuľkách bolo zadefinovaná pravidelná rotácia logovacích súborov. Ak sú tie súbory veľké niekoľko GB tak kľudne to môže vyťažiť CPU na max, že ani neodpovedá.

    Môžeš skúsiť pam modul pam_limit.so, tento modul sa veľmi ľahko nastavuje a má dostupnú dokumentáciu. Iná možnosť je pam modul pam_cgroups.so tento modul nie je v klasickom balíku pam modulov. Výhoda tohto modulu je, že dokáže pridelovať jednotlivé procesy. Dokumentácia k cgroups.

    Program na zistenie vyťaženia stroja je atop. Zobrazuje viac detailov ako klasický top.
    Root v linuxe : "Root povedal, linux vykona."
    30.9.2011 11:30 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: OOM killer: zamrznutí
    mv log log.20110929 netrva dlhsie ako zlomok sekundy bez ohladu na velkost suboru (pokial je to v ramci jedneho fs a zatial som to videl vzdy v spolocnom adresari, takze ano) pretoze vobec nesaha na data suboru. A ak aj nahodou nie, tak system, ktory kvoli kopirovaniu suboru nie je schopny ani pingat ma niekde tazky problem a nie je to v crone.
    If you hold a Unix shell up to your ear, you can you hear the C.
    30.9.2011 11:49 ewew | skóre: 40 | blog: ewewov_blog
    Rozbalit Rozbalit vše Re: OOM killer: zamrznutí
    Mal som na mysli, keď logrotate balí súbory pomocou gzip.
    Root v linuxe : "Root povedal, linux vykona."
    30.9.2011 00:06 Jooky (inactive) | skóre: 39 | blog: Jooky | Bratislava
    Rozbalit Rozbalit vše Re: OOM killer: zamrznutí
    Treba sa na to pozerat trosku komplexnejsie. V provom rade OOM Kiler je uz posledne stadium a velmi zle. Spravne navrhnuty produkcny system by sa k tomu nemal nikdy dostat. Jednak nedostatok pamate je zly "sizing", alebo nedostatocne otestovana app. Dalsia vec je, ze nie je garancia co bude zabite. Zo skusenosti mozem povedat, ze takmer vzdy to schyta aj ina app. Ak je to prave DB s velkym, ale staticky alokovanym priestorom, tak potom to uz je jedno ... server je zrely na reboot a kontrolu integrity ... ale k veci

    Ako som povedal OOM Kiler je az posledne stadium. Ked si zoberieme ako priklad vas server s 8GB ram, tak celkom dost miesta urcite ostane na buffer a cache. Pocas behu systemu sa tam dostane dost vela dat a za beznych okolnosti v cache moze byt aj niekolko 100MB stranok, ktore si vyzaduju zapis na disk.

    V momente, ked sa na takom systeme "kusne" applikacia vo "for (::) malloc();", tak zacina prve stadium. Vsetky data, ktore nie su "aktualne" potrebne sa zacnu vytlacat z pamate. Kernel zacne redukovat cache. Algoritmus na spravu cache najprv zacne vyhadzovat najmenej potrebne stranky a s rastucou potrebou pamate zacne agresivnejsie "upratovat". V istom momente spotrebovava znacnu cast cpu vykonu a snazi sa zapisat "dirty" stranky na disk. Sucastne s "upratovanim" sa beziace applikacie dozaduju svojich dat a "natahuju" si data s5 do cache v pamati. Cim je menej volnej pamate, tym je pravdepodobnejsie, ze kod/data nie je v pamati a je ho potrebne nacitat z disku. Priebezne ako zacina byt zaplnenie pamate kriticke, zacinaju "zlyhavat" algoritmy na predcitanie a spravu pamate. Nie pre problem v navrhu, ale problem s nedostatkom volnej pamate. Alokovanu cast pamate "programom" nie je mozne uvolnit a miesto na cache zufalo klesa. V tomto momente uz neostava nic ine ako disku zurivo blikat a nacitavat kazdy kusok kodu pre "beziace" aplikacie z disku. Toto je presne moment, kedy prestava system odpovedat v rozumnom case a disk sa ide zblaznit, ale stale este neprichadza na scenu OOM Kiler.

    V momente, ked uz nie je co uvolnit (ziadne cache a buffer v pamati) prichadza OOM Kiler. Podla istych internych pravidiel vyberie jeden, alebo niekolko procesov. Tym da riadne "po hlave" a system uvolni ich pamat. Uvolnenie pamate je velmi rychle (pre istotu si mozte skontrolovat logy kernelu), ale kedze system uz pred nastupom OOM Kileru neodpovedal, tak tazko urcit moment kedy "upratal". Dalsia vec je, ze s prazdnou cache system musi znova natahat mnozstvo "stranok" z disku aby mohol pokracovat s vykonavanim kodu aplikacii. Ak mate moznost sledovat kernel logy napr. cez seriovu linku a zaujima vas to, tak to porucujem skusit :) ... tak isto pohladat stranky na webe spominajuce zazracne anglicke slovicko "Thrashing".

    Ak by sme k tomu vsetkemu, co som hore napisal pridali este aj swap. Tak pocas "upratovania" sa system snazi dostat co sa da do swapu a tym sa cely proces spomali.

    Cital som ten bug report, co ste pridali ako linku. Osobne si myslim, ze by sa mal zavriet ako "won't fix". Uz z principu je zle ak dojde pamat a su na to ine prostriedky ako predchadzat takemu stavu, alebo ho riesit. OOM Kiler je az posledna zachrana, no maximalne tak na "Desktop" stroje. Na servri je lepsie spravit dump pamate a analyzovat co sa stalo, ako bezhlavo zabijat co tam bezi. Ked zakuliluje spolu s povodcom problemu aj backend nejakej sluzby, alebo databazy, tak potom je to uz aj tak jedno. System sa sice zotavil, ale sluzby nie.

    pre zaujimavost doporucujem pozriet aj
    # sysctl -a | grep -F vm.
    # sysctl -a | grep -F oom
    
    Cela tato tema, je na viac ako len odpoved v diskusii. Ak je este nieco stale nejasne, tak v priebehu dalsich dni sa isto budem pozerat sem do diskusie :o) Staci sa spytat ...
    30.9.2011 01:19 Jiří J. | skóre: 34 | blog: Poutník | Brno
    Rozbalit Rozbalit vše Re: OOM killer: zamrznutí

    Kolega nahoře asi moc nepochopil, o co mi šlo, nepotřebuji rady "co" a "jak" nastavit, aby nedošlo k OOM, jen mě zaujala samotná situace zamrznutí kernelovských vláken (icmp echo reply) situací v userspace.

    Díky za analýzu, vím, co je to trashing, jak funguje (přibližně) stránkování paměti, co jsou to výpadky stránek, jak a proč k nim může dojít, ale měl jsem za to, že kód všech programů je vždy udržován v paměti, pokud jej není kam odložit (tzn. není zapnutý swap).

    To opravdu může nastat situace, kdy kernel začne z nedostatku mazat z aktivní paměti "textové" segmenty (v případě ELF binárek) jednotlivých (v ten moment asi spících) procesů? To se mi nezdá - tyto části zabírají většinou pár KB, u větších programů výjimečně i jednotky MB, ale nic víc. A nenapadá mě nic dalšího, co by šlo načíst z disku bez použití swapu. Ale něco na tom pravdy bude, jinak by HDD LED nesvítila.

    I kdyby to byla pravda, kernel by v žádném případě neměl takto kompletně zamrznout na takovou dobu, OOM killer měl zasáhnout v řádech sekund, ne minut. Nezávisle na tom, že "k OOM stejně v reálném nasazení jen tak nedojde", je to prostě chyba designu. Jasně, systém se může zotavit sám i bez zabití nějakého procesu, ale pokud to nenastane do pár sekund, je lepší zavolat OOM killera, aby alespoň ostatní služby (ty, které mají např. oom_adj na -17) mohly běžet.

    30.9.2011 02:43 Sten
    Rozbalit Rozbalit vše Re: OOM killer: zamrznutí
    Načíst z disku bez swapu lze úplně cokoliv, co bylo původně načteno z disku a od té doby se nezměnilo. Včetně kódu nebo konstant sdílených knihoven nebo jaderných modulů. Do swapu se ukládají pouze ty stránky, které se změnily, protože není jiný zdroj, odkud je načíst.
    30.9.2011 04:02 Jiří J. | skóre: 34 | blog: Poutník | Brno
    Rozbalit Rozbalit vše Re: OOM killer: zamrznutí

    To je pravda, nebo minimálně to dává smysl. Díky za upřesnění.

    30.9.2011 02:39 Sten
    Rozbalit Rozbalit vše Re: OOM killer: zamrznutí
    Aby se OOM killer spustil, musí dojít paměť. Než ale jádro ohlásí, že paměť došla, vyzkouší vše možné, aby nějakou volnou paměť našlo. To nejčastěji znamená, že vyhází nejprve veškerou cache (přístup na disk se razantně zpomalí), potom se pokusí všechno ostatní odložit do swapu, dokud i tam nedojde místo (všechno se ještě víc zpomalí), a nakonec vyhází i kód aplikací a nezamčené části jádra (stále jsou na disku, takže je lze dotáhnout, až budou znovu potřeba, což je ale většinou potřeba hned, takže se zase všechno strašně zpomalí). Teprve potom je jasné, že paměť prostě není, a OOM killer se spustí. Jenže v tu dobu už je všechno vyhozené mimo paměť, tak se to musí znovu načíst, než se systém opět rozjede.
    30.9.2011 12:21 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: OOM killer: zamrznutí
    Hezky vysvětleno. Takže když zareaguje OOM killer je vše, co může být odstraněno z paměti a načteno z disku už pryč s paměti a systém si pořád a pořád dotahuje z disku kód, který má provádět, protože v paměti už na něj místo nemá. Naštěstí neprovozuji žádný systém v tomto režimu. :-)

    Založit nové vlákno • Nahoru

    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.