Pereiti prie darbų

DevOps be etato.

Pastatau arba sutvarkau jūsų CI/CD, logus ir debesį taip, kad dalį gedimų sistema ištaisytų pati, ir lieku prižiūrėti tiek, kiek reikia. Dirbu kaip rangovas nuotoliu, o Vilniuje ir Kaune prireikus atvykstu ir į jūsų biurą.

Priimu užsakymus

Nuo keturių kūrėjų iki kelių komandų.

Šeši darbai dviem atvejams: kai atskiro DevOps žmogaus nėra — pastatau ir prižiūriu pats; kai jis jau yra — perimu vieną projektą arba padedu jam. Renkuosi paprasčiausią sprendimą, kuris tinka jūsų dydžio įmonei, o sudėtingesni įrankiai atsiranda tik tada, kai jų iš tikrųjų prireikia.

Nežinote, nuo ko pradėti?

Pirmas darbas gali būti dviejų–trijų dienų infrastruktūros peržiūra.

  • Jai užtenka teisių, kurios leidžia matyti debesies konfigūraciją, sąskaitas ir repozitorijas, bet neleidžia nei skaityti duomenų bazių ar failų saugyklų turinio, nei ko nors keisti.
  • Gaunate raštišką rizikų sąrašą, surikiuotą pagal svarbą, o prie kiekvienos rizikos — kas gali nutikti ir kuris darbas ją sutvarko.
  • Ataskaitoje atsakoma ir į du klausimus: ar atsarginių kopijų atkūrimas kada nors buvo išbandytas ir kur permokate už debesį.

Valandinis įkainis Lietuvos įmonėms — 40 €. Galime sutarti ir fiksuotą kainą už visą projektą — bet kuriuo atveju kainą žinote prieš pradedant.

Šeši DevOps darbai, kurių imuosi

Nereikia imti visų šešių — pradedama nuo to vieno, kuris šiandien labiausiai graužia.

Debesys
  • AWS
  • Google Cloud
  • DigitalOcean
  • Exoscale

Exoscale — kai neužtenka, kad duomenys būtų Europoje, ir pati debesų įmonė turi būti europietiška.

Logai ir stebėsena

Paprastai prireikia, kai niekas negali paaiškinti gedimo arba stebėsenos sąskaita pasidaro per didelė.

  • Viena vieta, kurioje matyti, kas ir kada nutiko; iš jos surenkami ir faktai pirmam NIS2 pranešimui per 24 valandas, jei NIS2 taikoma jums ar jūsų klientui.
  • Mažai komandai dažnai užtenka valdomos paslaugos; savą rinkinį statau, kai to prašo sąskaita ar duomenų reikalavimai.
  • Servisai tikrinami ir iš išorės, tad apie gedimą sužinote iš aliarmo, ne iš kliento laiško. Jei jūsų komandoje yra kam budėti, pastatau ir budėjimo grandinę.
  • VictoriaMetrics
  • VictoriaLogs
  • Grafana
  • GoAlert
  • Budėjimo grafikai

CI/CD grandinė

Dažniausiai kreipiamasi, kai diegti moka vienas žmogus, o jo scenarijai gyvena jo kompiuteryje.

  • Nuo commit’o iki produkcijos — dažniausiai minutėmis. Nepavykęs diegimas atšaukiamas vienu veiksmu, nes duomenų bazės pakeitimai planuojami taip, kad atšaukimas jų nesugriautų.
  • Grandinė — vienas šablonas: naujas servisas prisijungia prie to paties kelio, o ne kopijuoja jį iš senos repozitorijos.
  • Tame kelyje — stiliaus, testų, saugumo ir infrastruktūros patikros, tad į produkciją nepatenka tai, ko niekas netikrino.
  • GitHub Actions
  • SAST/DAST
  • Daugkartiniai workflow’ai
  • Unit ir integraciniai testai
  • Repozitorijų šablonai
  • Terraform validacija

Infrastruktūra kaip kodas

Pradžia paprastai — serveris, kurio niekas nedrįsta liesti, nes „ten kažkas buvo taisyta ranka“.

  • Kiekviena aplinka atkuriama iš repozitorijos, o duomenų bazė — iš nuolatinių kopijų, iki paskutinės minutės prieš gedimą. Atkūrimas išbandomas šio darbo metu.
  • Testavimo aplinka, produkcija ir kiekviena nauja aplinka gaunamos iš tų pačių modulių — be skirtumų, dėl kurių klaida išlenda tik produkcijoje, ir niekam nereikia laukti, kol aplinką paruoš vienas žmogus.
  • Skirtumą tarp kodo ir to, kas realiai veikia debesyje, pastebi automatinė patikra, o ne gedimas; prireikus ji gali ir pati grąžinti debesį į kode aprašytą būklę (self-healing), kol manęs nėra.
  • Terraform
  • Pulumi
  • Barman
  • Moduliai ir šablonai
  • Drift’o stebėjimas ir taisymas
  • WAL kopijos ir atkūrimas

Paslapčių tvarkymas

Postūmis dažniausiai — stambaus kliento saugumo klausimynas ar auditorius, kurie klausia apie slaptažodžius, raktus ir programų bei CI/CD grandinių prieigas.

  • Slaptažodžiai iškeliami iš repozitorijų į vieną saugyklą ir pakeičiami naujais — repozitorijos istorija senųjų nepamiršta. Naujų įkėlimą stabdo automatinė patikra.
  • Mažai komandai ta saugykla dažnai yra jūsų debesies paslapčių paslauga; atskirą statau tik tada, kai jos neužtenka.
  • Programos klasteryje ir CI/CD grandinės gauna trumpalaikę tapatybę vietoj ilgalaikių raktų ir teises tik tam, ką iš tikrųjų daro.
  • OpenBao
  • OIDC
  • Trumpalaikiai raktai
  • RBAC
  • Ribotos apimties GitHub Apps

Migracija į Kubernetes

Svarstoma, kai servisų tiek, kad jų paleidimas ir atnaujinimas serveriuose tapo rankiniu darbu.

  • Statau debesies valdomą Kubernetes, bet ir jis reikalauja priežiūros: versijos išeina kelis kartus per metus, senosios nustoja būti palaikomos — klasterį ir toliau atnaujinu aš arba perduodu jį jūsų komandai. Jei jums užtenka paprastesnio sprendimo, pasakysiu tai prieš pradedant.
  • Servisai perkeliami po vieną, produkcijai veikiant — be „didžiojo perjungimo“ savaitgalio. Duomenų bazės, eilės ir talpyklos keliauja į klasterį, kur jas prižiūri Kubernetes operatoriai, arba į debesies valdomas paslaugas — kas jums pigiau, įvertinus ir priežiūrą. Pirmas etapas — planas ir pirmas perkeltas servisas; toliau sutariama etapais.
  • Nukritęs servisas pasikelia pats, o sugedus serveriui persikelia į kitą — be pertrūkio, jei veikia keliais egzemplioriais; nukritus duomenų bazei, jos darbą perima replika, jei ji yra; ranka pakeista konfigūracija grąžinama į repozitorijoje aprašytą būklę (self-healing).
  • Kubernetes
  • Argo CD
  • Helm
  • ApplicationSet
  • Operatoriai
  • GitOps
  • Docker Compose → K8s

Tiekėjo keitimas su keliu atgal

Kai tiekėjas pabrango ar paskelbė, kad paslaugą nutraukia, arba kai duomenis reikia laikyti pas europietišką tiekėją.

  • Perkeliama dalimis ir kiekvienas žingsnis turi kelią atgal: senoji sistema išjungiama tik tada, kai naujoji jau kurį laiką dirba greta. Tą laiką mokate už abi, tad jis numatomas plane.
  • Pirmas etapas — planas ir pirma perkelta dalis; likusios sutariamos po vieną.
  • Jei duomenų bazės be trumpo perjungimo perkelti neišeina, jo laikas suderinamas iš anksto.
  • Debesis → debesis
  • Perkėlimas dalimis
  • Stebėsenos keitimas
  • Duomenų perkėlimas

Čia — ne viskas, ką darau. Jūsų bėdos, debesies ar įrankio nėra? Vis tiek parašykite — pasakysiu tiesiai, ar su tuo jau dirbau.

Kaip dirbu

Mokate už tiek laiko, kiek jums iš tikrųjų reikia, o ne už pilną etatą: sutartyje nurodyta, kiek laiko per mėnesį skiriu jums. Be atrankos ir bandomojo laikotarpio — sutartis ir sąskaita. Pasirašau konfidencialumo (NDA) ir duomenų tvarkymo sutartis, turiu profesinės civilinės atsakomybės draudimą. Apie atostogas pranešu iš anksto.

Pirmas darbas turi sutartą apimtį ir kainą ir planuojamas taip, kad užtruktų nuo vienos iki trijų savaičių; jei nežinote, nuo ko pradėti, juo gali būti dviejų–trijų dienų peržiūra. Iš jūsų pusės reikia prieigų ir vieno žmogaus, kuris priima sprendimus. Jei po to norėsite tęsti — tęsiame; jei ne — tai, kas padaryta, lieka jums, o daugiau nieko nesate skolingi.

Jei tęsiame, prižiūriu tai, kas pastatyta: atnaujinimai ir saugumo pataisos (naujas versijas automatiškai pasiūlo robotas, o aš jas patikrinu ir įdiegiu), aliarmų ir sąskaitų peržiūra, o kartą per ketvirtį — atsarginių kopijų atkūrimo patikra. Jei kas nors lūžta darbo dieną, sureaguoju tą pačią dieną, o po to trumpai parašau, kas nutiko, kodėl ir kas padaryta, kad nesikartotų. Ne darbo metu — tik atskirai sutarus.

Jokios konfigūracijos, kuri gyvena tik mano galvoje: viskas jūsų repozitorijoje ir dokumentuota, o kiekvienas pakeitimas eina per pull request’ą, kurį jūsų žmonės mato ir gali peržiūrėti. Paskyros — debesies, domeno, GitHub — lieka jūsų vardu, o aš dirbu su asmenine, dviejų veiksnių autentifikacija apsaugota prieiga, kurią galite atimti bet kada. Priklausomybė nuo vieno žmogaus yra rizika ir jums, ir man — todėl prireikus pastatau ir savaiminio atsistatymo (self-healing) sprendimus: dalį gedimų sistema aptinka ir sutvarko pati, kol manęs nėra.

Kas aš toks

Esu Linas Mackevičius, DevOps inžinierius, šiuo metu dirbu Vilniuje. Su manimi kalbatės tiesiogiai: darbą įvertina ir padaro tas pats žmogus. Štai dalis to, ką jau esu padaręs — iš to ir žinau, ko reikia augančiai įmonei ir ko mažai komandai dar nereikia.

8k → 3k €

Stebėsenos sąskaita per mėnesį. Metrikas ir logus iš įmonės serveriuose laikyto Grafana rinkinio perkėliau į atskirus VictoriaMetrics ir VictoriaLogs klasterius, kuriuos valdo Kubernetes operatoriai ir kurių dydis prie apkrovos prisitaiko automatiškai. Dashboard’ai ir aliarmai liko tie patys.

Pastačiau 2, dirbau su 8

Du produkcijos Kubernetes klasterius po 4–6 mazgus pastačiau pats, o iš viso dirbau su aštuoniais. Visi valdomi Terraform’u. PostgreSQL, MySQL, RabbitMQ, Valkey ir Ceph juose sukasi kaip operatorių valdomos paslaugos.

DigitalOcean → Exoscale

Servisus iš Docker Compose perkėliau į Kubernetes DigitalOcean debesyje su savais Helm chart’ais, o po to — iš DigitalOcean į Exoscale.

Šimtai → 1

Rankomis rašytas Argo CD aplikacijas suvedžiau į vieną ApplicationSet šabloną (Helm ir Go šablonai), o dešimtis atskirų GitHub Actions grandinių — į vieną pakartotinai naudojamą modelį.

Raktai → OIDC

Slaptažodžius sutelkiau į OpenBao, o Kubernetes programoms įjungiau trumpalaikę tapatybę vietoj ilgaamžių statinių raktų.

Kopijos → kitas debesis

Sukūriau atsarginių kopijų kelią iš Google Cloud į Exoscale — ir debesies valdomoms, ir klasteryje veikiančioms duomenų bazėms — ir atkūrimą iš jų išbandžiau.

Skaičiai iš laikų, kai dirbau samdomu DevOps inžinieriumi (2025–2026). Darbdavio ir jo kliento pavadinimų sąmoningai neminiu.

Ko jums reikia?

Parašykite, kurį darbą turite galvoje, arba tiesiog kas labiausiai erzina. Užtenka kelių sakinių — nereikia nei paruoštos specifikacijos, nei skambučio. Atsakau per vieną darbo dieną ir konkrečiai: ar imuosi, nuo ko siūlyčiau pradėti, kiek tas pirmas žingsnis kainuotų ir ar verta galvoti apie ilgesnį bendradarbiavimą. Atsakymas nemokamas ir nieko neįpareigoja.

info@linasplatform.com