Compromissen voor operationele uitmuntendheid
Operational Excellence biedt workloadkwaliteit door de implementatie van duidelijke teamstandaarden, begrepen verantwoordelijkheid en verantwoording, aandacht voor klantresultaten en teamcohesie. De implementatie van deze doelen is geroot in DevOps, dat aanbeveelt om de variantie van processen te minimaliseren, menselijke fouten te verminderen en uiteindelijk het rendement van waarde voor de workload te verhogen. Deze waarde wordt niet alleen gemeten aan de functionele vereisten die worden geleverd door de onderdelen van de workload. Het wordt ook gemeten door de waarde die het team levert bij het streven naar verbetering.
Tijdens de ontwerpfase van een workload en gedurende de levenscyclus is het belangrijk om na te gaan hoe beslissingen op basis van de ontwerpprincipes van Operational Excellence en de aanbevelingen in de controlelijst voor ontwerpbeoordeling van Operational Excellence van invloed kunnen zijn op de doelstellingen en optimalisaties van andere pijlers. Bepaalde beslissingen kunnen enkele pijlers ten goede komen, maar vormen een compromis voor anderen. In dit artikel worden voorbeelden beschreven die een workloadteam kan tegenkomen bij het ontwerpen van workloadarchitectuur en -bewerkingen.
Operationele uitmuntendheid compromissen met betrouwbaarheid
Compromis: Verhoogde complexiteit. Betrouwbaarheid geeft prioriteit aan eenvoud, omdat eenvoudig ontwerp onjuiste configuratie minimaliseert en onverwachte interacties vermindert.
Veilige implementatiestrategieën vereisen vaak enige mate van voorwaartse en achterwaartse compatibiliteit tussen toepassingslogica en gegevens in de workload. Deze extra complexiteit verhoogt de testlast en kan leiden tot complexe of integriteitsproblemen met de gegevens van de workload.
Een zeer gelaagde, modulaire of geparameteriseerde infrastructuur als code kan de kans op onbedoelde onjuiste configuratie vergroten vanwege de complexiteit van de interactie tussen de codeonderdelen.
Cloudontwerppatronen die ten goede komen aan bewerkingen, vereisen soms de introductie van extra onderdelen, bijvoorbeeld het gebruik van een extern configuratiearchief of de coördinatie van sidecar-implementaties in een toepassingsplatform in een container. De extra onderdelen en toegevoegde lagen van indirectie verhogen de interactiepunten in het systeem, waardoor het oppervlak voor storing of onjuiste configuratie toeneemt.
Workloadonderdelen die zijn ontworpen om onafhankelijk te worden ontwikkeld om flexibele ontwikkeling en hosting te ondersteunen, introduceren afhankelijkheden van servicedetectie als een laag van indirectie. Servicedetectie kan te weinig reactietijd hebben om te veranderen en storingen kunnen moeilijk worden vastgesteld.
Compromis: Toegenomen potentieel destabiliserende activiteiten. De pijler Betrouwbaarheid stimuleert het vermijden van activiteiten of ontwerpkeuzen die een systeem kunnen stabiliseren en leiden tot onderbrekingen, storingen of storingen.
Het implementeren van kleine, incrementele wijzigingen is een techniek voor het beperken van risico's, maar deze kleine wijzigingen worden naar verwachting ook vaker aan de productie geleverd. Implementaties kunnen een systeem stabiliseren, zodat het aantal implementaties toeneemt, dus dit risico.
Een cultuur die zichzelf meet met snelheidsmetrische metrische gegevens zoals implementaties per week en automatisering gebruikt die het introduceren van wijzigingen in een sneller tempo kan vergemakkelijken, is ook waarschijnlijk in een kortere periode meer implementaties uit te voeren.
Het verhogen van de dichtheid om bewerkingen te vereenvoudigen door het aantal controle- en waarneembaarheidsoppervlakken te verminderen, kan ook leiden tot een verhoogd beschikbaarheidsrisico omdat storing of onjuiste configuratie de impactstraal van een destabiliserende gebeurtenis verhoogt.
Operationele uitmuntendheid compromissen met beveiliging
Compromis: Toegenomen oppervlakte. De beveiligingspijler raadt een beperkt oppervlak aan voor workloads in termen van onderdelen en blootstelling aan bewerkingen. Deze vermindering minimaliseert aanvalsvectoren en produceert een kleiner bereik voor beveiligingscontrole en testen.
Onderdelen die de workload omringen en de bewerkingen ondersteunen, zoals automatisering of een aangepast besturingsvlak, moeten ook binnen het bereik vallen voor regelmatige beveiligingsmaatregelen en tests.
Routine-, ad-hoc- en noodoperaties vergroten de contactpunten met de workload. Een zero trust-benadering vereist dat deze processen worden beschouwd als aanvalsvectoren en moeten worden opgenomen in de beveiligingscontroles en validatie voor de workload.
Het waarneembaarheidsplatform van het systeem verzamelt logboeken en metrische gegevens over de workload, wat een waardevolle bron van openbaarmaking van informatie kan zijn. Daarom moet de beveiliging van de workload worden uitgebreid om gegevenssinks te beschermen tegen interne en externe bedreigingen.
Bouw agents, ge externaliseerde configuratie en wisselknop voor functies en benaderingen voor implementatie naast elkaar, allemaal vergroot het toepassingsoppervlak waarvoor beveiliging is vereist.
Een hogere implementatiefrequentie die wordt veroorzaakt door kleine, incrementele wijzigingen of door 'actueel blijven, actueel blijven' resulteert in meer beveiligingstests in de levenscyclus van softwareontwikkeling.
Compromis: Toegenomen verlangen naar transparantie. Een veilige workload is gebaseerd op ontwerpen die de vertrouwelijkheid van gegevens beschermen die door de onderdelen van het systeem stromen.
Waarneembaarheidsplatformen nemen gegevens van alle typen op om inzicht te krijgen in de status en het gedrag van een workload. Als teams proberen een hogere betrouwbaarheid te bereiken in waarneembaarheidsgegevens, is er een verhoogd risico dat besturingselementen voor gegevensclassificatie, zoals gegevensmaskering, van de bronsystemen niet worden uitgebreid naar de logboeken en logboeksinks van het waarneembaarheidsplatform.
Compromis: verminderde segmentatie. Een belangrijke beveiligingsbenadering voor het isoleren van toegang en functie is het ontwerpen van een sterke segmentatiestrategie. Dit ontwerp wordt geïmplementeerd via resourceisolatie en identiteitscontroles.
Het vinden van verschillende toepassingsonderdelen in gedeelde reken-, netwerk- en gegevensresources om het beheer eenvoudiger segmentatie ongedaan te maken of maakt segmentatie op basis van rollen moeilijker te bereiken. Co-locatieonderdelen moeten mogelijk ook een workloadidentiteit delen, wat kan leiden tot overtoewijzing van machtigingen of een gebrek aan traceerbaarheid.
Het verzamelen van alle logboeken van het hele systeem in een geïntegreerde logboeksink kan het uitvoeren van query's en het bouwen van waarschuwingen vereenvoudigen. Dit kan echter ook het moeilijker of onmogelijk maken om beveiliging op basis van rijen te bieden om gevoelige gegevens te behandelen met de vereiste controlecontroles.
Het beheer van beveiliging op basis van kenmerken of rollen vereenvoudigen door de granulariteit van rollen te verminderen en hun toewijzingen kunnen leiden tot ongepaste brede machtigingen.
Operationele uitmuntendheid compromissen met Kostenoptimalisatie
De pijler Operational Excellence raadt nooit activiteiten aan die de productiviteit verminderen of het rendement van een workload in gevaar brengen. Aanbevelingen die de focus van leveringsactiviteiten lijken te verschuiven, houden rekening met het belang van de lange termijn voor de workload en het team. Als uw workload de zonsondergangdatum nadert, is het waarschijnlijk niet zinvol om sterk te investeren in aanbevelingen die deze compromissen activeren.
Compromis: toegenomen resourceuitgaven. Een belangrijk kostenstuurprogramma voor een workload is de kosten van de resources. Het implementeren van minder resources, het juiste formaat van resources en het verminderen van het verbruik helpt over het algemeen de kosten laag te houden.
Het implementeren van veilige implementatieprocedures, zelfs als de wijzigingen relatief klein zijn, kan leiden tot een toename van het aantal resources dat gelijktijdig wordt geïmplementeerd. Deze patronen vereisen de implementatie van meerdere gelijktijdige exemplaren van het toepassings- of infrastructuuronderdeel, zodat verkeer op een gecontroleerde manier kan worden verschoven. Deze toename is meer uitgesproken in een workload die gebruikmaakt van een onveranderbare infrastructuurbenadering.
Het team moet mogelijk extra workloadonderdelen introduceren om operationeel afgestemde cloudontwerppatronen of workloadautomatisering te implementeren. Om bijvoorbeeld implementatieflexibiliteit te ondersteunen, kunnen ze een gatewayrouteringsonderdeel toevoegen. Ter ondersteuning van beter configuratiebeheer kunnen ze een extern configuratiearchief toevoegen. Om levenscyclus-gebeurtenissen van tenants te ondersteunen, kunnen ze een besturingsvlak bouwen. Deze resources beïnvloeden ook de kosten van preproductieomgevingen.
Door het aantal preproductieomgevingen te verhogen om de ontwikkel- en testervaring door isolatie te verbeteren, neemt ook het aantal resources toe. Deze resources, die niet worden gebruikt om de vraag naar productie af te leveren, verhogen de kosten van de oplossing.
Het verbeteren van de pariteit van preproductieomgevingen met de productieomgeving, wat betreft het aantal resources, SKU's en gegevensvolumes, verbetert het kwaliteitscontroleproces. De kosten stijgen naarmate pariteit toeneemt.
Hoewel telemetriegegevens niet rechtstreeks een resource zijn, moeten deze gegevens worden bewaard om de effectiviteit van waarneembaarheidsplatforms mogelijk te maken. De meeste operationele gegevensarchieven hebben prijzen die zijn gebaseerd op een combinatie van opnametarieven en volume. Over het algemeen nemen de kosten ook toe naarmate de hoeveelheid telemetrie met lage latentie toeneemt. Voor implementaties in meerdere regio's worden deze sinks voor operationele gegevens naar verwachting per regio geïmplementeerd, zodat eventuele kosten per resource een factor worden.
Compromis: Verminderde focus op leveringsactiviteiten. Leden van het workloadteam leveren een hogere workloadwaarde door efficiënt taken uit te voeren die zijn afgestemd op hun mogelijkheden.
Workloadteams die tijd besteden aan het maken en verfijnen van een gezonde en verantwoorde ondersteuningsstructuur en reactie op incidenten bieden een waardevolle service aan de gebruikers van de workload. Naarmate de ondersteuningsinspanning toeneemt (bijvoorbeeld formele on-call rotaties), meestal vanwege een verandering in bedrijfskritiek, nemen de kosten van deze activiteiten toe. Deze kostenstijging kan het gevolg zijn van een toename van het personeel of kan indirect worden gemaakt in de vorm van aandacht die wordt verschoven van leveringsactiviteiten naar ondersteunende functies.
Training is een essentieel onderdeel van het persoonlijke proces voor continue verbetering van een workloadteam. Deze training kan formeel of zelfgestuurd zijn tijdens persoonlijke verrijkingstijd. Naarmate de hoeveelheid trainingstijd toeneemt, neemt de hoeveelheid tijd die beschikbaar is voor directe ontwikkeling van de werkbelasting af. De investering in training neemt af wanneer de training niet op rollen is gebaseerd of specifiek relevant is voor de workload of de toekomst ervan.
Gestandaardiseerde routine operationele taken voor het beveiligen van de betrouwbaarheid, beveiliging en prestatie-efficiëntie van een workload kost tijd om te definiëren, te verfijnen en uit te voeren. Deze tijd wordt niet rechtstreeks besteed aan levering. Enkele voorbeelden van deze taken zijn uitgebreide impactanalyse van wijzigingen, wijzigingsbeheerprocessen, grondig testen en verbeterd patchbeheer. Naarmate de frequentie, uitgebreidheid of operationele last van deze taken toeneemt, neemt ook de tijd die is geïnvesteerd toe.
Compromis: Verhoogde tooling eisen en diversiteit. De pijler Cost Optimization raadt het verminderen van hulpprogramma's aan, samenvoeging van leveranciers en een benadering van de juiste grootte voor alle toolingaankopen.
Een workloadteam koopt hulpprogramma's en hardware om activiteiten te ondersteunen die worden uitgevoerd tijdens de volledige levenscyclus van softwareontwikkeling (SDLC), waaronder planning en ontwerp, ontwikkeling en testen en bewaking. De marketplace voor hulpprogramma's in deze ruimte groeit. Hulpprogramma's worden aangeboden op verschillende prijspunten die meestal overeenkomen met de functies en mogelijkheden van de hulpprogramma's. Met uitzondering van gratis aanbiedingen worden voor deze hulpprogramma's initiële licentiekosten in rekening gebracht, die per gebruiker, per apparaat of site kunnen zijn. Ze vereisen vaak ook doorlopende onderhoudscontracten. Er moeten mogelijk nieuwe leveranciersrelaties tot stand worden gebracht. Hier volgen enkele voorbeelden van verwachte hulpprogramma's of hardwareuitgaven die zijn gekoppeld aan de principes van operationele uitmuntendheid:
- Vereisten en achterstandsbeheer
- Ontwerphulpprogramma's voor architectuur
- Ui/UX-ontwerphulpprogramma's
- Hosting van code en assets
- Ontwikkelomgevingen met code en weinig code
- Automatiseringshulpprogramma's
- Werkstations voor ontwikkeling en kwaliteitscontrole
- Pijplijnen voor ontwikkeling en implementatie
- Uitvoering en tracering testen
- Hulpprogramma's voor waarneembaarheid
Operationele uitmuntendheid compromissen met prestatie-efficiëntie
Compromis: verhoogd resourcegebruik. De pijler Prestatie-efficiëntie adviseert de toewijzing van zoveel mogelijk beschikbare reken- en netwerkvereisten aan de vereisten van de workload.
Het waarneembaarheidsframework van een workload vereist dat de onderdelen in de architectuur tijd en resources toewijzen om logboeken en metrische gegevens te maken, verzamelen en streamen. Deze gegevenspunten helpen ervoor te zorgen dat effectieve waarschuwingen en bewaking mogelijk zijn voor betrouwbaarheid, beveiliging en prestaties. Naarmate het instrumentatieniveau toeneemt, kan de belasting van systeembronnen ook toenemen.
Sommige implementatiemodellen, zoals blauw/groen, die een workload kan gebruiken voor veilige implementatie, kunnen naast elkaar implementaties op het productietoepassingsplatform introduceren. Voor deze implementaties is een preventieve schaalaanpassing vereist om voldoende aanbod te bieden om aan de toekomstige vraag te voldoen, of om een meestal niet-actieve implementatie gedurende een bepaalde periode te behouden om terugdraaien te ondersteunen.
Compromis: verhoogde latentie. Om krachtige workloads te maken, zoeken teams naar manieren om de tijd en resources te verminderen die workloads verbruiken om hun taken uit te voeren.
Veel implementatiemodellen vereisen het gebruik van gatewayrouteringspatronen, waardoor latentie kan worden geïntroduceerd. Deze latentie is gebaseerd op het budget voor het prestatiedoel voor de gerelateerde stromen.
Sommige cloudontwerppatronen die ondersteuning bieden voor 'onafhankelijke wijziging in de loop van de tijd' om de idealen van incrementele verbetering te ondersteunen, kunnen latentie veroorzaken vanwege de doorkruising van aanvullende onderdelen. Deze latentie kan worden geïntroduceerd door gateways, berichtenbrokers of anti-corruptielagen.
Verwante koppelingen
Verken de compromissen voor de andere pijlers: