Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Samoobsluha s mantinely je principem, který umožňuje vývojovým týmům činit vlastní rozhodnutí v rámci sady dobře definovaných parametrů neboli mantinelů. Ochranné mantinely jsou vytvořeny a odsouhlaseny klíčovými zúčastněnými stranami. Mezi zúčastněné strany můžou patřit týmy zabezpečení, provozu, architektury v celé organizaci.
Díky samoobslužné službě s mantinely si vývojové týmy zachovávají autonomii, aby se nezávisle rozhodovali o vývoji. Automatizace a zásady pomáhají zúčastněným stranám zajistit správnou správu zabezpečení, dodržování předpisů, provozu, standardů a nákladů. Povolení této automatizace vyžaduje spolupráci napříč týmovými řádky, aby vývojáři, operátoři a specialisté mohli dělat více, aniž by museli obětovat potřebné zásady správného řízení. Vývojáři se pak můžou co nejrychleji zaměřit na poskytování obchodní hodnoty.
[Řekněme vývojářům,] nebojte se, jak to všechno funguje, stačí je zapnout nebo vypnout, vyplnit ho, vložit řetězec do toho, co potřebujete udělat, a je to v podstatě samoobslužné v tomto ohledu, kde mají soubor readme a mají vstupy, výstupy a můžou vložit cokoli, co se jim líbí. - Daniel, cloudový inženýr, mediální společnost Fortune 500
Cílem poskytování samoobslužného prostředí pro vaše zpevněné cesty je omezit práci vývojářů a zároveň získat přehled o vývojových týmech, provozu a správě. Myšlenka spočívá v tom, že vytvoříte prostředí pro daný úkol, který má minimální křivku učení, a to díky jeho základním možnostem automatizace a agregace dat. Kromě aktivit, jako je zřizování infrastruktury, můžou tato prostředí poskytovat přístup ke kritickým funkcím pro pozorovatelnost, zásady, správu incidentů a další. Tato myšlenka se rozšiřuje o zjišťování a sdílení interních rozhraní API, sad SDK spolu se sdílenými nástroji a službami. Tato prostředí snižují režii, aby se vývojové týmy mohly soustředit na práci.
Interní vývojářské platformy umožňují vývojářům pracovat jako zákazníci digitálních obchodů.
Interní vývojářské platformy poskytují možnosti, které se podobají digitálním obchodištím pro obchodní interakce mezi podniky. Digitální obchody jsou ze své podstaty navržené tak, aby pomohly svým zákazníkům samoobslužně. Mohou zpracovávat větší propustnost než tradiční kamenné obchody, protože poskytují způsoby objevování a vyřizování položek, které jsou zajímavé, aniž by s nikým mluvili. Pomocí této analogie jsou vývojáři zákazníkem a interní vývojářská platforma poskytuje podobné samoobslužné prostředí. Pak operátoři, technici platformy a další zodpovědné role vytvoří katalog položek, o které můžou vývojáři požádat a které jsou navrženy tak, aby splňovaly organizační omezení.
Například si můžete představit, že vývojář žádá o přístup k novému nástroji, jako by zadával objednávku v digitálním obchodě. Podobně jako u objednávky chce vývojář po odeslání žádosti sledovat průběh a zjistit, kdy je dokončený. Na pozadí by se požadavek měl automaticky směrovat na správného poskytovatele plnění, aby splnil potřeby. Jeden ze systémů kontinuální integrace a doručování (CI/CD) si můžete představit jako jednoho poskytovatele plnění, nástroj GitOps nebo preskriptivní aplikační platformu jako sekundu a nástroj pro automatizaci pracovních postupů pro ruční procesy jako třetí. Ve všech případech může vývojář samoobslužně obsluhovat položky z dobře definovaného katalogu stejným způsobem.
Použití vzoru „všechno jako kód“
Použití infrastruktury jako kódu (IaC) prostřednictvím kanálů průběžného doručování (CD) a nástrojů GitOps je důležitou součástí povolení samoobslužné služby. IaC s CD umožňuje používat Bicep, Terraform, Helm charty a další nástroje k vytváření a odstraňování cloudových prostředků podle potřeby. Vzhledem k tomu, že konfigurace cloudové infrastruktury se spravuje stejně jako kód v úložišti zdrojového kódu, můžete použít všechny výhody úložiště Git, jako je zabezpečení a auditovatelnost.
Zřizování společné infrastruktury a nástrojů není jedinou výhodou přístupu IaC. Model IaC můžete přizpůsobit pro jiné scénáře, včetně zabezpečení jako kódu a zásad jako kódu (prostřednictvím nástrojů, jako jsou Azure Policy a Open Policy Agent). Po této technice se do úložiště vloží konfigurační soubor, obvykle YAML nebo JSON, který aktivuje pracovní postup, který soubor zpracuje. Tyto soubory můžou být úložiště aplikací, jako je dependabot.yml nebo CODEOWNERS, nebo se můžou udržovat v samostatném centrálním úložišti. Dokonce to můžete rozšířit do vlastních scénářů, aby se všechno skutečně stalo kódem (EaC) realitou.
Vývojáři mohou využít centrální katalog jako zdroj pro odkazování na každou z těchto šablon EaC. Tento katalog umožňuje vytvářet samoobslužné prostředí a ve výchozím nastavení podporuje osvědčené postupy.
Vytvořit správné počáteční šablony a zavést průběžné správné řízení
Při vývoji softwaru usilujeme o zapouzdřování, modularitu a komponovatelnost při navrhování aplikací. Tuto stejnou linii myšlení byste měli použít pro přípravu platforem prostřednictvím šablon. Můžete například vytvořit a použít sadu centrálně zabezpečených a opakovaně použitelných šablon IaC jako stavební bloky pro infrastrukturu.
Vytvoříme moduly pro naše [vývojáře]... takže místo toho, abyste museli psát nebo se starat o jakýkoli back-end samotný, stačí se starat o svůj kód aplikace. - Daniel, cloudový inženýr, mediální společnost Fortune 500
Zkombinujte šablony IaC, vše jako kód (EaC) a aplikace do přizpůsobeného řešení, které se rozšiřuje o další aktivity, jako je nastavení úložiště zdrojových kódů, naplnění vzorovým kódem nebo poskytnutí vzorového kódu a konfigurace pro doporučené nástroje pozorovatelnosti. Tyto šablony IaC, EaC a aplikací se pak dají ukládat nebo odkazovat z centrálního zabezpečeného umístění, jako je úložiště, katalog v prostředích nasazení Azure nebo Azure Container Registry pro nativní cloud.
Když se šablony startu správně zkombinují s automatizovanými zásadami správného řízení, skenováním a konfigurací zásad, vývojáři zůstanou v pořádku od prvního dne.
Šablony zjednoduší vývoj pomocí automatizovaných a zabezpečených postupů.
Pomocí šablon aplikací můžete zahájit definované přípravné procesy pro několik klíčových rozhodnutí a akcí, které vývojáři přijmou během projektu. Správné šablony zahajují zavedení bezpečných, řízených vývojových postupů a umožňují vývojářům rychle začít. Umožňují automatizaci, která poskytuje přístup k potřebným nástrojům, konfiguruje kanály CI/CD, zřizuje infrastrukturu a aplikační stack a konfiguruje úložiště s ukázkovým zdrojovým kódem, který zahrnuje potřebné sady SDK nebo odkazy na rozhraní API.
Díky tomu, že tyto šablony aplikací odkazují na jiné centralizované šablony (například šablony IaC), každý z těchto jednotlivých stavebních bloků začíná mít vlastní šablony. Tyto šablony jsou centrální pro povolení samoobslužných prostředí, protože nejen definují výstupy, ale také dostupné možnosti, ze které si vývojáři vybírají.
Šablony zajišťují optimalizaci zásad správného řízení, zabezpečení a nákladů.
Šablony by ale měly provádět více než jen spouštění vývojového úsilí. Měly by také stanovit kontrolu a zásady správného řízení prostřednictvím zásad a kontroly zabezpečení nezbytné k tomu, aby zůstaly v průběhu životního cyklu projektu správné. V dalším příkladu můžou šablony nastavit pravidla ochrany větví, která brání neoprávněnému sloučení do produkčního prostředí. Vzhledem k tomu, že šablony zachycují osvědčené postupy a běžné konfigurace, představují jednu z klíčových technik pro optimalizaci nákladů napříč nástroji, dodavateli a týmy.
Vedení efektivních kampaní pro vytvoření obousměrné komunikace
A konečně, jak se zvyšuje vaše důvěra v zpevněné cesty, můžete použít podkladové stavební bloky, které jste sestavili do šablon aplikací, a přesunout existující aplikace na zpevněnou cestu. Vzhledem k tomu, že vaši interní zákazníci už ocení hodnotu vašich pilotovaných procesů, můžete uspořádat interní kampaň správného nastavení a vytvořit obousměrnou komunikaci s ostatními aplikačními týmy. Vývojáři můžou zjistit, jak migrovat aplikaci, zatímco technický tým platformy současně zjistí, jak pro ně vylepšit platformu.
Naplánujte svoji vlastní cestu
Vzhledem k šíři schopností, které mohou pokrývat vaše samoobslužné funkce, je důležité zaměřit své investiční úsilí na plánování a prioritizaci, aby vaše interní platforma pro vývojáře poskytovala hodnotu postupně. Cesta každé organizace při vytváření interní vývojářské platformy je odlišná a sledování produktového myšlení vám pomůže zaměřit se na nejdůležitější místa, která potřebují samoobslužné prostředí.