Důležité změny na Roští

Bohužel jsme se poslední dva měsíce setkávali s výpadky, které jsme neměli moc možnost ovlivnit. Vypadávaly nám servery ve Scaleway i naše fyzické servery v Master DC. Jsou to věci, kterým se nevyhneme, protože nemáme pod kontrolou každý článek řetězce mezi kód a jeho uživateli. Samozřejmě s tím ale nejsme spokojení a tak se chystáme udělat změny, které by nám mohli pomoci řešit problémy rychleji a nebo jim i kompletně předcházet.

Aktualizace: Kvůli průtahům aktualizujeme plán celého postupu. Původní termíny prodloužíme o dva měsíce, abychom vám dali dost času se na změny připravit. Bohužel se nám zatím nepodařilo připravit dostatečně univerzální a funkční nástroj na migraci aplikací ze starého Roští na nové. Na tom ještě pracujeme. V článku najdete aktualizovaný harmonogram.

Z pohledu moderních aplikací je Roští stále běžný hosting, i když trochu naboostovaný. Běží u nás totiž aplikace na jednoduchém setupu, kdy každá má jeden kontejner a ani v případě, že by zvládla běžet ve více kontejnerech, tak to aktuálně neumíme nabídnout. Zákonitě pak, když aplikace běží na jednom serveru, za jedním load balancerem a nad jednou databází, dřív nebo později se něco stane.

Řešení výpadků je pro nás extrémně drahé i psychicky náročné. Nemůžeme si vybrat hodinu ani den, musíme se postarat aby služba zase jela a u toho odepisovat lidem, kteří chtějí vědět, kdy budeme zase up. Je tedy v zájmu obou stran problémům předcházet.

Některým klientům, kteří u nás mají celý svůj business, nabízíme vysoce dostupný cluster, který je odolný vůči výpadkům jednoho či více kusů hardwaru a nebo se alespoň dají problémy řešit mnohem rychleji. Nicméně to vyžaduje spolupráci nás i programátorů, abychom připravili prostředí, které oni mohou využít. Vysoce dostupná aplikace musí umět pracovat s úložištěm statických dat a někdy i s více databázemi najednou.

Tímto bychom tedy rádi oznámili, že s další aktualizací administrace dostane Roští podporu pro běh aplikací ve více kontejnerech. Zatím půjde o nasměrování load balanceru na dva či více kontejnerů a budeme sbírat odezvu od uživatelů, ale hned v dalším kroku chceme nabídnout úložiště kompatibilní s S3 a replikované custom databáze.

Vysoká dostupnost našich služeb bude další roky naší největší prioritou. Chceme nabídnout standardizované prostředí, ve kterém půjde snadno rozjet aplikaci distribuovaně a tím usnadnit život jak nám tak našim klientům.

Naneštěstí není nic zadarmo a ani v tomto případě nevyhneme nějakým dalším změnám, které nám to umožní. Můžeme být nejlepší v hostování aplikací, ale zároveň nemůžeme být nejlepší v poskytování emailových služeb. Společně se změnou popsanou výše chceme také oznámit, že od března příštího roku přestaneme nabízet naše emailové služby a zároveň zrušíme staré Roští.

Emailové schránky nabízíme od začátku zdarma jako doplňkovou službu. V současné době se ale počet emailů rozrostl přes únosnou mez a to jak množstvím dat, tak co se týče podpory. Většina dotazů na podpoře se týká emailů a i kvůli tomu nás každá schránka stojí přibližně 30 Kč měsíčně.

Zrušení emailů proběhne v několika krocích.

  • V dokumentaci přidáme text popisující tři služby, na které je možné přejít a víme, že fungují spolehlivě.
  • Rozešleme informaci o rušení služby do každé schránky. (leden 2017)
  • Zakážeme přidávat nové schránky. (leden 2017) – už je hotovo
  • Rozešleme znovu informaci o rušení služby do každé schránky. (březen 2018)
  • Poslední upozornění na rušení služby do každé schránky. (květen 2018)
  • Vypnutí emailových služeb. (31. května 2018)
  • Smazání všech dat. (30. června 2018)

Druhou službou, kterou ukončíme, je staré Roští. Aktuálně pracujeme na migračním nástroji, který ale nebude stoprocentní a bude vyžadovat změny v kódu vaší aplikace. Staré Roští tu s námi je šest let a je čas se s jeho prostředím rozloučit. Jeho servery nejsou nějak automatizované a navíc by bylo nutné je brzy aktualizovat na novější verzi Debianu a do toho se už pouštět nebudeme.

Vypnutí proběhne v těchto krocích:

  • Upozornění že staré Roští končí. (leden 2017)
  • Další upozornění, že staré Roští končí. (duben 2018)
  • Vypnutí webů na load balanceru. (květen 2018)
  • Smazání dat (31. června 2018)

Až budeme mít tohle všechno za sebou, uvolní se nám ruce k posunování Roští o kousek dál trochu větším tempem a hlavně trochu jiným směrem. Změny jsou důležité hlavně kvůli uvolnění hardwaru a podpory, abychom mohli provozovat distribuované služby, potřebujeme trojnásobek serverů tak jsou oba kroky nezbytné k tomu, co jsem v prvních části tohoto článku nastínil.

Chápeme, že ne všichni uživatelé z toho budou nadšení, ale doufáme, že oceníte změny, které nám to umožní implementovat. Děkujeme za dosavadní podporu a budeme rádi, když nám napíšete, co si o chystaných novinkách myslíte.