Správce systémů pro prostředí Linux a Windows. Automatizace složitých IT procesů pomocí Ansible a Puppet, správa serverové infrastruktury jako virtualizace, webové servery, firewally, proxy servery atd. Full-Stack-Webdeveloper s HTML, S/CSS, JavaScript, TypeScript, PHP a Python, MariaDB a PostgreSQL; včetně API řešení.
Zde naleznete výběr mých dosavadních profesních projektů. Každý projekt reprezentuje mé dovednosti a nasazení v různých oblastech administrace a vývoje softwaru.
03.2025 – 10.2025
@rtus (Artus) je systém pro zpracování případů (VBS) pro dokumentaci policejních úkonů a trestních událostí. Systém umožňuje systematické zadávání, správu a analýzu shromážděných dat. @rtus je vyvíjen společností Dataport, poskytovatelem IT služeb pro veřejnou správu.
Landesbetrieb Daten und Information (LDI) odpovídá za zavedení a provoz pro Porýní-Falc a Sársko. V tomto kontextu jsem byl přizvián jako externí specialista k podpoře projektu.
Můj rozsah úkolů zahrnoval správu systémů linuxového serverového prostředí založeného na RHEL a Debian, jakož i automatizaci procesů nasazování a údržby pomocí Ansible. Zvláštní důraz byl kladen na další rozvoj stávající Ansible Collection: optimalizoval jsem výkon, vyvíjel nové pluginy v Pythonu a implementoval další role. Stávající komponenty byly refaktorovány za účelem zajištění lepší idempotence.
Technická realizace zahrnovala správu a automatizaci backendových serverů @rtus na bázi JBoss/Wildfly. Paralelně jsem uváděl členy týmu do Ansible a Git, aby je uschopnil k samostatnému dalšímu rozvoji infrastruktury.
Asociováno s ncsolution GmbH
2024
Poté, co 30. června 2024 CentOS 7 dosáhl konce životnosti (EOL) a stále s ním existovaly některé VM, bylo nutné najít alternativu. CentOS 8 nebyl variantou, protože byl ukončen již 31. prosince 2021 a tím rovněž dosáhl EOL. CentOS Stream by byl variantou, ale je zcela jiným konceptem než jeho předchůdci. Pro produkční prostředí kvůli Rolling Release nevhodný, protože je méně stabilní a předvídatelný. Zbývala tedy jen migrace na RHEL, SUSE, Oracle nebo svobodné alternativy Rocky Linux a AlmaLinux. Kvůli volnému použití, lepším nástrojům, lepší dokumentaci a dostupným volným zrcadlovým serverům jsem se rozhodl pro AlmaLinux.
Nejprve byl tedy CentOS 7 vybaven CentOS repozitáři od AlmaLinux, provedeny aktualizace a pomocí Leapp povýšen na AlmaLinux 8. Zde mohly být nyní aktualizovány nainstalované programy a poté systém dále povýšen na AlmaLinux 9. Nakonec byly opět aktualizovány nainstalované programy a opraveny různé chyby, takže byl opět k dispozici bezpečný a funkční systém. Bohužel to muselo být provedeno na všech systémech ručně, protože byly různě nakonfigurované a každý měl své vlastní problémy.
Migrace na AlmaLinux zajistila stabilní základ pro nadcházející roky. Aktualizace a především bezpečnostní aktualizace jsou opět možné a všechny nainstalované programy jsou opět v aktuálním stavu. Nakonec byly servery zařazeny do úlohy aktualizací Ansible a jsou nyní pravidelně aktualizovány.
Asociováno s CSD Holding GmbH (Strehlow)
2024
S neustále rostoucím počtem serverů byla měsíční údržba serverů stále časově náročnější. Za účelem automatizace údržbových úkolů a zkrácení celkového času padlo společné rozhodnutí zavést Ansible pro linuxové servery v heterogenní infrastruktuře Windows-Linux.
Implementoval jsem Ansible server na bázi Debianu se Semaphore UI jako uživatelským rozhraním. Integrace se stávajícím GitLab serverem umožnila strukturovaný vývoj Ansible Collections se samostatnou vývojovou větví a dočasnými feature větvemi. Semaphore UI odebíral Collections výhradně ze stabilní hlavní větve.
Pro snížení měsíční údržbové zátěže a současnou aktualizaci linuxových serverů jsem vyvinul Collection se dvěma centrálními rolemi: denní aktualizace a týdenní restarty podle potřeby. Systém inteligentně restartoval servery pouze při skutečné potřebě. Údržba se tím omezila na jednoduchou kontrolu historie úloh na Ansible serveru místo ručních jednotlivých aktualizací.
Vývojové oddělení rozpoznalo potenciál a požádalo o podporu při optimalizaci spotřeby operační paměti jejich IIS aplikací. Nato jsem vyvinul další Collection se specializovanými rolemi pro koordinovaný recycling App-Pool. Řešení zohledňovalo závislosti a implementovalo inteligentní čekací doby mezi restarty. Noční provádění této automatizace zajistilo výrazně lepší výkon a stabilitu během pracovní doby.
Systém Ansible výrazně snížil údržbovou náročnost, zvýšil stabilitu systémů a vytvořil kapacity pro další důležité úkoly.
Asociováno s CSD Holding GmbH (Strehlow)
2024
Jako první projekt po mém nástupu u Strehlow jsem převzal modernizaci Windows Deployment Serveru, který se nacházel v kritickém stavu. Výchozí situace byla problematická: server distribuoval zastaralou verzi Windows 10 bez samostatné úlohy aktualizace, čímž aktualizace během nasazování probíhaly nekontrolovaně a poté ještě dlouho pokračovaly. Hlavní software SaniVision byl kvůli své složitosti instalován ručně soubor po souboru, což bylo časově náročné a náchylné k chybám. Další software ležel sice aktualizovaný na sdíleném úložišti, ale nebyl integrován do WDS. U určitých hardwarových modelů nebyly síťové karty po PXE bootu rozpoznány, takže jako obejití byly nutné USB-C adaptéry. Touchpady a další hardware rovněž nefungovaly ve Windows PE.
Nejprve jsem opravil stávající sdílené úložiště integrací aktuální verze Windows 10 a opravou stávajících softwarových instalací a skriptů. Paralelně jsem vyvinul první verzi PowerShell skriptu pro automatizovanou instalaci složitého softwaru SaniVision.
Bylo vytvořeno zcela nové sdílené úložiště s řádnou strukturou a integrován Windows 11. Všechny potřebné Windows PE ovladače byly implementovány, čímž se standardní síťové přípojky a touchpady staly dostupnými ve Windows Deployment Wizardu. Sekvence úloh byly optimalizovány a aktivována úloha aktualizace. Skript SaniVision byl přepracován, přidány nové instalační skripty pro další software a vylepšeno grafické zobrazení pro lepší detekci chyb. První sdílené úložiště zůstalo zachováno jako záložní systém.
Na základě získaných poznatků bylo vytvořeno třetí, vysoce optimalizované sdílené úložiště. Skripty získaly detekci závislostí a vylepšené zpracování chyb. Byl implementován inteligentní aktualizační mechanismus: nové verze stačilo pouze zkopírovat do příslušného adresáře, skript automaticky rozpoznal nejvyšší verzi a nainstaloval ji. Skripty pro detekci hardwaru umožnily, že úlohy ovladačů instalovaly pouze ovladače specifické pro dané zařízení. Tím se počet sekvencí úloh snížil na jednu jedinou standardní sekvenci místo několika variant specifických pro zařízení. První sdílené úložiště bylo po dokončení této fáze definitivně odstraněno.
Výsledkem byla plně automatizovaná, bezobslužná instalace s minimální chybovostí. Doba nasazení byla výrazně zkrácena, údržba zjednodušena a spolehlivost celého systému zřetelně zvýšena.
Přepracování WDS serveru mělo další pozitivní efekt. Instalace a skripty, které byly jako obejití přesunuty do PDQ Deploy & Inventory a tam musely být po každé instalaci Windows ručně spouštěny, mohly být opět integrovány do WDS serveru. Tím bylo obnoveno jasné rozdělení úkolů obou systémů. WDS server nadále přebíral všechny obecné instalace, zatímco PDQ se soustředil výhradně na aktualizace a speciální instalace a skripty.
Asociováno s CSD Holding GmbH (Strehlow)
2023
Firma SCHUBERTH GmbH nás pověřila vývojem systému nasazování pro rychlou a jednotnou instalaci jejich thin klientů. Požadavky zahrnovaly řešení na bázi Linuxu s automatickým přihlášením a okamžitým spuštěním předkonfigurovaného VMware Horizon Client.
Po počátečních zpožděních jsem převzal vedoucí roli ve vývoji. Řešení bylo založeno na Debianu s automatizacemi Preseed. Vyvinul jsem skript, který automaticky sestavil všechny potřebné komponenty do zaváděcího ISO obrazu. Proces zahrnoval konfiguraci souboru Preseed pro nastavení Debianu a integraci různých mechanismů pro instalaci Horizon Clientu, funkce automatického spuštění a přihlašovací skripty. Skript modifikoval standardní ISO Debianu tím, že vytvořil požadované adresářové struktury, integroval všechny potřebné soubory, upravil GRUB menu a z toho vygeneroval nový ISO obraz. S tímto obrazem bylo možné vytvořit libovolné množství zaváděcích USB disků s identickým výsledkem instalace.
Instalační proces probíhal plně automaticky: po zavedení z USB disku bylo možné přes GRUB menu spustit bezobslužnou instalaci. Instalátor Debianu samostatně zpracoval všechny kroky, přičemž Late-Commands převzaly instalaci Horizon Clientu a implementaci všech požadovaných skriptů a systémových úprav.
V produkčním provozu se systém spustil automaticky, monitorovací skript kontroloval a v případě potřeby opravoval systémová nastavení. Omezený uživatel byl automaticky přihlášen, načež se Horizon Client spustil v celoobrazovkovém režimu. Monitorovací skript nepřetržitě sledoval běh klienta a při ukončení okamžitě inicioval vypnutí systému.
Řešení výrazně zjednodušilo správu, vadné systémy mohly být během několika minut znovu nainstalovány, časově náročné analýzy chyb odpadly. Koncoví uživatelé profitovali z bezproblémové integrace, protože mohli přímo pracovat se svým známým prostředím VMware Horizon bez nutnosti znalosti Linuxu. Instalaci thin klientů prováděli samostatně správci SCHUBERTH, zatímco my jsme zůstávali k dispozici pro úpravy a rozšíření.
Asociováno s LOOMA GmbH
2019 – 2023
Vedení LOOMA GmbH se rozhodlo pro strategickou reorientaci, pryč od klasického systémového domu s hodinovým účtováním, servisními smlouvami a reaktivní podporou, směrem k MSP modelu s fixními cenami za hardware a řízené služby včetně proaktivní podpory a automatizovaných procesů.
Fáze plánování se zaměřila na vývoj různých balíčků služeb a výběr vhodných nástrojů pro monitoring a správu. Byly zpracovány kritické otázky: Jak mohou být stávající problémy zákazníků proaktivně řešeny? Jaké přidané hodnoty vznikají pro zákazníky? Právní aspekty jako otázky odpovědnosti při škodách nebo insolvenci zákazníka byly zohledněny stejně jako výzva přesvědčit stávající zákazníky o novém modelu a integrovat jejich stávající infrastrukturu. Další důležitá otázka se vyvinula během fáze plánování: Co když infrastruktura stávajícího nebo nového zákazníka nemůže být integrována do MSP modelu? Kdo musí pak převzít podporu pro tyto komponenty?
Realizace probíhala postupně se třemi klíčovými službami: Managed Workplace, Managed Security a Managed Server. Pro jednotné a zákaznicky specifické instalace Windows byl nasazen WDS server, který prostřednictvím sítě (PXE) mohl současně provisionovat více zařízení. Jako monitorovací řešení byl nejprve implementován Paessler PRTG, nakonec ale Zabbix. Jako RMM řešení bylo po využití ManageEngine a SolarWinds nakonec nasazeno Datto RMM. Vlastní ticketový systém byl vyvinut s n8n/Zapier a Bubble, který mohl provádět automatizované procesy přes API a webhooky a byl později rozšířen o AI podporu. To umožnilo zobrazení MSP balíčků, jakož i specializovaných služeb jako telematická infrastruktura (TI) pro ordinace. Bezpečnostní architektura byla založena na produktech Sophos s centrální správou přes Sophos Central, zatímco síťové komponenty Ubiquiti byly centrálně spravovány přes Ubiquiti Cloud. Stávající instalace Office a Exchange servery zákazníků byly migrovány na Microsoft 365.
Jak se předpokládalo již ve fázi plánování, reakce zákazníků byly smíšené. Zatímco někteří stávající zákazníci nový model odmítli a odešli, podařilo se jak jiné stávající, tak nové zákazníky úspěšně získat pro MSP model. Na základě prvních zkušeností byly služby průběžně optimalizovány. Pečlivá příprava umožnila okamžitě proaktivní řešení problémů a včasné rozpoznání poruch. Automatizace jako centrálně řízené aktualizace Windows výrazně snížily pracovní zátěž a garantovaly zákazníkům stabilní, bezpečné systémy.
Asociováno s LOOMA GmbH
2020
Společnost EQO Energiekonzepte GmbH zaznamenala několik krádeží na staveništích svých solárních parků a pověřila nás vývojem mobilního systému sledování. Požadavky byly jasně definovány: systém měl být nenápadný, ale rychle a nekomplikovaně instalovatelný na místě. Protože na všech staveništích byl k dispozici stavební proud, mohla být realizována standardní instalace 230 voltů.
Po vytvoření podrobného plánu komponent a odsouhlasení se zákazníkem následovala technická realizace. Systém byl založen na LTE routeru pro internetové připojení a komponentech Ubiquiti pro sledování: PoE switch, Cloud-Key pro správu a nahrávání do cloudu a různé kamery Ubiquiti. Všechny komponenty byly namontovány v uzamykatelné rozvodné skříni na děrovaném plechu a fixovány stahovacími páskami.
Konfigurace umožňovala automatické nahrávání při detekci pohybu s přímým nahráním do cloudu Ubiquiti. Při aktivaci obdrželi zodpovědní e-mailové notifikace s přiloženými výřezy snímků z nahrávek. Po podrobném zaškolení převzal zaměstnanec EQO samostatně montáž a demontáž systému na měnících se místech.
Navzdory příležitostným falešným poplachům způsobeným divokou zvěří, větrem nebo sněhem systém splnil svůj účel: neoprávněné vstupy a krádeže byly zdokumentovány, čímž se jim částečně podařilo zabránit nebo přinejmenším je zaznamenat tak, aby byly identifikovatelné registrační značky nebo osoby. Bezpečnost na staveništích byla trvale zlepšena.
Pro otázky, změny a podporu jsme firmě zůstali k dispozici i po implementaci.
Asociováno s LOOMA GmbH
2019
Stadtwerke Wernigerode plánovaly zavedení systému Digital Signage pro dvě oblasti použití: interně pro informování zaměstnanců v provozech a jako reklamní systém v zákaznických centrech. Volba padla na Xibo jako centrální platformu.
Můj úkol v tomto projektu spočíval v kompletním nastavení serveru. Jako technický základ jsem zvolil Debian s Apache HTTP Serverem a MySQL. Na tom jsem vybudoval Xibo CMS a provedl požadované systémové konfigurace.
Instalaci a připojení přehrávačů Xibo převzali správci Stadtwerke ve vlastní režii, což zajistilo bezproblémovou integraci do stávajícího IT prostředí.
Po dokončení projektu jsem zůstal k dispozici jako 3rd-Level-Support a převzal školení zaměstnanců v zacházení s novým systémem. Tato průběžná péče zajistila, že Stadtwerke mohly systém Digital Signage optimálně využívat a samostatně vytvářet kampaně.
Asociováno s LOOMA GmbH
2004 – 2014
Po roce 2000 se do Berlína stěhovaly četné spolkové úřady a instituce. Rozhodnutí o hlavním městě z roku 1991 zahájilo zdlouhavý stěhovací proces, který se částečně protáhl až do pozdních let 2010. Protože úkoly a postupy u těchto projektů byly z velké části shodné, shrnuji je zde.
Na několika těchto stěhováních jsme se podíleli v různých fázích. Rozsahy projektů se přitom lišily: u některých úřadů jsme převzali přípravu IT infrastruktury v Berlíně, u jiných demontáž techniky v Bonnu. V mnoha případech jsme doprovázeli celý stěhovací proces od demontáže po novou instalaci.
Spektrum úkolů zahrnovalo často i instalaci a zřízení kompletních pracovních míst. Pro tyto rozsáhlé rollouty jsme zpočátku nasazovali Remote Installation Services (RIS), později jsme přešli na modernější Windows Deployment Services (WDS). Tato automatizovaná řešení nasazování, včetně PowerShell skriptů, nám umožnila efektivně a standardizovaně zřizovat stovky pracovních míst.
Asociováno s Das Systemhaus Datentechnik Berlin GmbH
2005
Původně měla být pouze vytvořena možnost, s jejíž pomocí by si zákazníci mohli samostatně kalkulovat přepravní ceny nadrozměrného zboží. Tato funkce byla později integrována do chráněné zákaznické zóny s funkcí přihlášení a průběžně rozšiřována. Postupně přibývaly další funkce, včetně přihlašování k vyzvedávacím objednávkám a AVIS informacím.
Původní kalkulačka nadrozměrného zboží se vyvinula v komplexní kalkulačku přepravních cen. Kromě normálního a nadrozměrného zboží bylo nyní možné kalkulovat i doplňkové služby jako same-day a next-day doručení a přepravní pojištění.
Již s první verzí byl General Express o krok napřed před systémovým partnerem GO! Express & Logistics. Konečná rozšířená verze představovala dokonce celostátně unikátní systém.
Portál jsem v backendu realizoval s PHP a MySQL, pro frontend bylo použito XHTML, CSS a JavaScript. Technická realizace probíhala na webovém serveru s podporou PHP a MySQL databází u Strata.
Portál se těšil velké oblibě u zákazníků z Berlína a byl později dokonce celostátně využíván zákazníky GO!. S drobnými úpravami a rozšířeními zůstal úspěšně v provozu až do ukončení činnosti General Express (2010).
Asociováno s Michel Abele (živnost v vedlejší činnosti, Berlín)
2004
V tomto mimořádném projektu šlo o přesunutí mediálně-komunikačních serverů (MeCom) Německé tiskové agentury (ddp, tehdy ještě ProSieben) bez většího výpadku z datového centra ProSieben v Unterföhring do datového centra Level-3 v Berlíně. Zvláštní výzva spočívala v tom, že servery mohly být přepravovány pouze během doby bez redakčního provozu a případné škody způsobené přepravou musely být okamžitě odstraněny.
Časové okno bylo extrémně těsné: demontáž serverů mohla začít teprve poté, co se odhlásil poslední reportér, obvykle mezi půlnocí a jednou hodinou ráno. V Berlíně musely být systémy nejpozději v šest hodin ráno při zahájení redakčního provozu, nejpozději však v osm hodin při zahájení hlavního redakčního provozu, opět plně provozuschopné.
Při vzdálenosti přibližně 580 kilometrů mezi Unterföhring a Berlínem, převážně po dálnici, by normální jízda trvala pět až šest hodin. To by překročilo časové okno. Řešení bylo jednoduché a účinné: s Audi RS6 Avant šéfa se doba jízdy dala zkrátit na čtyři až čtyři a půl hodiny, čímž mohly být dodrženy kritické časové požadavky.
Projekt se skládal ze dvou fází. V první fázi byla připravena kompletní infrastruktura v berlínském datovém centru Level-3. Síťové komponenty a kabeláž byly nastaveny tak, aby správci systémů ProSieben mohli během doby přepravy upravit své síťové konfigurace. Druhá fáze zahrnovala příjezd do Unterföhring, demontáž tří serverů MeCom, cestu do Berlína a tamní montáž.
V realizaci se poslední reportér odhlásil kolem 0:30. Po rychlé demontáži serverů začala „jízda" v jednu hodinu v noci. Po příjezdu do Berlína byly servery namontovány do racku, uvedeny do provozu a vyměněny dva vadné pevné disky. Přesně v šest hodin ráno mohla redakce podle plánu zahájit práci.
Asociováno s Das Systemhaus Datentechnik Berlin GmbH
2003
Poté, co se papírové tickety podpory často ztrácely nebo upadaly v zapomnění a stav zpracování byl těžko sledovatelný, padlo v týmu rozhodnutí o vývoji vlastního digitálního ticketového systému.
Ve fázi plánování byl vytvořen jednoduchý dokument požadavků, přičemž všichni zaměstnanci mohli přinést své požadavky a nápady. Technická realizace proběhla pomocí PHP, XHTML a CSS, zatímco v backendu MySQL databáze zajišťovala ukládání dat. Jako základ sloužil systém Debian s Apache HTTP Serverem na vlastním hardwaru. Společně s kolegou jsem převzal nastavení a programování systému. Po dokončení byli ostatní kolegové do nového systému zasvěceni.
V průběhu času bylo řešení průběžně rozšiřováno o další funkce. Důležitým modulem byl integrovaný inventarizační systém. Ten centrálně spravoval zákazníky přidělené číselné řady a zajišťoval, že nemohlo dojít k vícenásobnému přidělení. Dříve docházelo opakovaně ke zdvojení inventárních čísel nebo vynechání celých rozsahů.
Co začalo jako řešení problému, se vyvinulo v komplexní nástroj, který dalece přesahoval původní správu ticketů. Oddělení podpory mohlo výrazně zvýšit svou efektivitu, protože tickety se staly transparentními a centrálně sledovatelnými. Systém běžel stabilně až do likvidace firmy, přičemž můj kolega a já jsme převzali průběžnou údržbu a péči.
Asociováno s Das Systemhaus Datentechnik Berlin GmbH