Dá se tomuhle zabránit nebo aspoň minimalizovat problémy vhodným pořadím spouštění služeb a například použitím bootwait a spuštění nějakých testovacích procesů na dostupnost služby?
Důležité je, zda o těch závislostech víte. Třeba webová aplikace může záviset na překladu DNS názvu DB serveru, ke kterému dojde při navazování spojení -- takže při startu a pak třeba až při příštím restartu webové nebo databázové služby. Nebo informace o unixovém účtu bude typicky potřeba jenom při startu služby. A pokud máte účty v LDAPu, a část LDAP je v SQL databázi, LDAP je replikovaný a závisí na NTP -- pak vám najednou kdejaká služba bude tranzitivně přes LDAP záviset na NTP a SQL serveru (a ten SQL server bude nejspíš mezi těmi závislými službami, takže hned máte cyklus). Při krátkodobé odstávce LDAPu nebo SQL nic nepoznáte, protože vše bude nakešované...
Pokud ty závislosti znáte, můžete se snažit udržovat ten graf acyklický. A pak mít buď zdokumentované pořadí zapínání strojů (pokud výpadek všeho je považováno za takový průšvih, že to pak stejně budete nahazovat ručně), a nebo to ošetřit ve startovacích skriptech služeb (lepší než zdržovat celý boot nebo čekat nějaký čas je čekat na dostupnost dané služby, pokud to nějak rozumně jde udělat). Pokud je ten graf cyklický, je dobré mít aspoň zdokumentovaná ta kritická místa a vědět, jak se ta která služba dá nastartovat v nějakém nouzovém režimu, kdy třeba neposkytuje vše, ale umožní aspoň nastartovat závislou službu. Nebo se pokusit ty služby rozdělit. Třeba pro webhostera je pohodlné mít DNS záznamy klientů v SQL databázi, ale DNS záznamy pro infrastrukturu vlastní sítě je lepší mít v souboru na disku (klidně jen cronem pravidelně vytvářený dump důležitých záznamů z databáze), DNS server nejprve startovat jenom nad tímhle souborem a dostupný jen z vnitřní sítě, a teprve dodatečně připojit i záznamy z SQL a otevřít server i do internetu. Což se takhle hezky popíše, ale nenajdete na to hotové řešení, takže si pak musíte od nuly napsat startovací skript, musíte nějak řešit tu záměnu konfigurací (a aby společné části byly opravdu stejné, ne že upravíte IP adresu DNS serveru ve velkém konfiguráku a v konfiguráku pro nouzový start zůstane stará), je dobré mít nějaký postup, jak tu nouzovou konfiguraci otestovat...
Vše to samozřejmě závisí na tom, kolik práce se do toho investuje. Pokud k většímu výpadku dojde jednou za dva roky a za hodinu to máte spravené, asi nemá smysl trávit týdny ladění konfigurací pro automatickou obnovu po výpadku. Na druhou stranu, pokud dojde k opravdovému průšvihu, je každý ověřený postup a spolehlivá automatická obnova k nezaplacení, protože pak vám zbývá čas na řešení těch opravdových průšvihů, se kterými nikdo nepočítal.