Uw organisatie groeit gestaag, het aantal servers onder beheer neemt toe en er worden steeds hogere en veranderende eisen gesteld aan de applicatieomgeving. Het gevolg hiervan is dat het beheer steeds uitdagender en tijdrovender wordt. Om in te kunnen blijven spelen op behoeften vanuit de business is een toekomstgerichte applicatieomgeving noodzakelijk. In dit artikel geven we u een aantal praktische tips hoe u dit het beste kunt aanpakken.
Aan welke eisen moet uw applicatieomgeving voldoen?
Eerst terug naar de tekentafel. Aan welke eisen moet een applicatieomgeving op dit moment eigenlijk voldoen? En zijn dat voor iedere klant dezelfde eisen of zijn daar varianten in te ontdekken? Welke risico’s ziet u? Denk aan thema’s zoals beschikbaarheid, schaalbaarheid, performance, veiligheid, back-up en disaster recovery naast technische vereisten. Wanneer een SaaS-dienst wordt aangeboden dan heeft u hoogstwaarschijnlijk met een beperkte set aan vereisten met verschillende supportlevels en garanties te maken. Wanneer maatwerksoftware wordt aangeboden dan zijn er legio varianten van een applicatieomgeving mogelijk. Een pakket op een gedeelde server, een eigen server of een eigen redundant uitgevoerde applicatieomgeving bijvoorbeeld.
Begin met een high-level design
Wanneer de wensen en eisen bekend zijn, kan uw applicatieomgeving worden samengesteld. Een goede aanpak is om te beginnen met een high-level design van de applicatieomgeving. In dit diagram worden alle componenten van de applicatieomgeving zichtbaar gemaakt. Denk aan loadbalancers, web- en databaseservers. Maar ook aan het publieke/interne netwerk, availability zones (datacenters) en (auto) scaling groups. Een best practice is het ontwikkelen van een fouttolerante omgeving door rekening te houden met falende componenten, zowel op infrastructuur- als softwareniveau. Ook het scheiden van rollen is een goed gebruik. Op het internet zijn tal van bronnen en referentiearchitecturen vindbaar die als inspiratie kunnen dienen voor een goed ontworpen applicatieomgeving, zoals opnames van technische talks tijdens technologieconferenties. Tools als Microsoft Visio of Draw.io kunnen helpen bij het visualiseren van uw omgeving.
Cloudinfrastructuur
De applicatieomgeving wordt geplaatst op een cloudinfrastuctuur die het beste aansluit op de wensen en eisen. Een voorbeeld van een goede cloudinfrastructuur is OpenStack van CloudVPS. De OpenStack-cloudinfrastructuur van CloudVPS heeft als belangrijkste kenmerken:
- Hoog beschikbare instances - alle componenten zijn volledig redundant uitgevoerd;
- Data drie keer opgeslagen - data wordt opgeslagen in drie verschillende racks;
- Stabiele constante performance - de cloudinfrastructuur levert voorspelbare prestaties;
- Meerdere availability zones in Amsterdam - u kunt de applicatieomgeving strategisch spreiden over drie datacenters en technologieën inzetten die gebruikmaken van een op quorum gebaseerd consensus protocol zoals Paxos en Raft;
- Zeer lage netwerk-latency - een hoogwaardig netwerk met uitstekende prestaties;
- Datatraffic inbegrepen - dus voorspelbare kosten;
- ISO 27001 en NEN 7510 gecertificeerd - U kunt verder bouwen op onze certificeringen.
Toekomstgerichte applicatieomgeving
Om de applicatieomgeving toekomstgericht te maken, is het van belang dat het beheer van de applicatieomgeving eenvoudig is, dat u weet wat er speelt binnen de omgeving en de vereisten en (configuratiemanagement) processen zijn geborgd. Door het inzetten van automatisering en het verzamelen van de juiste inzichten kunt u hierin voorzien. Met tooling zoals Terraform van HashiCorp en Ansible van Red Hat kunt u de applicatieomgeving automatiseren. Een zakmes ontwikkelen waarmee u de applicatieomgeving eenvoudig kunt aansturen. Met een TIG-stack (Telegraf, InfluxDB, Grafana) kunt u dashboards inrichten met realtime (bedrijfskritische) informatie over de applicatieomgeving. Dergelijke dashboards zijn een onderdeel van een betere manier van monitoring met rijkere inzichten. Exact weten wat er speelt. Ook wel observability genoemd. Met GitLab beschikt u over versiebeheer, CI/CD en kunt u een DevOps lifecycle voor efficiënte applicatie-releases inrichten.
Een toekomstgerichte applicatieomgeving is dus dynamisch, stuurt u continu en eenvoudig bij op basis van vergaarde inzichten en is daardoor in staat mee te groeien met de behoeften vanuit de business.
Heeft u behoefte aan een toekomstgerichte applicatieomgeving, of wilt u hier eens met ons over van gedachten wisselen? Neem dan contact met op ons.