Průvodce posunem konfigurace a jak mu předejít

Posun konfigurace je důležitým problémem všech vývojářů IAAC. Tento příspěvek se dozví o správě posunu konfigurace, jeho důležitosti, příčinách a potenciálních řešeních.

Co je Configuration Drift?

Vlastníci aplikací musí své aplikace a základní infrastrukturu v průběhu času měnit, aby neustále zlepšovali zákaznickou zkušenost. Tito zákazníci mohou být uvnitř společnosti nebo mimo ni.

Konfigurace aplikací a infrastruktury se v důsledku těchto aktualizací a změn mění. Tyto úpravy by mohly být prospěšné nebo by mohly zhoršit zpevněný stav systému. Konfigurační drift je termín pro toto.

Jak funguje drift konfigurace

Potenciál pro posun konfigurace se zvyšuje se složitostí systémů výroby a dodávání softwaru. Kód je obecně přenášen z pracovní stanice vývojáře do sdíleného vývojového prostředí, do testovacího prostředí a prostředí QA a případně do pracovního a produkčního prostředí.

Potenciální dopad se zvyšuje s tím, jak daleko podél potrubí k driftu dochází. Dokonce i drobné odchylky mezi verzí balíčku nainstalovanou na vývojářském notebooku a verzí nainstalovanou na testovacím serveru mohou oddálit ladění problémů. Obvykle se očekává, že pouze inscenace a produkce budou replikami jedna druhé. Napětí je intenzivní, protože mnoho podniků nasazuje nový kód mnohokrát denně.

Běžné příčiny odchylky konfigurace

Nedostatek komunikace

Někdy upstream týmy nekomunikují s downstream partnery o změnách, které provedli, což v důsledku naruší celý downstream systém.

Hotfixy

Opravy hotfix jsou změny kódu provedené za účelem vyřešení kritického problému, který nemůže čekat do další plánované aktualizace aplikace. Někdy se stane, že inženýři pracující na řešení problému neprovedou změny nebo zdokumentují stejnou opravu do jiných prostředí v potrubí, což v důsledku vede k posunu. Tento posun často vyřeší opětovné uvedení původního problému.

Aktualizace kritických balíčků

Důležité aktualizace balíčků jsou poněkud podobné opravám hotfix. Obojí se provádí rychlým tempem. Hlavním rozdílem je, že kritické aktualizace balíčků jsou používány v naději, že se vyhnou budoucím incidentům. Takže takové aktualizace mohou způsobit posun stejným způsobem jako opravy hotfix.

  Background Burner vám pomůže odstranit pozadí z fotografií

Nedostatek automatizace

Automatizace zcela neodstraní možnost posunu konfigurace. Jen to sníží jeho šance.

Změny pohodlí

Změny provedené vývojáři jsou někdy dočasné. Například k posunu dochází, pokud vývojář nainstaluje nový balíček na testovací server, aby otestoval některé funkce, a zapomene jej vrátit do původního stavu.

Proč je správa konfigurace důležitá?

Jedním z důvodů, proč může být drift konfigurace tak škodlivý, je ten, že pokud jej nikdo neustále nehledá, drift může zůstat neobjevený, protože postupně podkopává základnu vaší infrastruktury, podobně jako malá netěsnost v domě za zdí.

Když je zjištěn posun konfigurace, nalezení základního důvodu posunu konfigurace, který způsobil, že se to všechno stalo, zabere čas, což je cenný zdroj v případě nouze.

Při vývoji softwaru je drift významnou příčinou pomalých cyklů uvolňování. Může to způsobit zbytečnou dřinu a brzdit produktivitu vývojářů.

Nižší náklady

Celkovou potřebnou částku můžete snížit identifikací duplicit nebo nadměrného poskytování, když máte podrobnou představu o své IT infrastruktuře.

Vyšší produktivita

Clustery se stabilními a dobře známými konfiguracemi umožňují správu dávek a výstavbu infrastruktury. Požadavek na ruční správu jednotlivých nastavení je navíc snížen omezením unikátních (neboli sněhových) serverů.

Rychlejší ladění

Konzistentní konfigurace umožňují ladicím týmům vyloučit chyby v konfiguraci. Týmy se mohou soustředit na jiné potenciální příčiny a řešit tikety rychleji, protože nebudou muset hledat nesrovnalosti v konfiguraci mezi servery, serverovými clustery nebo prostředími.

Problémy způsobené posunem konfigurace

Bezpečnostní problémy

Nezabezpečené konfigurace jsou jednou z nejčastějších příčin narušení bezpečnosti. Posun konfigurace může zvýšit pravděpodobnost dalších útoků a narušení sítě, i když začnete s chráněnou konfigurací.

Odstávka

Významný výpadek může být důsledkem chyby konfigurace, která útočníkovi umožní použít chybu DoS nebo ohrozit důležitý server. To však není vše. Řekněme, že změníte konfiguraci síťového zařízení a ovlivníte výkon. Vždy se můžete vrátit ke své „zlaté konfiguraci“, že? Pokud je tato konfigurace chybná, bude obnovení služby trvat mnohem déle.

Nedodržení souladu

Přísné bezpečnostní kontroly jsou nezbytné pro soulad s předpisy jako ISO 27001, PCI-DSS a HIPAA. Posun konfigurace může způsobit porušení souladu, pokud není zastaven.

Snížený výkon

Konfigurace je obvykle ve svém nejoptimálnějším stavu, když je v zamýšleném stavu. Ad-hoc úpravy mohou bránit pokusům o optimalizaci sítě tím, že způsobují úzká místa a konflikty.

Ztracený čas

Odstraňování problémů se sítí, které dobře nerozumíte nebo neodpovídá dokumentaci k vaší síti, může trvat dlouho. To znamená, že posun konfigurace může vést k problémům s řešením problémů IT, které by nemusely existovat nebo by se daly snáze vyřešit, pokud by síť byla v zamýšleném stavu, kromě toho, že by uživatelům vznikaly prostoje.

  Zabraňte Firefoxu shromažďovat informace o nové instalaci

Běžné chyby, na které je třeba si dát pozor při sledování odchylky konfigurace

V dokonalém světě by všechny servery prostředí pro vývojáře (Dev/QA/Staging/Prod) měly stejné konfigurace. Bohužel to tak nefunguje v „reálném“ světě. V komerčním prostředí majitelé aplikací často upravují infrastrukturu, když jsou do softwaru zaváděny nové funkce.

Monitorování posunu konfigurace je zásadní pro zajištění co nejhomogennějšího softwarového prostředí. Konfigurace správy snižuje náklady, zvyšuje produktivitu a dobu ladění a zlepšuje uživatelskou zkušenost.

Aby byly s monitorováním co nejúspěšnější, musí se organizace vyvarovat chyb, i když používají správu konfigurace a sledují posun konfigurace.

Nejčastější chyby jsou uvedeny níže:

Neudržování CMDB

Udržování aktuální databáze pro správu konfigurace (CMDB) je významným prvkem správy konfigurace. Informace o hardwarových a softwarových instalacích sítě lze zkoumat na jednom místě, které poskytuje databáze pro správu konfigurace. Data se shromažďují pro každý majetek nebo konfigurační položku, což poskytuje viditelnost a transparentnost na pracovišti.

Neschopnost udržovat CMDB vystavuje podniky nebezpečí, že plně nepochopí, jak konfigurace jedné položky ovlivňuje jinou položku. Organizace riskují poškození své infrastruktury a zabezpečení, aniž by pochopily důsledky.

Správa CMDB může být náročná, zejména s rostoucím počtem aktiv, ale efektivní organizace a správa databáze jsou zásadní pro úspěšné sledování posunu konfigurace a pochopení infrastruktury.

Nemáte plán, jak sledovat posun konfigurace

Organizace mají často masivní, složitou infrastrukturu, kterou je třeba hlídat. Rozhodující je určit, které komponenty je třeba nejvíce sledovat. V opačném případě se může správa konfigurace rychle stát neovladatelnou a chaotickou.

Organizace musí specifikovat, která aktiva jsou nezbytná pro monitorování společnosti a konkrétní obchodní jednotky. Budou sledovány nejdůležitější systémy, které se budou lišit jednotku od jednotky a odvětví od odvětví.

Nemonitoruje se automaticky

Organizace mohou sledovat posun konfigurace několika způsoby. Některé přístupy jsou však rafinovanější a úspěšnější než jiné.

Ruční monitorování odchylky konfigurace je nákladné a časově náročné. Manuální monitorování také odhaluje možnost lidské chyby. Toto není nejlepší technika pro sledování posunu konfigurace, pokud vaše společnost nemá velmi malou infrastrukturu.

Automatické monitorování je nejrozvinutější a nejefektivnější způsob, jak udržovat konfigurace v požadovaném stavu. Vyhrazené konfigurační monitorovací systémy dokážou okamžitě detekovat posun a často nabízejí řešení, včetně rychlé korekce. To zaručuje, že se podniková infrastruktura vrátí do požadovaného stavu tak rychle, jak je to jen možné a s minimálními dopady.

Jak sledovat posun konfigurace:

Je zřejmé, proč by měla být detekce Configuration Drift hlavním zájmem, jakmile si uvědomíte, jaké škody může způsobit. Vědět, co zachovat a proč to bylo prezentováno jako změna, která vytvořila drift, je prvním krokem v tomto procesu.

Vědět, co hledáte

Svou organizaci můžete třídit tak, že identifikujete součásti klíčové pro organizaci jako celek a ty, které jsou klíčové pro každou obchodní jednotku.

  Jak změnit svůj výchozí Shell v Linuxu pomocí chsh

To se liší podle jednotky a může být rozsáhlé ve vysoce regulovaných odvětvích nebo se může zaměřit pouze na užší soubory/aplikace kritické pro systém. Důležitost systému bude určovat četnost a závažnost monitorovacích systémů.

Nastavte základní linii

Vždy budou existovat rozdíly mezi produkčním prostředím a testovacími fázemi kvůli různým nastavením. Základní linie pro kontrolu posunu je vytvořena definováním toho, jaký by měl být každý krok, a typů povolených odchylek.

Počáteční fáze testování mohou být vhodnější pro vyšší povolený posun než nastavení uživatelského akceptačního testování nebo fáze výroby s nulovým posunem.

Sledujte svůj systém

Požadovaná úroveň monitorování se bude lišit v závislosti na vyspělosti organizace, jejích současných systémech, nástrojích, celkovém počtu konfigurací, které je třeba zkontrolovat, a požadované úrovni kontroly. V závislosti na požadavcích a souladu se může monitorování pro každou jednotku v organizaci lišit.

Jak zabránit posunu konfigurace

Monitorování musí zajistit, aby byla infrastruktura udržována ve vhodné konfiguraci poté, co byly definovány základní konfigurace a povolené mezery. Bez strategie monitorování ztrácí vytváření plánů konfigurace a dokumentace čas.

Ke sledování posunu konfigurace lze použít různé přístupy a mnoho podniků bude kombinovat metodiky a nástroje na základě jejich vyspělosti a požadavků na shodu.

Neustálé manuální sledování

Jednotlivé konfigurace stroje lze ručně zkontrolovat a porovnat se známým konfiguračním souborem. Vzhledem k lidskému aspektu je tento proces stále náchylný k chybám a nákladný, pokud jde o pracovní dobu zaměstnanců. Měl bych být používán pouze v malém měřítku pro několik konkrétních serverových clusterů nebo společnost se skromnou infrastrukturou.

Audity

Tým ručně zkoumá konfigurace serveru jako součást konfiguračních auditů a porovnává je se zadaným modelem. Tyto audity mohou být nákladné, protože vyžadují odborné znalosti k určení toho, jak by měl být systém vybudován, a poté důkladné prozkoumání jakékoli nezdokumentované šance rozhodnout, zda by měl být zachován nebo ne.

Auditorský tým také provede nezbytné úpravy konfiguračních dokumentů, které budou použity během příštího auditu. Audity se obvykle uchovávají u clusterů s vysokou hodnotou nebo s vysokými nároky na dodržování předpisů a pravidelně se provádějí, obvykle několikrát ročně, z důvodu časových a nákladových úvah.

Auditování zaručuje konzistentní a opakovatelnou konfiguraci serveru podle předem stanoveného plánu.

Do příštího auditu se však nastavení posune a zůstane více a více.

Automatizované monitorování v reálném čase

Automatizované monitorování v reálném čase je nejsofistikovanější způsob, jak udržet konfigurace v požadovaném stavu. K tomu je třeba vytvořit servery nebo skupiny serverů spolu s popisem toho, jak by měly být konfigurovány pomocí nástrojů pro nastavení vyhrazeného serveru.

Tyto programy budou používat odlehčeného agenta k monitorování konfigurace serveru v rámci této skupiny a porovnávají ji s její definicí.

Tento automatizovaný proces okamžitě varuje před driftem a obvykle poskytuje několik možností pro nápravu driftu serveru.

Závěrečná slova:

Nekonzistentní konfigurační položky (CI) mezi počítači nebo zařízeními jsou hlavní příčinou posunu konfigurace. K posunu konfigurace dochází přirozeně v prostředí datových center, když se úpravy softwaru a hardwaru provádějí za běhu, aniž by byly důkladně dokumentovány nebo sledovány.

Mnoho selhání systému s vysokou dostupností a obnovou po havárii je připisováno posunu konfigurace. Správci by měli vést pečlivé záznamy o síťových adresách hardwarových zařízení spolu s verzemi softwaru na nich nainstalovanými a provedenými aktualizacemi, aby se minimalizoval posun konfigurace.