

Binnen ACA werken meerdere teams aan verschillende (of dezelfde!) projecten. Elk team heeft zijn eigen expertisedomeinen, zoals het ontwikkelen van software op maat, marketing en communicatie, mobiele ontwikkeling en meer. De teams die gespecialiseerd zijn in Atlassian-producten en cloud-expertise combineerden hun kennis om een zeer beschikbare Atlassian-stack op Kubernetes te creëren. Niet alleen konden we op deze manier onze interne processen verbeteren, we konden deze oplossing ook aan onze klanten aanbieden!
In deze blogpost leggen we uit hoe onze Atlassian- en cloudteams een hoogbeschikbare Atlassian-stack bovenop Kubernetes hebben gebouwd. We bespreken ook de voordelen van deze aanpak en de problemen die we onderweg zijn tegengekomen. Hoewel we er verdomd dichtbij zijn, zijn we toch niet perfect 😉 Tot slot bespreken we hoe we deze setup monitoren.
De opzet van onze Atlassian-stack
Onze Atlassian stack bestaat uit de volgende producten:
- Amazon EKS
- Amazon EFS
- Atlassian Jira Data Center
- Atlassian Confluence gegevenscentrum
- Amazon EBS
- Atlassian Bitbucket datacenter
- Amazon RDS
Zoals je kunt zien, gebruiken we AWS als cloud provider voor onze Kubernetes setup. We maken alle resources aan met Terraform. We hebben een aparte blogpost geschreven over hoe onze Kubernetes setup er precies uitziet. Je kunt het hier lezen! De afbeelding hieronder zou je een algemeen idee moeten geven.

Het volgende diagram geeft je een idee van de opzet van ons Atlassian Data Center.

Hoewel er een paar verschillen zijn tussen de producten en de opstellingen, blijft de kern hetzelfde.
- De applicatie wordt gestart als een of meer pods die worden beschreven door een StatefulSet. De pods worden node-0 en node-1 genoemd in het bovenstaande diagram.
- Het eerste verzoek wordt naar de load balancer gestuurd en wordt doorgestuurd naar de node-0 pod of de node-1 pod. Verkeer is sticky, dus al het volgende verkeer van die gebruiker wordt naar node-1 gestuurd.
- Zowel pod-0 als pod-1 hebben persistente opslag nodig die gebruikt wordt voor de plugin cache en indexen. Op elk van de pods wordt een ander Amazon EBS volume gemount.
- De meeste gegevens zoals je JIRA issues, Confluence ruimtes, ... worden opgeslagen in een database. De database wordt gedeeld, node-0 en node-1 maken beide verbinding met dezelfde database. We gebruiken meestal PostgreSQL op Amazon RDS.
- De node-0 en node-1 pod moeten ook grote bestanden delen die we niet in een database willen opslaan, bijvoorbeeld bijlagen. Hetzelfde Amazon EFS volume wordt op beide pods gemount. Wanneer er wijzigingen worden aangebracht, bijvoorbeeld een bijlage wordt geüpload naar een issue, is de bijlage onmiddellijk beschikbaar op beide pods.
- We gebruiken CloudFront (CDN) om statische assets te cachen en de responstijden op het web te verbeteren.
De voordelen van deze opzet
Door deze opzet te gebruiken, kunnen we gebruikmaken van de voordelen van Docker en Kubernetes en de datacenterversies van de Atlassian-tooling. Er zijn veel voordelen verbonden aan deze manier van werken, maar we hebben de belangrijkste voordelen hieronder opgesomd.
- Het is een zelfherstellend platform: containers en worker nodes vervangen zichzelf automatisch als er een storing optreedt. In de meeste gevallen hoeven we niets te doen en zorgt de stack voor zichzelf. Natuurlijk is het nog steeds belangrijk om storingen te onderzoeken, zodat je ze in de toekomst kunt voorkomen.
- Precies nul downtime implementaties: wanneer we de eerste node binnen het cluster upgraden naar een nieuwe versie, kunnen we de oude versie nog steeds aan onze klanten serveren op de tweede. Zodra de upgrade is voltooid, wordt de nieuwe versie geserveerd vanaf het eerste knooppunt en kunnen we het tweede knooppunt upgraden. Op deze manier blijft de applicatie beschikbaar, zelfs tijdens upgrades.
- Deployments zijn voorspelbaar: we gebruiken dezelfde Docker-container voor ontwikkeling, staging en productie. Daarom hebben we er vertrouwen in dat de container in onze productieomgeving kan starten na een succesvolle deploy naar staging.
- Applicaties met hoge beschikbaarheid: als er een storing optreedt op een van de nodes, kan het verkeer worden omgeleid naar de andere node. Op deze manier heb je de tijd om het probleem te onderzoeken en de kapotte node te repareren terwijl de applicatie beschikbaar blijft.
- Het is mogelijk om gegevens van het ene naar het andere knooppunt te synchroniseren. Zo kan het synchroniseren van de index van de ene node naar de andere om een corrupte index te herstellen in slechts enkele seconden gebeuren, terwijl een volledige herindexering veel langer kan duren.
- Je kunt een hoog beveiligingsniveau implementeren op alle lagen (AWS, Kubernetes, applicatie, ...)
- AWS CloudTrail voorkomt ongeautoriseerde toegang op AWS en stuurt een waarschuwing in geval van een afwijking.
- AWS Config voorkomt wijzigingen in AWS-beveiligingsgroepen. Je kunt meer te weten komen over hoe je je cloud kunt beveiligen met AWS Config in onze blogpost.
- Terraform zorgt ervoor dat wijzigingen op de AWS-omgeving door het team worden goedgekeurd voordat ze worden uitgerold.
- Aangezien het upgraden van Kubernetes master en worker nodes weinig tot geen impact heeft, draait de stack altijd op een recente versie met de laatste beveiligingspatches.
- We gebruiken een combinatie van namespacing en RBAC om ervoor te zorgen dat applicaties en implementaties alleen toegang hebben tot bronnen binnen hun naamruimte metde minste privileges.
- Netwerkbeleid wordt uitgerold met Calico. We weigeren standaard al het verkeer tussen containers en staan alleen specifiek verkeer toe.
- We gebruiken recente versies van de applicaties van Atlassian en implementeren beveiligingsberichten wanneer deze door Atlassian worden gepubliceerd.

Geïnteresseerd om zelf de kracht van Kubernetes te benutten? Op onze website vind je meer informatie over hoe we je kunnen helpen!
Problemen die we tegenkwamen tijdens de installatie
De migratie naar deze stack was niet alleen maar leuk en aardig. We zijn onderweg zeker een aantal moeilijkheden en uitdagingen tegengekomen. Door ze hier te bespreken, hopen we dat we jouw migratie naar een vergelijkbare setup kunnen vergemakkelijken!
- Sommige plugins (meestal oudere plugins) werkten alleen op de standalone versie van de Atlassian applicatie. We moesten een alternatieve plugin vinden of ondersteuning van een leverancier gebruiken om dezelfde functionaliteit op Atlassian Data Center te krijgen.
- We moesten enkele wijzigingen aanbrengen in onze Docker-containers en netwerkbeleid (bijv. firewallregels) om ervoor te zorgen dat beide nodes van een applicatie met elkaar konden communiceren.
- De meeste applicaties hebben wat extra tools in de container. Bijvoorbeeld Synchrony voor Confluence, ElasticSearch voor BitBucket, EazyBI voor Jira, enzovoort. Deze extra tools moesten allemaal gerefactored worden voor een multi-node opstelling met gedeelde gegevens.
- In onze vorige opstelling draaide elke applicatie op zijn eigen virtuele machine. In een Kubernetes-context zijn de applicaties verspreid over een aantal worker nodes. Daarom kan één worker node meerdere applicaties draaien. Elke node van elke applicatie wordt gepland op een worker node die voldoende resources beschikbaar heeft. We moesten een goed plaatsingsbeleid implementeren zodat elk knooppunt van elke applicatie voldoende geheugen beschikbaar heeft. We moesten er ook voor zorgen dat een applicatie een andere applicatie niet kon beïnvloeden als deze om meer resources vroeg.
- Er waren ook enkele uitdagingen met betrekking tot load balancing. We moesten een aangepast sjabloon maken voor nginx ingress-controller om ervoor te zorgen dat websockets correct werken en dat alle gezondheidscontroles binnen de applicatie een gezonde status rapporteren. Daarnaast hadden we een andere loadbalancer en URL nodig voor ons BitBucket SSH-verkeer in vergelijking met ons webverkeer naar de BitBucket UI.
- Onze vorige installatie bevatte veel gegevens, zowel op het bestandssysteem als in de database. We moesten alle gegevens migreren naar een Amazon EFS-volume en een nieuwe database in een nieuw AWS-account. Het was een uitdaging om een manier te vinden om een consistent synchronisatieproces te hebben dat ook niet te lang duurde, omdat tijdens de migratie alle applicaties down waren om gegevensverlies te voorkomen. Uiteindelijk konden we aan deze criteria voldoen en konden we succesvol migreren.

Onze Atlassian-stack monitoren
We gebruiken de volgende tools om alle resources binnen onze setup te monitoren
- Datadog om alle componenten te monitoren die zijn gemaakt binnen onze stack en om logging van alle componenten te centraliseren. Je kunt meer lezen over het monitoren van je stack met Datadogin onze blogpost hier.
- NewRelic voor APM-monitoring van het Java-proces (Jira, Confluence, Bitbucket) binnen de container.
Als onze monitoring een afwijking detecteert, wordt er een alert aangemaakt binnen OpsGenie. OpsGenie zorgt ervoor dat deze waarschuwing naar het team of de oproepkracht wordt gestuurd die verantwoordelijk is voor het oplossen van het probleem. Als de oproepkracht de waarschuwing niet op tijd bevestigt, wordt de waarschuwing geëscaleerd naar het team dat verantwoordelijk is voor die specifieke waarschuwing.

Conclusie
Kortom, we zijn erg blij dat we zijn overgestapt op deze nieuwe stack. De combinatie van de voordelen van Kubernetes en de Atlassian Data Center versies van Jira, Confluence en BitBucket voelt als een grote stap in de goede richting. We hebben elke dag profijt van de verbeteringen op het gebied van self-healing, deployment en monitoring en het onderhoud is een stuk eenvoudiger geworden.
Geïnteresseerd in je eigen Atlassian Stack? Wil je ook de kracht van Kubernetes benutten? Op onze website vind je meer informatie over hoe we je kunnen helpen!

What others have also read


In de complexe wereld van moderne softwareontwikkeling worden bedrijven geconfronteerd met de uitdaging om verschillende applicaties die door verschillende teams worden ontwikkeld en beheerd, naadloos te integreren. De Service Mesh is van onschatbare waarde bij het overwinnen van deze uitdaging. In dit blogartikel verdiepen we ons in Istio Service Mesh en onderzoeken we waarom investeren in een Service Mesh zoals Istio een slimme zet is." Wat is Service Mesh? Een Service Mesh is een softwarelaag die verantwoordelijk is voor alle communicatie tussen applicaties, in deze context services genoemd. Het introduceert nieuwe functionaliteiten om de interactie tussen services te beheren, zoals monitoring, logging, tracing en verkeerscontrole. Een service mesh werkt onafhankelijk van de code van elke individuele service, waardoor het over netwerkgrenzen heen kan werken en kan samenwerken met verschillende beheersystemen. Dankzij een service mesh kunnen ontwikkelaars zich richten op het bouwen van toepassingsfuncties zonder zich zorgen te maken over de complexiteit van de onderliggende communicatie-infrastructuur. Istio Service Mesh in de praktijk Denk aan het beheren van een groot cluster waarop meerdere applicaties draaien die ontwikkeld en onderhouden worden door verschillende teams, elk met verschillende afhankelijkheden zoals ElasticSearch of Kafka. Na verloop van tijd resulteert dit in een complex ecosysteem van applicaties en containers, overzien door verschillende teams. De omgeving wordt zo ingewikkeld dat het voor beheerders steeds moeilijker wordt om het overzicht te bewaren. Dit leidt tot een reeks pertinente vragen: Hoe ziet de architectuur eruit? Welke applicaties interageren met elkaar? Hoe wordt het verkeer beheerd? Bovendien zijn er specifieke uitdagingen die voor elke afzonderlijke applicatie moeten worden aangepakt: Het afhandelen van aanmeldingsprocessen Implementeren van robuuste beveiligingsmaatregelen Netwerkverkeer beheren dat naar de applicatie wordt geleid ... Een Service Mesh, zoals Istio, biedt een oplossing voor deze uitdagingen. Istio fungeert als een proxy tussen de verschillende applicaties (services) in het cluster, waarbij elk verzoek door een component van Istio gaat. Hoe werkt Istio Service Mesh? Istio introduceert een sidecar proxy voor elke service in het microservices ecosysteem. Deze sidecar proxy beheert al het inkomende en uitgaande verkeer voor de dienst. Daarnaast voegt Istio componenten toe die het inkomende en uitgaande verkeer van het cluster afhandelen. Istio's control plane maakt het mogelijk om beleidsregels te definiëren voor verkeersbeheer, beveiliging en monitoring, die vervolgens worden toegepast op de toegevoegde componenten. Voor een beter begrip van de functionaliteit van Istio Service Mesh, zie ons blogartikel "Istio Service Mesh installeren: A Comprehensive Step-by-Step Guide" , een gedetailleerde, stapsgewijze uitleg over de installatie en het gebruik van Istio. Waarom Istio Service Mesh? Verkeersbeheer: Istio maakt gedetailleerd verkeersbeheer mogelijk, waardoor ontwikkelaars eenvoudig verkeer tussen verschillende versies van hun services kunnen routeren, verdelen en controleren. Beveiliging: Istio biedt een robuuste beveiligingslaag met functies zoals verkeersversleuteling met behulp van eigen certificaten, Role-Based Access Control (RBAC) en mogelijkheden voor het implementeren van authenticatie- en autorisatiebeleid. Waarneembaarheid: Door middel van ingebouwde instrumentatie biedt Istio diepgaande observeerbaarheid met tools voor monitoring, logging en gedistribueerde tracering. Hierdoor kunnen IT-teams de prestaties van services analyseren en snel problemen opsporen. Vereenvoudigde communicatie: Istio neemt de complexiteit van servicecommunicatie weg van applicatieontwikkelaars, zodat zij zich kunnen richten op het bouwen van applicatiefuncties. Is Istio geschikt voor uw opstelling? Hoewel de voordelen duidelijk zijn, is het essentieel om te overwegen of de extra complexiteit van Istio past bij jouw specifieke opstelling. Ten eerste is er een sidecar container nodig voor elke ingezette service, wat kan leiden tot ongewenste geheugen- en CPU overhead. Daarnaast kan het zijn dat je team niet beschikt over de specialistische kennis die nodig is voor Istio. Als je overweegt om Istio Service Mesh te gaan gebruiken, vraag dan begeleiding aan specialisten met expertise. Vraag onze experts gerust om hulp. Meer informatie over Istio Istio Service Mesh is een technologische game-changer voor IT-professionals die streven naar geavanceerde controle, beveiliging en observeerbaarheid in hun microservices-architectuur. Istio vereenvoudigt en beveiligt de communicatie tussen services, waardoor IT-teams zich kunnen richten op het bouwen van betrouwbare en schaalbare applicaties. Snel antwoord nodig op al uw vragen over Istio Service Mesh? Neem contact op met onze experts
Lees verder

Bent u dit jaar niet op KubeCon geweest? Lees dan mee voor onze hoogtepunten van de KubeCon / CloudNativeCon-conferentie van dit jaar door het Cloud Native-team van ACA Group! Wat is KubeCon / CloudNativeCon? KubeCon (Kubernetes Conference) / CloudNativeCon , jaarlijks georganiseerd op EMAE door de Cloud Native Computing Foundation (CNCF), is een vlaggenschipconferentie die adopters en technologen van toonaangevende open source en cloud native gemeenschappen op één locatie samenbrengt. Dit jaar kwamen ongeveer 5.000 fysieke en 10.000 virtuele deelnemers opdagen voor de conferentie. CNCF is de open source, leverancier-neutrale hub van cloud native computing, die projecten zoals Kubernetes en Prometheus host om cloud native universeel en duurzaam te maken. Er waren meer dan 300 sessies van partners, industrieleiders, gebruikers en leveranciers over onderwerpen als CI/CD, GitOps, Kubernetes, machine learning, observeerbaarheid, netwerken, prestaties, service mesh en beveiliging. Het is duidelijk dat er altijd iets interessants te horen is op KubeCon, ongeacht je interessegebied of expertiseniveau! Het is duidelijk dat het Cloud Native ecosysteem is uitgegroeid tot een volwassen, trendsettende en revolutionaire game-changer in de industrie. Alles staat in het teken van de Kubernetes-trend en een enorme hoeveelheid organisaties die cloud native producten ondersteunen, gebruiken en hun bedrijf hebben laten groeien door ze te bouwen of te gebruiken in bedrijfskritische oplossingen. De belangrijkste thema's van 2022 Wat ons opviel tijdens KubeCon dit jaar waren de volgende hoofdthema's: De eerste was toenemende volwassenheid en stabilisatie van Kubernetes en bijbehorende producten voor monitoring, CI/CD, GitOps, operators, costing en service meshes, plus bug fixing en kleine verbeteringen. De tweede is een meer uitgebreide focus op beveiliging . Het veiliger maken van pods, het voorkomen van pod trampoline breakouts, end-to-end encryptie en het maken van volledige analyses van bedreigingen voor een complete k8s bedrijfsinfrastructuur. De derde is duurzaamheid en een groeiend bewustzijn dat systemen waarop k8s en de apps erop draaien veel energie verbruiken terwijl 60 tot 80% van de CPU ongebruikt blijft. Zelfs talen kunnen energie(on)efficiënt zijn. Java is een van de meest energie-efficiënte talen, terwijl Python dat blijkbaar veel minder is door de aard van de interpreter/compiler. Bedrijven moeten allemaal plannen maken en werken aan het verminderen van de energievoetafdruk in zowel applicaties als infrastructuur. Autoscaling zal hierbij een belangrijke rol spelen. Hoogtepunten van de sessies Duurzaamheid Datacenters verbruiken wereldwijd 8% van alle opgewekte elektriciteit. We moeten dus nadenken over het effectieve gebruik van onze infrastructuur en inactieve tijd vermijden (gemiddeld is het CPU-gebruik slechts tussen 20 en 40%) als servers draaien, laat ze dan werken met zoveel mogelijk werklasten resources afsluiten wanneer ze niet nodig zijn door het toepassen van autoscaling benaderingen de coderingstechnologie die gebruikt wordt in je software, sommige programmeertalen gebruiken minder CPU. CICD / GitOps GitOps automatiseert infrastructuur updates met behulp van een Git workflow met continue integratie (CI) en continue levering (CI/CD). Wanneer nieuwe code wordt samengevoegd, voert de CI/CD pijplijn de verandering door in de omgeving. Flux is hier een goed voorbeeld van. Flux biedt GitOps voor zowel apps als infrastructuur. Het ondersteunt GitRepository, HelmRepository en Bucket CRD als de enige bron van waarheid. Met A/B- of Canary-implementaties is het eenvoudig om nieuwe functies te implementeren zonder dat dit gevolgen heeft voor alle gebruikers. Als de implementatie mislukt, kan deze eenvoudig worden teruggedraaid. Bekijk het schema van KubeCon voor meer informatie! Kubernetes Hoewel Kubernetes 1.24 een paar weken voor de start van het evenement werd uitgebracht, waren er niet veel gesprekken gericht op de kern van Kubernetes. De meeste gesprekken waren gericht op het uitbreiden van Kubernetes (met behulp van API's, controllers, operators, ...) of best practices rond beveiliging, CI/CD, monitoring ... voor wat er ook draait binnen het Kubernetes-cluster. Als je geïnteresseerd bent in de nieuwe functies die Kubernetes 1.24 te bieden heeft, kun je de officiële website bekijken . Waarneembaarheid Inzicht krijgen in hoe je applicatie draait in je cluster is cruciaal, maar niet altijd even praktisch. Dit is waar eBPF om de hoek komt kijken, dat wordt gebruikt door tools zoals Pixie om gegevens te verzamelen zonder codewijzigingen. Bekijk het schema van KubeCon voor meer informatie! FinOps Nu steeds meer mensen Kubernetes gebruiken, zijn er veel workloads gemigreerd. Al deze containers hebben een voetafdruk. Geheugen, CPU, opslag, ... moeten worden toegewezen, en ze hebben allemaal een kostprijs. Kostenbeheer was een terugkerend onderwerp tijdens de gesprekken. Het gebruik van autoscaling (capaciteit toevoegen maar ook verwijderen) om de benodigde resources aan te passen en het identificeren van ongebruikte resources maken deel uit van deze nieuwe beweging. Nieuwe diensten zoals 'kubecost' worden steeds populairder. Prestaties Een van de meest voorkomende problemen in een cluster is niet genoeg ruimte of resources hebben. Met behulp van een Vertical Pod Autoscaler (VPA) kan dit tot het verleden behoren. Een VPA analyseert en slaat geheugen- en CPU-metriek/gegevens op om zich automatisch aan te passen aan de juiste CPU- en geheugenlimieten. De voordelen van deze aanpak laten je geld besparen, verspilling voorkomen, de onderliggende hardware optimaal dimensioneren, resources op worker nodes afstemmen en de plaatsing van pods in een Kubernetes cluster optimaliseren. Bekijk het schema van KubeCon voor meer informatie! Servicemesh We weten allemaal dat het heel belangrijk is om te weten welke applicatie data deelt met andere applicaties in je cluster. Service mesh biedt verkeerscontrole binnen uw cluster(s). Je kunt elk verzoek dat wordt verzonden of ontvangen van een applicatie naar andere applicaties blokkeren of toestaan. Het biedt ook Metrics, Specs, Split, ... informatie om de gegevensstroom te begrijpen. In de lezing Service Mesh op schaal: Hoe Xbox Cloud Gaming 22k Pods beveiligt met Linkerd , legt Chris uit waarom ze voor Linkerd hebben gekozen en wat de voordelen zijn van een service mesh. Bekijk het schema van KubeCon voor meer informatie! Beveiliging Trampoline pods, klinkt leuk, toch? Tijdens een lezing van twee beveiligingsonderzoekers van Palo Alto Networks leerden we dat ze niet zo leuk zijn. Kort gezegd zijn dit pods die gebruikt kunnen worden om cluster admin privileges te krijgen. Om meer te leren over het concept en hoe ermee om te gaan, raden we je aan om de slides op de KubeCon schedule pagina te bekijken! Lachlan Evenson van Microsoft gaf een duidelijke uitleg over Pod Security in zijn The Hitchhiker's Guide to Pod Security talk. Pod Security is een ingebouwde toelatingscontroleur die Pod-specificaties evalueert aan de hand van een vooraf gedefinieerde set Pod Security-standaarden en bepaalt of de pod moet worden toegelaten of geweigerd. - Lachlan Evenson , Programmamanager bij Microsoft . Pod Security vervangt PodSecurityPolicy vanaf Kubernetes 1.23. Dus als je PodSecurityPolicy gebruikt, is dit misschien een goed moment om Pod Security en het migratiepad verder te onderzoeken. In versie 1.25 wordt de ondersteuning voor PodSecurityPolicy verwijderd. Als je PodSecurityPolicy of Pod Security niet gebruikt, is het zeker tijd om het verder te onderzoeken! Een ander terugkerend thema van deze KubeCon 2022 waren operators. Operators maken het mogelijk om de Kubernetes API uit te breiden met operationele kennis. Dit wordt bereikt door Kubernetes-controllers te combineren met bekeken objecten die de gewenste toestand beschrijven. Ze introduceren Custom Resource Definitions, custom controllers, Kubernetes of cloud resources en logging en metrics, wat het leven makkelijker maakt voor zowel Dev als Ops. Tijdens een lezing van Kevin Ward van ControlPlane leerden we echter dat er ook risico's aan verbonden zijn. Bovendien, en dat is nog belangrijker, vertelde hij ook hoe we die risico's kunnen identificeren met tools zoals BadRobot en een operator thread matrix . Bekijk de KubeCon roosterpagina voor meer informatie! Planning Telemetry Aware Scheduling helpt u om uw workloads te plannen op basis van de statistieken van uw worker nodes. U kunt bijvoorbeeld een regel instellen om geen nieuwe werklasten te plannen op worker nodes met meer dan 90% gebruikt geheugen. Het cluster zal hier rekening mee houden bij het plannen van een pod. Een andere leuke functie van deze tool is dat het ook pods opnieuw kan inplannen om ervoor te zorgen dat uw regels in lijn blijven. Bekijk de KubeCon planningspagina voor meer informatie! Cluster autoscaling Een geweldige manier voor stateless workloads om kosteneffectief te schalen is het gebruik van AWS EC2 Spot, wat reserve VM-capaciteit is die met korting beschikbaar is. Om Spot-instanties effectief te gebruiken in een K8S cluster, moet je aws-node-termination-handler gebruiken. Op deze manier kun je je werklasten van een worker node verplaatsen wanneer Spot besluit deze terug te vorderen. Een ander goed hulpmiddel is Karpenter , een hulpmiddel om Spot-instanties precies op tijd te leveren voor je cluster. Met deze twee tools kun je je stateless workloads kosteneffectief hosten! Bekijk de KubeCon schedule pagina voor meer informatie! Event-gedreven autoscaling Het gebruik van de Horizontal Pod Autoscaler (HPA) is een geweldige manier om pods te schalen op basis van statistieken zoals CPU-gebruik, geheugengebruik en meer. In plaats van te schalen op basis van statistieken, kan Kubernetes Event Driven Autoscaling (KEDA) schalen op basis van gebeurtenissen (Apache Kafka, RabbitMQ, AWS SQS, ...) en het kan zelfs schalen tot 0 in tegenstelling tot HPA. Bekijk het schema van KubeCon voor meer informatie! Wrap-up We hebben dit jaar genoten van de conferentie. We vertrokken met een geïnspireerd gevoel dat we ongetwijfeld zullen vertalen naar interne projecten, nieuwe klantprojecten zullen aanvragen en waar van toepassing zullen bespreken met bestaande klanten. Niet alleen dat, maar we zullen ook onze collega's informeren en een afterglow sessie organiseren voor de geïnteresseerden thuis in België. Als je ons blogartikel leuk vond, stuur ons dan gerust een berichtje. We zijn altijd blij als de inhoud die we publiceren ook voor jou waardevol of interessant is. Als je denkt dat we jou of je bedrijf kunnen helpen bij de adoptie van Cloud Native, stuur me dan een berichtje op peter.jans@aca-it.be. Als laatste willen we Mona bedanken voor de logistiek, Stijn en Ronny voor deze kans en de rest van het team dat achterbleef om de systemen van onze gewaardeerde klanten in de gaten te houden.
Lees verder

Op 7 en 8 december 2023 namen verschillende ACA-leden deel aan CloudBrew 2023 , een inspirerende tweedaagse conferentie over Microsoft Azure. In het decor van de voormalige Lamot brouwerij kregen bezoekers de kans om zich te verdiepen in de nieuwste cloudontwikkelingen en hun netwerk uit te breiden. Met verschillende tracks en boeiende sprekers bood CloudBrew een schat aan informatie. De intieme setting stelde deelnemers in staat om direct contact te leggen met zowel lokale als internationale experts. In dit artikel lichten we graag enkele van de meest inspirerende lezingen van deze tweedaagse cloudbijeenkomst uit: Azure-architectuur: Verstandig kiezen Rik Hepworth , Chief Consulting Officer bij Black Marble en Microsoft Azure MVP/RD, gebruikte een klantvoorbeeld waarbij .NET ontwikkelaars verantwoordelijk waren voor het beheer van de Azure infrastructuur. Hij betrok het publiek in een interactieve discussie om de beste technologieën te kiezen. Hij benadrukte verder het belang van een gebalanceerde aanpak, waarbij nieuwe kennis wordt gecombineerd met bestaande oplossingen voor effectief beheer en ontwikkeling van de architectuur. Van gesloten platform naar landingszone met Azure Policy David de Hoop , Special Agent bij Team Rockstars IT, vertelde over de Azure Enterprise Scale Architecture, een template van Microsoft die bedrijven ondersteunt bij het opzetten van een schaalbare, veilige en beheersbare cloud-infrastructuur. De template biedt richtlijnen voor het ontwerpen van een cloudinfrastructuur die kan worden aangepast aan de behoeften van een bedrijf. Een cruciaal aspect van deze architectuur is de landingszone, een omgeving die zich houdt aan ontwerpprincipes en alle applicatieportfolio's ondersteunt. Het maakt gebruik van abonnementen om applicatie- en platformbronnen te isoleren en te schalen. Azure Policy biedt een reeks richtlijnen om Azure-infrastructuur open te stellen voor een onderneming zonder in te boeten aan beveiliging of beheer. Dit geeft engineers meer vrijheid in hun Azure-omgeving, terwijl beveiligingsfuncties automatisch worden afgedwongen op tenantniveau en zelfs applicatiespecifieke instellingen. Dit zorgt voor een evenwichtige aanpak om zowel flexibiliteit als beveiliging te garanderen, zonder dat er aparte tools of technologieën nodig zijn. De grootste Azure fouten van België waarvan ik wil dat jij ervan leert! Tijdens deze sessie presenteerde Toon Vanhoutte , Azure Solution Architect en Microsoft Azure MVP, de meest voorkomende fouten en menselijke vergissingen, gebaseerd op de ervaringen van meer dan 100 Azure engineers. Aan de hand van waardevolle praktijkvoorbeelden illustreerde hij niet alleen de fouten zelf, maar bood hij ook duidelijke oplossingen en preventieve maatregelen om soortgelijke incidenten in de toekomst te voorkomen. Zijn waardevolle inzichten hielpen zowel beginnende als ervaren Azure engineers hun kennis aan te scherpen en hun implementaties te optimaliseren. Kritieke ICS SCADA-infrastructuur beschermen met Microsoft Defender Deze presentatie van Microsoft MVP/RD, Maarten Goet , richtte zich op het gebruik van Microsoft Defender voor ICS SCADA infrastructuur in de energiesector. De spreker deelde inzichten over het belang van cyberbeveiliging in deze kritieke sector en illustreerde dit met een demo waarin de kwetsbaarheden van dergelijke systemen werden gedemonstreerd. Hij benadrukte de noodzaak van proactieve beveiligingsmaatregelen en benadrukte Microsoft Defender als een krachtige tool voor het beschermen van ICS SCADA-systemen. Azure Digital Twin gebruiken in productie Steven De Lausnay , Specialist Lead Data Architecture en IoT Architect, introduceerde Azure Digital Twin als een geavanceerde technologie om digitale replica's te maken van fysieke omgevingen. Door inzicht te geven in het proces achter Azure Digital Twin, liet hij zien hoe organisaties in productieomgevingen gebruik kunnen maken van deze technologie. Hij benadrukte de waarde van Azure Digital Twin voor het modelleren, monitoren en optimaliseren van complexe systemen. Deze technologie kan een cruciale rol spelen bij het verbeteren van de operationele efficiëntie en het nemen van datagestuurde beslissingen in verschillende industriële toepassingen. Azure Platform aanbevelingen omzetten in goud Magnus Mårtensson , CEO van Loftysoft en Microsoft Azure MVP/RD, had de eer om CloudBrew 2023 af te sluiten met een boeiende samenvatting van de hoogtepunten. Met zijn onderhoudende presentatie bood hij waardevolle reflectie op de verschillende thema's die tijdens het evenement waren besproken. Het was een perfecte afsluiting van een zeer succesvolle conferentie en gaf iedere deelnemer zin om de opgedane inzichten direct in de praktijk te brengen. We kijken nu al uit naar CloudBrew 2024! 🚀
Lees verderWant to dive deeper into this topic?
Get in touch with our experts today. They are happy to help!

Want to dive deeper into this topic?
Get in touch with our experts today. They are happy to help!

Want to dive deeper into this topic?
Get in touch with our experts today. They are happy to help!

Want to dive deeper into this topic?
Get in touch with our experts today. They are happy to help!


