Ladislav Dubravský / DevOps a servery

DevOps a správa Linux serverov

Starám sa o Linuxové servery a VPS pre firmy, ktoré majú vlastnú aplikáciu alebo web a nikoho, kto by sa o server staral. DevOps v praxi znamená, že aplikácia sa na server dostane automaticky, server je zabezpečený, zálohy sa dajú obnoviť a výpadok si všimnem ja, nie vaši zákazníci.

Pre koho to je

Najčastejšie ide o tri situácie:

  • Máte aplikáciu alebo web a VPS, ktorú nikto nespravuje. Beží, kým sa niečo nepokazí.
  • Nasadzujete ručne, kopírovaním súborov, a pri každej zmene sa bojíte, že sa niečo rozbije.
  • Prechádzate zo zdieľaného hostingu na VPS a potrebujete to urobiť bez hádania.

Nepotrebujete veľkú infraštruktúru. Malá firma zvyčajne nepotrebuje Kubernetes. Stačí jeden dobre nastavený server s prehľadným postupom.

Čo je súčasťou správy servera

  • Aktualizácie. Systém a softvér na serveri sa pravidelne aktualizuje, aby neostali známe diery.
  • Zabezpečenie. Firewall, obmedzený prístup, zrušené zbytočné služby, SSL certifikáty.
  • Zálohy. Automatické zálohy aplikácie aj databázy mimo servera.
  • Monitoring. Sledovanie dostupnosti, výkonu a logov, aby bolo vidieť problém skôr, než ho zahlási zákazník.

Na monitoring a bezpečnostné udalosti používam vlastný nástroj SENTRIX. Zbiera logy, sleduje zraniteľnosti a vyhodnocuje udalosti. Strážime ním servery a weby klientov PROSIMSI.

CI/CD: ako sa aplikácia dostane na server bez ručného kopírovania

CI/CD je automatický postup, ktorý po každej schválenej zmene v kóde aplikáciu otestuje a nasadí na server. Používam GitLab CI/CD a Docker.

Pri jednej aplikácii to vyzerá takto: programátor nahrá zmenu do repozitára, pipeline spustí testy, zostaví aplikáciu a nasadí ju. Postup je vždy rovnaký a zapísaný, takže keď sa niečo pokazí, viete presne, čo sa nasadilo.

Výsledok je jednoduchý: nasadenie prestane byť udalosť, ktorej sa treba báť.

Zálohy, ktoré sa dajú obnoviť

Každý tvrdí, že zálohuje. Záloha, ktorú ste nikdy neobnovili, je len nádej. Preto sa pri zálohách nestačí pozrieť, či súbor vznikol. Raz za čas ju treba obnoviť na testovacom mieste a overiť, že aplikácia a databáza naozaj nabehnú.

Pri pravidelnej správe to robím takto:

  • Denná záloha aplikácie aj databázy, uchovaná 14 dní, k tomu mesačné zálohy na tri mesiace.
  • Kópia mimo servera, aby výpadok alebo napadnutie servera nezobralo aj zálohy.
  • Skúšobná obnova raz za štvrťrok na testovacom mieste. Dostanete krátku správu e-mailom: čo sa obnovovalo, či aplikácia nabehla a ako dlho obnova trvala.

Zálohy a nasadenia spravujem vo vlastnom nástroji hostpanel. Klienti v ňom majú portál a vidia, čo sa s ich serverom deje.

Bezpečný prístup na server

Kto má na server prístup, je pre bezpečnosť dôležitejšie než najdrahší firewall. Dôležité je, aby bolo jasné, kto smie na ktorý server a čo tam môže robiť.

Na to som si napísal Reins, SSH a SFTP klienta s pravidlami. Riskantný príkaz čaká na potvrdenie a politika určuje, čo sa na ktorom serveri smie. Vznikol z potreby mať prístupy pod kontrolou, keď na serveroch pracuje viac ľudí aj automatizovaných nástrojov.

Prevzatie bežiaceho servera

Server, ktorý už beží, neprevezmem tak, že ho vypnem a postavím odznova. Najprv zistím, čo na ňom je: aplikácie, databázy, naplánované úlohy, certifikáty, kto má prístup a kam sa zálohuje. Potom spíšem, čo je v poriadku a čo treba opraviť, a zmeny robím po krokoch, nie naraz.

Ak aplikáciu ešte nemáte alebo ju treba prepísať, riešim aj to. Pozrite si vývoj aplikácií na mieru.

Ako a koľko to stojí

Pracujem za 50 € za hodinu bez DPH. Cena závisí od počtu serverov, od toho, čo na nich beží, a od rozsahu starostlivosti. Po prvom rozhovore vám pošlem odhad rozpísaný po častiach: jednorazové nastavenie zvlášť, pravidelná správa zvlášť.

Začíname menšou časťou, ktorú sa dá rýchlo overiť, napríklad auditom súčasného stavu alebo nastavením zálohovania a nasadenia jednej aplikácie.

Orientačne:

  • Nastavenie servera (zabezpečenie, nasadenie aplikácie, zálohy, monitoring): 6 až 12 hodín, teda 300 až 600 € bez DPH jednorazovo.
  • Automatické nasadenie (CI/CD) pre jednu aplikáciu: 4 až 8 hodín.
  • Pravidelná správa jedného servera s aplikáciou: zvyčajne 2 až 4 hodiny mesačne, teda 100 až 200 € bez DPH. V cene sú aktualizácie, monitoring, zálohy so skúšobnou obnovou raz za štvrťrok a reakcia na výpadok v pracovné dni do štyroch hodín. Nonstop pohotovosť sa dá dohodnúť zvlášť.

Lacné paušály od 20 € mesačne zvyčajne pokrývajú len samotný stroj a operačný systém. Ja sa starám aj o aplikáciu, ktorá na ňom beží, a viem ju opraviť, nielen reštartovať.

Ak chcete mať AI nástroje a automatizáciu na vlastnom serveri, nie v cudzom cloude, pozrite si AI automatizáciu.

Časté otázky

DevOps a servery: otázky.

Nenašli ste odpoveď? Napíšte mi.

Čo je DevOps a potrebuje ho malá firma?

DevOps je spôsob práce, pri ktorom sa vývoj aplikácie a jej prevádzka riešia spolu. Malá firma nepotrebuje veľký tím, potrebuje automatické nasadenie, zálohy a dohľad nad serverom. Zvyčajne to zvládne jeden človek.

Koľko stojí správa servera mesačne?

Pri jednom serveri s aplikáciou zvyčajne 100 až 200 € bez DPH mesačne, podľa toho, čo na ňom beží. Pracujem za 50 € za hodinu bez DPH a po prvom rozhovore pošlem odhad rozpísaný po častiach, aby ste videli, čo je jednorazové a čo pravidelné.

Čo všetko zahŕňa správa Linux servera?

Aktualizácie, zabezpečenie, zálohy a monitoring. Presný rozsah sa dohodne podľa toho, čo na serveri beží, a napíšem vám ho ešte pred začiatkom.

Ako často sa zálohuje a ako zistím, že sa záloha dá obnoviť?

Frekvencia zálohovania sa nastaví podľa toho, ako často sa menia vaše dáta. Bežne denne, s uchovaním 14 dní a mesačnými zálohami na tri mesiace. Skúšobnú obnovu robím raz za štvrťrok a výsledok vám pošlem e-mailom aj s tým, ako dlho obnova trvala.

Čo je CI/CD pipeline a načo je pre našu aplikáciu?

Je to automatický postup, ktorý zmenu v kóde otestuje a nasadí na server. Odpadá ručné kopírovanie súborov a s ním aj chyby, ktoré pri ňom vznikajú.

Dokážete prevziať server, ktorý už beží, bez výpadku?

Zvyčajne áno, ak sa zmeny robia po krokoch a vopred sa spíše, čo na serveri beží. Úplnú garanciu bez výpadku by som dal až po obhliadke konkrétneho servera.

Kontakt

Napíšte, aký server máte.

Napíšte mi, čo na serveri beží a kto sa oň dnes stará. Ozvem sa a na rovinu poviem, či viem pomôcť.

Čoho sa to týka