• služby
  • managed server

Managed Admin: ovládací aplikace od vshosting~

Autor Damir Špoljarič
Vyvíjíme vlastní unikátní ovládací prostředí managed serverů.

Zdvojnásobení našich vývojářských kapacit v krátké době má svůj důvod. Pracujeme na mnoha zajímavých projektech paralelně a na jeden z těch hodně zajímavých se teď podíváme trochu blíž: Managed Admin.

Co je to projekt Managed Admin

Za téměř 11letou historii jsme si vyzkoušeli či používali mnoho různých control panelů. Žádný nám ale nevyhovoval do náročného prostředí plnohodnotných managed služeb. Vždy bylo nějaké „ale“, kdy se musel přizpůsobit buď klient se svojí aplikací či admin s možnostmi optimalizací a instalací dalšího software.

Běžný control panel se snaží vyrábět z individuální služby, kterou by managed služba měla být, krabicové řešení, které službu zbytečně částečně degraduje. Proto jsme se rozhodli začít vyvíjet vlastní unikátní ovládací prostředí managed serverů pro klienty s názvem Managed Admin.

Decentralizace a zachování individuálních požadavků

Základní myšlenka celého konceptu Managed Admin je decentralizace. Pro ovládání každé služby bude na serveru nainstalován konkrétní balíček (pochopitelně v debianím balíčku viz https://vshosting.cz/blog/nase-seznamovani-s-automatizaci-procesu-nasazeni) s danou konkrétní servisou, které budou komunikovat s centrálním systémem, které klientovi poskytnou ucelený pohodlný pohled na všechny servery a všechny ovládatelné služby a možnosti ovládání přes GUI či restAPI.

Konkrétní servisy vyvíjíme v GoLang. Servisy jsou nezávislé jak na klientských aplikací, tak i mezi sebou. Na databázovém serveru tak bude například pouze balíček pro ovládání klientských účtů a balíček pro ovládání výjimek ve firewallu. Systém bude umožňovat provádět většinu rutinních činností, které klient či vývojář potřebuje ke své každodenní činnosti, pomocí Managed Admin bez nutnosti kontaktovat technickou podporu.

Velký důraz je kladen na uživatelské pohodlí, rozhraní tak bude intuitivní a hlavně díky elasticu extrémně rychlé, jak to mnozí uživatelé znají například z CloudMailu. Pracujeme rovněž na přípravě nového klientského rozhraní, které bude všechny ovládací systémy centralizovat v jednom klientském účtu – jak Managed Admin, tak správu DNS, tak CloudMail a další služby, které chystáme.

Co bude Managed Admin umět

Managed Admin je modulární systém a seznam modulů, které chceme vyvinout je dlouhý. Aplikaci budeme spouštět po dokončení prvních několika modulů a další moduly budeme postupně přidávat. Součástí však bude postupně ovládání cronů (včetně výstupu z logu o provedení), virtualhostů (nginx, apache) včetně automatizace nasazení SSL a dalších častých požadavků (zaheslování, přesměrování, aliasy, popř. možnost nahrazení konfiguračního souboru nginx s možností rollbacku dle konkrétních podmínek SLA dané služby apod), ovládání výjimek ve firewallu pro vybrané služby, ovládání databází/uživatelů na databázovém serveru, stav poštovní fronty serveru, správa logů a rotace logů, správa přístupu k serveru (FTP/SFTP atd).

Jak bude probíhat implementace

Je před námi velký kus práce s vývojem (minimálně půl roku). Implementace bude po dokončení první části projektu prováděna postupně a s každým klientem individuálně.