Sdílet prostřednictvím


Použití inventarizace ke správě prostředků a zabránění duplikování

Jak vaše organizace roste, tak i množství věcí, které potřebujete sledovat. Organizace často duplikovaly interní úsilí, protože jeden tým neví o projektu druhého týmu. Když se lidé pohybují mezi týmy, noví lidé se připojí ke společnosti a ostatní opustí, můžou se projekty stát osamocenými. Inventáře pomáhají tyto problémy vyřešit a jsou klíčovou součástí přípravy platformy.

Inventář je nástroj nebo systém používaný ke sledování, správě a uspořádání technických prostředků organizace. Mezi tyto prostředky patří kód, rozhraní API, kontejnery, virtuální počítače, týmová oprávnění a další.

Neudržování přehledu o prostředcích vede k technickému rozprašování a plýtvání jednoduše proto, že nemůžete snadno zjistit, co už existuje. Ztráta toho, co už existuje, je běžnou výzvou.

Máme spuštěnou tunu kontejnerů nebo instancí [virtuálních počítačů]. Můžeme odstranit staré virtuální počítače? Nikdo neví. Musíme přijít na způsob, jak vyčistit staré věci a používat správné značky, abychom věděli, kdo je vlastník nebo tým, který nás může informovat o tom, co můžeme dělat a co je životní cyklus.... Nevíme, jestli můžeme konkrétní virtuální počítač vypnout, protože nevíme, co se stane. - Martin, technik DevOps, velká logistická společnost

Sledování prostředků

Potřebujete inventář ke sledování všech "věcí", které jste vytvořili nebo vytvořili ve svém ekosystému, který můžou interní zákazníci vizualizovat srozumitelným způsobem.

Inventář může zlepšit zabezpečení, zvýšit opakované použití a obecně usnadnit zjišťování. Pro sledování různých typů prostředků jsou k dispozici různé nástroje. Každý z těchto nástrojů poskytuje inventář, který vám pomůže spravovat, sledovat a vyčistit plýtvání.

Mezi dostupné nástroje pro sledování patří:

  • Prostředí nasazení Azure umožňují sledovat složitou infrastrukturu vytvořenou prostřednictvím infrastruktury jako kódu (IaC) jako abstraktního prostředí.
  • Azure API Center poskytuje vývojářům způsob, jak zjišťovat a využívat rozhraní API.
  • Registry balíčků, jako jsou GitHub Packages nebo Azure Artifacts (nebo jiné inventáře schválených balíčků a sad SDK), zlepšují zabezpečení dodavatelského řetězce.

Při rozhodování o viditelnosti inventářů zvažte nejlepší přístup pro vaši organizaci. Některé organizace umožňují všem vývojářům zobrazit softwarové prostředky, ale jenom několik z nich je může upravit, podobně jako otevřená kuchyně. Jiné, zejména v regulovaných odvětvích, omezují přístup těsněji, někdy dokonce omezují viditelnost na názvy projektů kvůli citlivosti.

Vylepšení zjistitelnosti, zásad správného řízení a opětovného použití

Mít jeden nebo více inventarizačních systémů, které vám pomůžou sledovat, co máte, je důležité pro postupy přípravy platforem a vyhnout se technickému rozrůstání. Zpočátku může stačit sada seznamů plochých skladových zásob. Zjistitelnost ale můžete dále vylepšit přidáním vztahů mezi různými prostředky v několika inventářích. Bez ohledu na požadovanou úroveň viditelnosti umožňuje centralizovaný agregační bod týmům rychle vyhledávat a zjišťovat všechny prostředky, které jsou jim k dispozici. To podporuje opakované použití, snižuje redundanci a vytváří konzistentní přístup k zásadám správného řízení.

Zvažte vztah mezi definicí rozhraní API a nasazeným kódem aplikace, který implementuje rozhraní. Tento kód je uložený v úložišti a spravuje ho tým a poskytuje dokumentaci k jeho použití. Vytvoří se vývojová, testovací, produžovaná a dokonce i dočasná prostředí sandboxu. V nativních cloudových scénářích se můžou prostředí nasadit do sdíleného clusteru Kubernetes. Vývojový tým, který vytváří rozhraní API, a všichni interní spotřebitelé musí mít možnost získat informace o každé z těchto věcí, ale to, jak prostředky souvisejí, není zřejmé.

Abyste mohli začít, můžete použít něco tak jednoduchého jako stránku wikiwebu, abyste mohli sledovat, jak spolu jednotlivé věci souvisí. Ale dokumentace rychle a může být obtížné najít a analyzovat. V ideálním případě byste měli systém s grafem relací, který může využít uživatelská rozhraní k procházení těchto relací v inventáři. Abyste skutečně zlepšili zjistitelnost, budete muset být schopni spojit věci uložené v několika typech inventáře nebo grafů dohromady. Možná nebudete muset využívat inventarizace přímo, ale pravděpodobně budete chtít, abyste je mohli přidružit k informacím v systému katalogu rozhraní API.

Pokud chcete použít analogii digitálního úložiště, může být také užitečné přidružit položky (šablony) v katalogu k výslednému obsahu inventáře. Pokud si například uvědomíte, že jedna ze šablon vytvoří nezabezpečenou konfiguraci, budete muset rychle najít všechny prostředky vytvořené pomocí šablony, abyste je opravili. Šablony aplikací, které jsou v podstatě počátečními sadami v tomto katalogu, které jsou vázané na jiné typy položek katalogu (jako jsou šablony IaC). Sledování těchto přidružení vám umožní proaktivně najít jakoukoli aplikaci, která odkazuje na špatnou šablonu IaC, i když ještě nebyla zřízena žádná infrastruktura.

Zjednodušená varianta tohoto konceptu, graf vývojářské platformy vysoké úrovně, najdete v několika sadě nástrojů a produktech dnes, i když se nazývá to, co se nazývá, se liší. Například opensourcová sada nástrojů portálu Backstage.io volá tento katalog softwaru, zatímco jiné produkty používají jiné termíny. Většina těchto produktů a sad nástrojů ale předpokládá, že používáte širší sadu funkcí a vyžaduje, aby se obsah inventářů v nich duplikoval. Tato duplikace znamená, že obsah databáze katalogu není specifický pro uživatele, může se stát zastaralým a neřídí se mechanismy autorizace uživatelů skutečného zdrojového systému. Pokud ale postupujete podle otevřené kuchyně, může to pro vaši organizaci fungovat dobře.