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 duplikují interní úsilí, protože týmy o projektech sebe navzájem neví. 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 platforem.

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

Pokud nemáte přehled o aktivech, vytváříte technické rozrůstání a plýtvání, 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, inženýr DevOps, velká logistická společnost

Sledování prostředků

Potřebujete inventář ke sledování všech prostředků, které jste vytvořili nebo vytvořili ve svém ekosystému. Interní zákazníci můžou přehledně vizualizovat inventář.

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 vám umožňují sledovat složitou infrastrukturu vytvořenou prostřednictvím infrastruktury jako kódu (IaC) jako abstraktní 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.

Abyste měli přehled o inventářích, zvažte nejlepší přístup pro vaši organizaci. Některé organizace umožňují všem vývojářům zobrazovat softwarové prostředky, zatímco jen několik vybraných uživatelů má oprávnění je upravovat. Tento přístup založený na transparentnosti, někdy označovaný jako "otevřený kuchyňský" model (kde je vše viditelné, třeba restaurace, do které zákazníci vidí), podporuje povědomí a spolupráci. 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 být dostačující mít sadu plochých inventárních seznamů. 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. Tento přístup 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. Poskytuje dokumentaci k jeho použití. Vytvoří se vývojová, testovací, produkční 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 spolu 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 zastarává a může být obtížné ji jak najít, tak rozebrat. 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, musíte 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 například zjistíte, že jedna ze šablon vytvoří nezabezpečenou konfiguraci, musíte rychle najít všechny prostředky, které jste vytvořili pomocí šablony, abyste je opravili. V tomto katalogu jsou sady šablon aplikací Start Right, které se vážou k jiným typům položek katalogu (jako jsou šablony IaC). Sledování těchto přidružení umožňuje proaktivně najít jakoukoli aplikaci, která odkazuje na špatnou šablonu IaC, i když ještě není zřízena žádná infrastruktura.

Zjednodušená varianta tohoto konceptuálního grafu vývojářské platformy se dnes nachází v několika sadách nástrojů a produktech, i když se název liší. Například opensourcová sada nástrojů portálu Backstage.io nazývá to katalogem 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. To ale může být pro vaši organizaci v pořádku, pokud budete postupovat podle transparentnost-první přístupu, kde můžou všichni vývojáři zobrazit aktiva.