Elastic, yet stable

Geplaatst door

Periode: 2017-2020
Werkgever: Freelance, Alt-J IT
Opdrachtgever: KLM
Inzet als: IT Specialist afdeling Application Integration
Project: Graylog
Skills: Graylog, Elasticsearch, MongoDB

De grootste uitdaging voor mij tot nu toe op het gebied van Elasticsearch is het neerzetten van een stabiele omgeving. Het installeren is een koud kunstje maar er voor zorgen dat de omgeving 24×7 in de lucht blijft terwijl er van alles en nog wat naartoe gestuurd wordt is een behoorlijke uitdaging.

Mijn ervaring is bovendien dat je pas leert hoe iets werkt als het stuk gaat. Na elk incident duik je weer net iets dieper in een aspect van Elastic en kom je er weer achter hoe het werkt en waar die setting eigenlijk voor dient.

Na mijn eerste ervaring met het syslog cluster op basis van Elk was Graylog een hele andere orde van grootte. Het grootste verschil was de hoeveelheid data en dan met name de structuur van die data. Het blijkt dus dat Elastic vooral goed performt als je voorspelbare data indexeert, een gelijk aantal velden met telkens hetzelfde data type. Als je dan vervolgens hier geen afspraken over maakt en de organisatie mag sturen wat men dunkt wordt het snel lastig om de stabiliteit te waarborden. En het ook handig om vooraf af te spreken hoeveel data opgestuurd mag worden.

Mijn eerste taak was om de omgeving die er stond stabieler te maken. Als redelijk onervaren Elasticsearch gebruiker ga je dan op zoek naar guides van collega’s die meer ervaring hebben. En dat bleek nogal tegen te vallen, ook omdat Elastic zoveel instel mogelijkheden heeft dat er niet een beproefd recept is voor elke specifieke omgeving. In de laatste versies hebben de makers geprobeerd om deze instellingen zo generiek mogelijk te maken maar het blijft puzzelen.

Na het stabiliseren van de omgeving was de volgende uitdaging de constante groei. Per dag kon de inflow zomaar verdubbelen, zonder enige aankondiging. Dan moet je snel uit kunnen breiden en dat was niet altijd mogelijk vanwege budget of doorlooptijd van aanvragen. En dan moet je toch weer de limieten van het product gaan opzoeken om aan de vraag te kunnen voldoen. Gelukkig hebben we op tijd voldoende resources gekregen en konden zonder moeite 10 Tb aan logging aan met capaciteit voor 30 Tb. Het cluster bestond uit 63 nodes waarvan 54 data nodes.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd.