Time is valuable and so is your (website) data. So far so good.
But with the transition to server-side tracking a couple of new challenges arise for organisations. In particular from a technological point of view, new considerations have to be made.
I am Alex “Señor Exl” Höller, Tech Enthusiast and DevOps Engineer at JENTIS GmbH. In my field of work it’s a top priority to stay on top of the huge mass of technological developments happening at all times and also, to use this knowledge to keep our infrastructure as optimized, secure and up to date as possible.
That’s why in this blogpost I will talk about how JENTIS utilizes Kubernetes to provide you with a low-maintenance, high-availability and secure tracking solution. This way, our customers can really focus on their data collection and leave everything “behind the scene” to us.
At JENTIS we realized very early that in order to provide our customers with the best tracking at all times and under heavy server loads we need to use technologies that stand for high availability and scalability. The decision was made quickly that Kubernetes is the way to go.
Kubernetes is a Container Orchestration System that utilizes container technologies (i.e. Docker) for creating a micro-service infrastructure with a low maintenance level and high scalability.
The characteristics of Kubernetes enables us to provide every customer with a quick setup and low maintenance but reliable infrastructure which is 100% Black-Friday proof.
How does the basic setup look?
Every customer is set up in our infrastructure as its own namespace. This makes the data secure and ensures that every customer has only access to its own data. Front- and back-end services are realized as micro-services in pods. Within Kubernetes, pods have the advantage of, if configured correctly, being able to “self-heal” – so whenever one pod breaks, a new one automatically starts to take over server load.
We use Liveness-, Readiness- and Startup-Probes to make sure every pod is scanned periodically and renewed if it is not in a working state anymore. This happens fully autonomously. Of course we don’t leave your setup unattended to fight on its own. We use the Prometheus/Grafana Stack to monitor all of our systems at all times to make sure every precious byte of data is handled correctly and gets to where it belongs.
Continuous integration is key
As we continuously adapt and update our services to meet current and evolving needs as well as provide new features a continuous update cycle is key. Version updates, fixes and features run through a rigorous testing process before being deployed to customers. Our developers can utilize Kubernetes to quickly spin up test setups either locally or in testing environments to make sure every micro-service is tested under “simulated live conditions” and thus ready to be rolled out.
Kubernetes rolling updates enable us to deploy new features, versions or fixes to live customers without any impact on collected data. As long as the pod with the new version is not running, Kubernetes keeps the old pod alive to ensure a working version of it is available at all times.
High traffic – low effort with Kubernetes autoscaling
In times of an unprecedented pandemic and rigorous lockdowns online shops have become increasingly important. As a consequence, traffic numbers have gotten higher over the last year with incredible spikes. To make sure our system can handle these varying amounts of traffic as well and efficiently as possible we utilize Kubernetes autoscaling.
This technology in combination with custom metrics provided by our monitoring data enables our infrastructure to adapt to every change in traffic. Thus, from a technological perspective, it makes no difference if 10 or 10000 users are browsing at the same time. Kubernetes will scale up or down as needed without any human interaction. With this method we make sure every customer has the resources needed to provide an optimal service at all times.
Data security at all levels
Not only is it important that your data is available at all times, another important factor is that it is secure at all times. As said earlier, we make sure nobody besides you has access to your data. We make sure every customer is run in its own namespace with network policies in place which limit the access to only the necessary. In addition to that and to bring security even to a higher level we check our clusters against high level international security frameworks to make sure every piece of configuration is on par with the highest standards.
JENTIS is built with the most advanced technologies currently on the market. As a result, we achieve the necessary scalability, performance and reliability 24/7/52. For two years in a row now, we managed to not lose a single point of data during the busiest week of the year – Black-week. (Additionally, we know that most solution providers cannot say that ? )
This way, we ensure that you can focus on your data collection efforts and fuel your operations with the required data, instead of worrying and investing resources in keeping the system running and secure. Trust us, we have heard of too many cases already, where companies tried to set up some sort of server-side tracking only to find out that it is way more complex than they thought and it couldn’t even cope with higher traffic levels (which is when it counts most).
If you want to know more about Kubernetes, more information can be found here.
If you want to know more about Prometheus, more information can be found here.
If you want to know more about Grafana, more information can be found here.