• služby
  • zerops

Zerops.io – první AI cloudová platforma pro automatizaci DevOps

author.label Damir Špoljarič
Inteligentní platforma, která se v reálném čase plně přizpůsobí potřebám aplikace a klienta.

Myšlenka Zerops.io vznikla před necelým rokem jako vize unikátní služby. Zerops zajistí vývojářům a provozovatelům internetových aplikací plnohodnotné, plně automatizované, inteligentní Managed DevOps prostředí. Vize Zeropsu je tedy inteligentní platforma, která se v reálném čase plně přizpůsobí potřebám aplikace a klienta dle aktuální situace.

Pro spoustu lidí, kterým jsme Zerops vizi představili, jde o nereálné řešení pro přílišnou různorodost klientských aplikací. Za námi však stojí skvělý tým a 11 let praxe s managováním tisíců serverů ?

Proč si Zerops jeho uživatelé oblíbí?

1. Unikátní inteligentní automatizace

Celé operations spojené se správou infrastruktury jsou komplexní obor. Je potřeba zajistit, aby byla infrastruktura zabezpečena, neustále dokonale optimalizována, aby reagovala na aktuální potřeby aplikace, vývojářů a aktuální provoz a zátěž. Tyto úlohy zajišťují DevOps / System Admini.

Vývojový stack většiny moderních aplikací využívá čím dál větší množství moderních serverových komponent – různé noSQL databáze a další. To klade vyšší nároky na adminy, aby takto složitou infrastrukturu udrželi při životě bez výpadků, měli neustále nastudované všechny aktuální informace k jednotlivým komponentám a měli s jejich provozem praxi (ne vše je často v praxi tak, jak praví dokumentace, zejména co se týče různých limitů a reálných mezních stavů).

Z pohledu DevOps nezajišťují plnou automatizaci a „klidné spaní“ ani velké globální cloudy, které jsou z tohoto pohledu příliš „nízkoúrovňové“ a stejně jsou potřeba admini, aws specialisté apod. Často se o infrastrukturu starají přímo vývojáři, kteří aplikaci provozují v Docker kontejneru. Při různých kritických situacích v reálném provozu je ale potřeba, aby problém vyřešil administrátor, který se zaměřuje výhradně na správu infrastruktury.

Co bude konkrétně Zerops tedy automaticky řešit?

Zde je pár příkladů:

Inteligentní autoscaling – automatické rozpoznání optimálního škálování (vertikální vs. horizontální), performance tuning klientské servisy po zvýšení, v souvislosti s navýšeným výkonem a notifikace klientovi (slack, email, sms) o provedené akci a jeho výsledku. Vše téměř v reálném čase (v jednotkách vteřin). Ke škálování bude Zerops přistupovat na základě metrik, které budou přednastaveny dle best-practices, avšak s možností klientské customizace (např. load servisy, response time aplikace, chybování aplikace a další).

Přizpůsobování klientské servisy aktuálnímu stavu aplikace – ne vždy je škálování výkonu jediná cesta, která vyřeší neoptimální běh aplikace. V takových situacích se Zerops pokusí situaci vyřešit změnou nastavení servisy či dá uživateli doporučení, co konkrétně je špatně a jak postupovat.

Update verze servisy – při vydání nové verze bude mít uživatel možnost servisu povýšit na novou verzi pouhým jedním kliknutím tlačítka. Každá nová verze servisy bude odladěna včetně update scénáře, o kterém bude uživatel informován, tedy dojde k updatu bez výpadku, kdy se postupně části servisy na jednotlivých kontejnerech aktualizují (resp. vytvoří nové kontejnery a staré postupně zruší) bez vlivu na běh aplikace. Pokud update servisy neumožňuje provedení za běhu, bude uživatel informován a vybere si čas, ve kterém si přeje, aby Zerops servisu aktualizoval.

Inteligenci Zeropsu budeme neustále zdokonalovat a implementovat do ní naše unikátní know-how.

2. Pohodlí pro vývojáře & jednoduchost & minimum bariér pro deploy do Zeropsu

Jeden z hlavních cílů Zeropsu je mimo jiné zjednodušit život programátorům. Jsme si vědomi, že programátor chce programovat a ne řešit milion věcí kolem, proto chceme klást minimum překážek pro deploy aplikace do Zeropsu a umožnit vývojářům využití nástrojů pro CI, na které jsou zvyklí. V Zerops bude možné spustit hostované Dev prostředí s nástroji, které uživatelé znají (GitLab a pod.) a odladěným deploy procesem.

Zerops prostředí bude navíc stavěno extrémně jednoduše. Nechceme nutit programátory číst dokumentace. Vše bude intuitivní a cílem je, aby si programátor mohl Zerops v demo režimu vyzkoušet během pár minut bez nutnosti dlouhých registrací, vyplňování kreditních karet a jiných nesmyslů. Zerops bude dostatečně kustomizovatelný, aby uživatele neomezoval, nicméně v implicitním nastavení bude dostatečný a „ihned k použití“ pro vývoj i produkci.

Chystá se také celá řada praktických features, které programátoři ocení. Naklonování servisy či celé instance „on the fly“, tedy v reálném čase, pro potřeby otestovat změnu v aplikaci, vrácení stavu databáze do libovolného času – hodiny, minuty, vteřiny zpětně apod.

Programátor bude mít k dispozici realtime statistiky stavu jednotlivých services s vyznačením okamžiku deploye pro možnost sledovat vliv změny aplikace na zátěž. Zerops bude programátora notifikovat do Slacku, emailem či SMS zprávou v případě nějaké mimořádné události nebo doporučení (například doporučení k preventivnímu navýšení RAM při příliš velké databázi).

3. Vysoká dostupnost, univerzálnost a komplexnost

Zerops bude podporovat výhradně open-source aplikace, jejichž výčet se bude postupně rozšiřovat. Zerops by měl tak od začátku uspokojit plnou potřebu pro většinu aplikací, což s sebou nese řadu výhod (jednotné prostředí, 1 provider = 1 SLA).

Od začátku předpokládáme plně automatizovanou podporu pro:

  • Relační DB – MariaDB / Galera cluster + MaxScale
  • Search: ElasticSearch cluster
  • Další noSQL: Redis cluster, mongoDB cluster
  • Messaging : RabbitMQ cluster
  • Prostředí pro aplikace psané v PHP, nodeJS, Python, Java, GoLang a další, volitelně Docker

Zerops.io bude mít řadu „systémových“ komponent:

  • Volitelný L7 balancer s možností customizace pravidel (základním balancerem je L3 balancer)
  • Logovací service
  • Dev service – například zmíněný GitLab
  • ObjectStorage service

Všechny produkční klientské services jsou postaveny jako high-availability vyhrazené mikro-clustery vhodné pro produkční provoz malé aplikace i rozsáhlého řešení s maximálním důrazem na stabilní a bezvýpadkový provoz.

4. Gold support pro vývojáře

Rozumíme tomu, že ne pro každého je komfortní vydat se na pospas umělé inteligenci :-). Zerops bude mít k dispozici i podporu našich DevOps specialistů ve formě placené služby, kteří vývojářům poradí, jakým způsobem vyvíjet aplikace, aby byly připraveny na clusterový provoz v cloudovém prostředí či budou řešit neobvyklé situace. Jsou to ti samí kolegové, kteří budou budovat Zerops a využívat mnohaleté zkušenosti se správou serverů pro ladění scénářů Zerops automatizace.

5. Špičková infrastruktura

Ve vshosting~ již 11 let chceme pro naše klienty maximálně špičkovou infrastrukturu. Proto jsme si museli postavit i vlastní datacentrum (a druhé plánujeme), jelikož neexistovalo žádné, které by uspokojilo potřebu po kvalitě. Ano, jednodušší by bylo postavit Zerops například nad Amazonem. Určitě by nám to i zjednodušilo expanzi Zeropsu na zahraniční trhy. Garantovatelného výkonu, stability a kvality ale nejlépe dosáhneme na vlastní infrastruktuře.

Na začátku Zerops spustíme ve dvou datacentrech v Praze, v druhé fázi v Anglii a následně ve dvou lokalitách v USA. U každé instance si tak uživatel bude moct zvolit lokalitu. Jeden z důvodů vlastní infrastruktury jsou i některé hi-tech výhody, které pro Zerops chystáme – například extrémně rychlé NVMe SSD pro databázové servisy.

Studováním možností orchestrace a řešením vnitřního uspořádání infrastruktury strávili naši admini téměř rok. Nakonec jsme vybrali ty nejlepší komponenty, které nám dávaly smysl, z hotových nekompaktních přebujelých řešení a orchestraci jako celek píšeme vlastní v GoLang.

6. Cenová politika

Zerops bude postaven tak, aby komunitě vývojářů pomohl soustředit se na vývoj a neřešit infrastrukturu. Zerops bude dostupný ve dvou variantách. Free varianta, která bude dostatečná i pro provoz řady produkčních aplikací, bude dostupná trvale s možností přechodu na Premium variantu. Premium varianta bude obsahovat řadu zajímavých funkcí navíc, včetně možnosti škálování výkonu. Premium varianta bude dostupná ihned po registraci i v demo režimu.

Cena bude složená z částky za výkon jednotlivých klientských services a za podporu premium features.

7. Dev2Dev

První verzi Zeropsu chceme spustit pro uzavřenou skupinu vývojářů, kteří by se rádi podíleli na otestování Zeropsu. Kromě možnosti vyzkoušet platformu jako první, získají řady výhod (bezplatné premium features apod), a to i do budoucna, mj. přístup do Dev2Dev sekce. Budou mít tak přímý vliv na další vývoj Zeropsu (hlasování o prioritách v roadmapě, podněty, přímá komunikace s vývojovým týmem Zeropsu a další). Zájemci, dejte mi o sobě vědět na damir@zerops.io.

Spuštění Zeropsu plánujeme na léto/podzim 2019.