Global IT disruption
Het nieuws van vorige week over een wereldwijde IT-verstoring veroorzaakt door de contentupdate van een beveiligingsleverancier heeft geleid tot belangrijke gesprekken over kwaliteitsborgingsprocessen voor eindpuntproduct- en contentupdates. Bij WatchGuard, met meer dan 30 jaar ervaring in deze branche, kennen we de gevoeligheid van het updateproces goed en wilden we van deze gelegenheid gebruik maken om de processen onder de aandacht te brengen die we hebben ingevoerd om u te beschermen tegen de gevolgen van een gebrekkige update-uitrol.
Eindpuntbeveiligingsproducten zijn nauw verweven met het besturingssysteem (OS) en vereisen daarom sterkere kwaliteitsprocessen. Het unieke karakter van deze producten en de vereisten voor bevoorrechte toegang tot het besturingssysteem maken het ontwikkelings- en kwaliteitsborgingsproces (QA) moeilijker dan bij andere soorten softwareontwikkeling. Omdat dit soort software op tien tot honderden miljoenen eindpunten en in extreem uiteenlopende omgevingen draait, kunnen we niet allemaal exact dezelfde omgevingen testen waarin het product uiteindelijk zal draaien. Om dat probleem op te lossen hebben de technische teams van WatchGuard een proces geïmplementeerd dat, terwijl het ritme van de releases behouden blijft, de mogelijkheid beperkt om de normale bedrijfsvoering te verstoren.
WatchGuard’s eindpuntproductupdateproces
Fase 1 – Preview van vrienden en familie:
Het proces, dat in dit technische artikel wordt uitgelegd, begint nadat het kwaliteitsteam alle interne alfa- en bètatestprocedures voor een nieuwe release heeft voltooid. Zodra de software gecertificeerd is, beginnen we met een fase die we intern Friends & Family-testen noemen; in wezen, omdat het precies dat begon te zijn: vrienden en familie die de nieuwe oplossing in productie testten.
Oorspronkelijk, bijna tien jaar geleden, zijn we begonnen met het upgraden van onze persoonlijke systemen, zowel bedrijfssystemen als persoonlijke apparaten thuis. Onze interne WatchGuard-systemen behoren tot de eersten die worden opgenomen in de Friends & Family-implementatie – niet alleen de personal computers maar ook de productieservers.
In de loop van de tijd is deze omgeving veel diverser geworden, met honderden accounts en duizenden eindpunten. Enkele van onze meest strategische partners en enkele klantbeheerders wilden meedoen aan de vroege adoptie van onze nieuwe versies, waardoor deze klantomgevingen worden toegevoegd aan onze vroege Friends & Family-tests.
Alle systemen in deze fase worden streng bewaakt. We hebben uitgebreide telemetrie toegevoegd om te verifiëren dat de nieuwe versie zich niet anders gedraagt dan de versie die wordt geüpgraded. Onder de uitgebreide gegevens uploaden en controleren we op mogelijke crashes en fouten, maar ook gezondheidsgegevens, zoals verbruikt geheugen of gemiddeld CPU-gebruik.
Afhankelijk van de wijzigingen houden we deze fase voldoende lang aan om te verifiëren dat zowel de eerste implementatie succesvol was als dat deze ook gedurende een voldoende lange periode goed werkt.
Ons ondersteuningsteam is tijdens deze fase ook zeer actief om eventuele nieuwe problemen te identificeren. In feite leveren ze de belangrijkste input om te beslissen of we verder kunnen gaan naar de volgende stap van het upgrade-releaseproces. Wanneer ons ondersteuningsteam tevreden is met de versie en alle statistieken zich onder de gedefinieerde parameters bevinden, gaan we verder.
Fase 2 – Gecontroleerde preview:
Het volgende voor ons is om op de Cloud-console te melden dat er een nieuwe versie beschikbaar is. Het is de bedoeling om onze partners en klanten te laten weten dat ze de nieuwe release kunnen gaan inzetten. Het is mogelijk, zoals beschreven in dit tech artikel, om de upgrade van uw systemen gecontroleerd uit te voeren.
We blijven een aantal weken in deze fase en houden het aantal nieuwe apparaten in de gaten dat wordt geüpgraded. Net als in de Vrienden- en Familiefase zijn onze ondersteuningsteams zeer actief in het identificeren van afwijkend gedrag dat mogelijk verband houdt met de nieuwe versie.
Fase 3 – Automatisch upgradeproces:
Zodra we vertrouwd zijn met de nieuwe release, starten we de automatische upgradefasen. Ook hier is het aantal fasen afhankelijk van de veranderingen, maar deze zijn doorgaans verdeeld in drie tot vier fasen, waarin we in die fasen de upgrade naar klanten gaan pushen.
WatchGuard’s inhoudsupdateproces
Het proces voor het leveren van inhoudsupdates is vergelijkbaar. In dit geval hebben we een staging-omgeving die vergelijkbaar is met onze Vrienden en Familie, met honderden accounts en duizenden apparaten. Zodra de content gecertificeerd is, publiceren wij eerst de update naar deze omgeving. Net als in de Friends & Family-fase wordt deze omgeving sterk gecontroleerd op gezondheidsgegevens. Elke afwijking ten opzichte van de vorige prestatielijn wordt in deze omgeving geëvalueerd en opnieuw getest. Pas als dat proces voltooid is – zonder nieuwe problemen te melden – pushen we de update naar onze partners en klanten.
Ik wil van deze gelegenheid gebruik maken om de inspanningen en de daaruit voortvloeiende waarde te erkennen van het werk dat onze interne ontwikkelings-, kwaliteitsborgings-, DevOps- en ondersteuningsteams dagelijks doen om ervoor te zorgen dat we de oplossing up-to-date houden tegen nieuwe bedreigingen en problemen voor onze partners en klanten vermijden . Ik wil ook de voortdurende inzet van WatchGuard herhalen om deze processen waar nodig opnieuw te bekijken, te herzien en te ontwikkelen om uw vertrouwen te blijven verdienen.
Ten slotte ben ik al meer dan vijfentwintig jaar actief in de branche en ken ik de pijn die wordt veroorzaakt door een mislukte uitrol, en ik vind het niet leuk om dit bij andere bedrijven te zien gebeuren. Wanneer dit gebeurt, is het onze impuls om onze inspanningen te verdubbelen om te verifiëren dat we onze partners en klanten beschermen tegen echte bedreigingen, en om waakzaam te blijven bij het voortdurend opnieuw beoordelen van onze interne processen.
Guillermo Gomez Santamaria
VP, Advanced Endpoint Products and Services
WatchGuard Technologies