Many web applications display various content in the browser. Many of these are only available to logged users or those with a specific role. Often API is secured by JSESSIONID or JWT cookie. While in the first case there is no problem with using the browser, in the case of JWT there is one problem. What is it?
We often receive information from a client that there was an error with the http 500 code on an application. The tester quickly creates a scenario to reproduce the error and another problem arises. Behind a nice frontend there are a dozen or so applications installed on different servers. The error information is undoubtedly in the log - just in which one? You can spend days trying to find the right file on the right server, or you can use a toolkit that allows you to aggregate logs.
Virtualizing your environment allows you to work with IT systems quickly and securely. However, not every application can be containerized and packaged in a Docker container - this is where KVM comes to the rescue. KVM, or Kernel-based Virtual Machine, is an environment on which it is possible to run a virtual machine. The association with VirtualBox is most accurate - the idea is exactly the same. There are, of course, more technologies allowing to create virtual environments - such as VMware or Hyper-V.
Going towards microservice architecture, you should be aware of complexity that it brings. Multiplication of replicas causes your infrastructure harder to monitor and maintain. You are simply not capable of keep an eye of each service by yourself. Additionally Kubernetes (k8s) infrastructure by itself must be monitored.
While working with Kubernetes, sooner or later you will need to call one application from the another. It’s obvious that we need a part of infrastructure which act as a Load Balancer and for the outside call we need also reverse proxy component. And this is where k8s Service and Ingress Controller come into play.