Fórum Root.cz

Hlavní témata => Distribuce => Téma založeno: Marecek 27. 04. 2017, 11:03:26

Název: Systemd restart služby pokud skončí chybou
Přispěvatel: Marecek 27. 04. 2017, 11:03:26
Ahoj, jde nějak v systemd nastavit aby restartoval sluzbu pokud neocekavale skonci s chybou ?
Nemohu to v tom balastu dokumentace najít nebo musím instalovat nějaké další nástroje deamontools nebo jak se to jmenuje, jde mi jen o restart a nechci psat scrip do kromu co to bude hlídat co 5 minut.
Díky Mareček
Název: Re:Systemd restart sluzby pokud skonci chybou.
Přispěvatel: Ondra Satai Nekola 27. 04. 2017, 11:09:54
https://www.freedesktop.org/software/systemd/man/systemd.service.html

Restart= ?
Název: Re:Systemd restart sluzby pokud skonci chybou.
Přispěvatel: Marecek 27. 04. 2017, 11:18:30
Dobry den, to jsem nasel, ale jsem asi blbej, ale jak se to aplikuje na konkretni sluzbu ?
service <jmenosluzby> restart=60 nebo pres systemctl ?
Název: Re:Systemd restart sluzby pokud skonci chybou.
Přispěvatel: Ondra Satai Nekola 27. 04. 2017, 11:46:44
Dobry den, to jsem nasel, ale jsem asi blbej, ale jak se to aplikuje na konkretni sluzbu ?
service <jmenosluzby> restart=60 nebo pres systemctl ?

Mozna zacni tim, ze si projdes nejaky tutorial ;)

Pise se to do unit file. Pises ho od zacatku, nebo chces jenom prepsat defaulty od neceho, co je uz v systemu?
Název: Re:Systemd restart sluzby pokud skonci chybou.
Přispěvatel: Marecek 27. 04. 2017, 11:54:33
Chci je restart bind9 v pripade ze havaruje.
Jestli to chapu tak mam v systemu toto.

[Unit]
Description=BIND Domain Name Server
Documentation=man:named(8)
After=network.target
Wants=nss-lookup.target
Before=nss-lookup.target

[Service]
EnvironmentFile=/etc/default/bind9
ExecStart=/usr/sbin/named -f $OPTIONS
ExecReload=/usr/sbin/rndc reload
ExecStop=/usr/sbin/rndc stop

[Install]
WantedBy=multi-user.target

A musim tam jen doplnit do service
Restart=on-failure
a pak restartnout bind ,  systemctl restart bind9.service nebo musim restartnout i systemd aby si nacetl novou cfg ?

Název: Re:Systemd restart sluzby pokud skonci chybou.
Přispěvatel: Ondra Satai Nekola 27. 04. 2017, 12:06:51
Chci je restart bind9 v pripade ze havaruje.
Jestli to chapu tak mam v systemu toto.

[Unit]
Description=BIND Domain Name Server
Documentation=man:named(8)
After=network.target
Wants=nss-lookup.target
Before=nss-lookup.target

[Service]
EnvironmentFile=/etc/default/bind9
ExecStart=/usr/sbin/named -f $OPTIONS
ExecReload=/usr/sbin/rndc reload
ExecStop=/usr/sbin/rndc stop

[Install]
WantedBy=multi-user.target

A musim tam jen doplnit do service
Restart=on-failure
a pak restartnout bind ,  systemctl restart bind9.service nebo musim restartnout i systemd aby si nacetl novou cfg ?

vazne by sis  mel precist dokumentaci...

(chces systemd daemon-reload a nechces prasit do existujiciho souboru, ale chces jenom specifikovat detaily. Viz https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sect-Managing_Services_with_systemd-Unit_Files.html#sect-Managing_Services_with_systemd-Unit_File_Modify )

(dale - nekdo to napsal, jak to napsal, tak mozna stoji za zamysleni, zda k tomu nemel duvod - ciste pro jistotu)
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: Marecek 27. 04. 2017, 13:06:26
Fakt nekecal, dekuji.
---
mkdir -p /etc/systemd/system/bind9.service.d
vim /etc/systemd/system/bind9.service.d/bind9_restart.conf
[Service]
Restart=always
RestartSec=30

systemctl daemon-reload
systemctl restart bind9.service
---
A po killnuti named procesu to fakt nastartuje znovu samo, fakt to k necemu je ten systemd.
Diky
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: JardaP . 27. 04. 2017, 13:48:27
A po killnuti named procesu to fakt nastartuje znovu samo, fakt to k necemu je ten systemd.

Jezis, ten Poettering je ale chytrej! Vzdyt tohle se az dosud nedalo v NIXech nijak resit.
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: Ondra Satai Nekola 27. 04. 2017, 13:53:42
A po killnuti named procesu to fakt nastartuje znovu samo, fakt to k necemu je ten systemd.

Jezis, ten Poettering je ale chytrej! Vzdyt tohle se az dosud nedalo v NIXech nijak resit.

A to tu nekdo tvrdil?
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: JardaP . 27. 04. 2017, 14:11:19
A to tu nekdo tvrdil?

".....fakt to k necemu je ten systemd."
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: j 27. 04. 2017, 14:14:53
....
A ted sem zvedavej, co budes delat, az se ti ten bind bude restartovat pekne porad dokola, sezere to veskery IO, CPU ...
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: Sten 27. 04. 2017, 15:03:54
Jezis, ten Poettering je ale chytrej! Vzdyt tohle se az dosud nedalo v NIXech nijak resit.

A jak se to řešilo? Napsal jsi to do inittab, takže při chybě při změně konfigurace se to neustále dokola restartovalo tak rychle, jak jen to šlo?

A ted sem zvedavej, co budes delat, az se ti ten bind bude restartovat pekne porad dokola, sezere to veskery IO, CPU ...

Tady je to zase samý ekspert na to, jak špatný je systemd, aniž by znal jen základy

Citace
RestartSec=
Configures the time to sleep before restarting a service
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: JardaP . 27. 04. 2017, 17:03:47
Jezis, ten Poettering je ale chytrej! Vzdyt tohle se az dosud nedalo v NIXech nijak resit.

A jak se to řešilo? Napsal jsi to do inittab, takže při chybě při změně konfigurace se to neustále dokola restartovalo tak rychle, jak jen to šlo?

Tak on to systemd dela nejak uzasneji? Krome toho, kdo ti brani si do inittab dat skript, kteru spousti tu sluzbu treba s par vterinovym zpozdenim, aby se to nespoustelo "neustále dokola, tak rychle, jak jen to šlo"?
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: Ucitel 27. 04. 2017, 17:18:44
Krome toho, kdo ti brani si do inittab dat skript

Pud sebezachovy. SystemD jsme nevymysleli jako truc podnik, ale proto ze starej init byl vousatej hack & bordel. Nic proti retro masochistum ale SystemD vyhral na cely care a NIC uz s tim nenadelate. A vyhral proto ze JE lepsi. Ty Jardo taky jednou zmigrujes, akorat to pak nejak obkecas ze v 2017 to jeste nebylo ono ale ted to uz je dobry...
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: Sten 27. 04. 2017, 17:39:04
Tak on to systemd dela nejak uzasneji? Krome toho, kdo ti brani si do inittab dat skript, kteru spousti tu sluzbu treba s par vterinovym zpozdenim, aby se to nespoustelo "neustále dokola, tak rychle, jak jen to šlo"?

Systemd to dělá tak, že to máš v jednotce, která má start/stop/reload, enable/disable, umí mimo jiné třeba i měnit uživatele, omezit využité zdroje (mrkám na j-čko a jeho hlášku o plném vytížení CPU a IO) či posílat e-maily při pádu.

Nic ti nebrání napsat si na tohle všechno skript. Stejně tak ti nic nebrání napsat si vlastní DNS server, který nepadá. Pokud ignoruješ, kolik to bude stát času a problémů s údržbou.
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: j 27. 04. 2017, 17:39:38
Tady je to zase samý ekspert na to, jak špatný je systemd, aniž by znal jen základy
Citace
RestartSec=
Configures the time to sleep before restarting a service
Suhlasim, pitomcu jako ty je tu hodne ... ty samozrejme predem telepaticky vis, jak dlouho bude aplikaci trvat, nez se slozi, pripadne nez se nastartuje ... takze se ti vubec nestane, ze budes mit v pameti par tisic procesu tehoz ... protoze se to proste bez dalsiho restartuje ... pricemz nikde neni receno, ze se to vubec nekdy z ty ramky uvolni. Takze misto toho, aby tu byla jedna zbuchnuta servisa, budeme tu mit jeden nedostupnej server ... idealne fyzickej, a na druhy strane planety.
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: tnr 27. 04. 2017, 19:14:40
Tady je to zase samý ekspert na to, jak špatný je systemd, aniž by znal jen základy
Citace
RestartSec=
Configures the time to sleep before restarting a service
Suhlasim, pitomcu jako ty je tu hodne ... ty samozrejme predem telepaticky vis, jak dlouho bude aplikaci trvat, nez se slozi, pripadne nez se nastartuje ... takze se ti vubec nestane, ze budes mit v pameti par tisic procesu tehoz ... protoze se to proste bez dalsiho restartuje ... pricemz nikde neni receno, ze se to vubec nekdy z ty ramky uvolni. Takze misto toho, aby tu byla jedna zbuchnuta servisa, budeme tu mit jeden nedostupnej server ... idealne fyzickej, a na druhy strane planety.

Ano,ukazal si ze o SD nevis nic, protoze tyhle problemy sis vymyslel :)) a vetsinou ani z principu nemuzou nastat, protoze prave proto sd pouziva cgroups,aby mel nad sluzbami naprostou kontrolu i pres forky etc.
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: JardaP . 27. 04. 2017, 21:50:13
Ty Jardo taky jednou zmigrujes, akorat to pak nejak obkecas ze v 2017 to jeste nebylo ono ale ted to uz je dobry...

Ano, to je mozne, ze jednou nebude na vyber. Ale hodlam to odkladat co nejdele, aby si to ti kreteni zatim trochu odladili, protoze to, co predhodili lidu, je kolikrat takova lepsi beta.
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: Sten 27. 04. 2017, 21:52:52
Suhlasim, pitomcu jako ty je tu hodne ... ty samozrejme predem telepaticky vis, jak dlouho bude aplikaci trvat, nez se slozi, pripadne nez se nastartuje ... takze se ti vubec nestane, ze budes mit v pameti par tisic procesu tehoz ... protoze se to proste bez dalsiho restartuje ... pricemz nikde neni receno, ze se to vubec nekdy z ty ramky uvolni. Takze misto toho, aby tu byla jedna zbuchnuta servisa, budeme tu mit jeden nedostupnej server ... idealne fyzickej, a na druhy strane planety.

Tohle se nestane a ani stát nemůže, protože systemd před restartem postřílí všechny procesy patřící dané službě, které najde velmi snadno, protože je má seskupené pomocí cgroups. Možná by sis mohl přečíst alespoň úvodní díl seriálu o systemd tady na Rootu (https://www.root.cz/clanky/nebojte-se-systemd-co-to-je-a-co-umi/).
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: Ucitel 28. 04. 2017, 09:18:29
Ano, to je mozne, ze jednou nebude na vyber. Ale hodlam to odkladat co nejdele, aby si to ti kreteni zatim trochu odladili, protoze to, co predhodili lidu, je kolikrat takova lepsi beta.

To je linux & opensource. To nikdy nebude hotovy, porad se v tom bude patlat. Nazvat team okolo systemD "kretenama" je dost odvazny. Je to prave naopak, velmi sikovna parta co mela koule nahradit nejspagetovejsi a nejdiverzifikovanjesi cast OS do neceho jednotnyho, pomerne jednoduchyho, modularniho a hlavne dobre navrzenyho. 100 lidi 100 chuti, jasne ze konzervativci spustili skepso-kampan a virili hysterii pri kazdem vetsim bugu. To je uz ale za nami, systemD vyhral a je uz vsude. Sotva by vyhral kdyby ho delala parta "kretenu". Vyhral protoze je dobry a spolehlivy, skvele dokumentovany a s vstricnou komunitou.
Název: Re:Systemd restart služby pokud skončí chybou
Přispěvatel: Lol Phirae 28. 04. 2017, 09:22:19
Vyhral protoze je dobry a spolehlivy, skvele dokumentovany a s vstricnou komunitou.

Heil Lennart!!!  ;D ::)