Every developer has in his arsenal many familiar tools that facilitate and accelerate his work. Convenient and reliable hosting also plays an important role in the development process, since a wrong hosting choice can not only significantly complicate the life of one programmer but also lead to a dead-end of the project.
Proper cloud hosting is much more important. Because visitors and customers will simultaneously interact with applications here, a team of DevOps engineers and developers, as well as scheduled services or triggered by some external factors... Therefore, the infrastructure of the project should have high speed and accessibility, and readiness for volatile dynamics, monitoring, diagnosis, as well as management tools in case of urgent intervention.
Kubernetes has become the most popular platform for the orchestration of containerized solutions. It makes the management of processes simple and efficient and ensures the functionality and flexibility of the infrastructure in a variety of environments. Today, it’s hard to imagine cloud hosting without managing containers, and without Kubernetes, as a de facto standard tool to manage them.
Kubernetes as a service from DigitalOcean (DOKS) - when it can be relevant.
Initially, the whole range of DO services was made for developers of software and web applications. Therefore, everything here is optimized to provide the client with a ready environment in which he can quickly get down to business.
There is a lot of detailed documentation on how to do this, lots of options, and variants of different settings, so after setting up, the developer can start working on his tasks and don’t lose time on non-developers work.
For example, you can in a few simple steps quickly create a virtual server, create a mini-hosting on it, establish the exchange and storage of files and begin to create a site or service. With the client panel, any additional service required in the process of web development can be completed if necessary and the whole process of work and storage of data is as safe as possible.
Pricing policy and features of selected product niche
Since DigitalOcean is positioning itself as a cloud provider, Kubernetes has also integrated container infrastructure management. However, taking into account the DO’s focus on a mass of small standard customers and they want to make the service price minimal (pay only if/when you use) - the settings of some functions here are templates and do not imply adjustments. This sometimes results in the platform is not able to quickly respond to the dramatically changed conditions created by a particular application and it falls. (For example, connections fall when the k8s master is overloaded, or the master himself falls down during the deployment of a huge helm chart, e.g. Prometheus/Grafana, or, due to the features of load-balancer operation with DOKS, in the fall of k8s master you lose access from the outside to all microservices. They continue to work on worker nodes, but they become completely inaccessible... None of this is observed in another cloud provider.
Leisurely nature of technical support :-)
In the cases, when there is no possibility to intervene and correct the situation, you have either to wait for 50 minutes for the health check to restart the k8s master itself or to contact technical support. The speed of DO support and response is a painful point for many users. In most cases, the client still receives an adequate response and reaction to the occurrence of problems, but even solid customers have to expect a reaction for at least 30-90 mins. Add to that the fact that the measures taken are usually corrected by correspondence. Therefore, it takes a very long time until everything works, as it should.
Fortunately, such incidents do not happen often but imagine when it happens in companies where time is a critical factor, for example, services related to ticket sales at the airport, car, or railway stations, where a delay of 1 minute, is of paramount importance. Such services will suffer huge losses, and given the regular nature of the problem, it is simply unacceptable!
The conclusion is obvious, Kubernetes as a service offered in DigitalOcean is rather specific and will not be suitable for everyone. It is focused on a certain type of its users, so it serves only their convenience, interests, and security. Therefore, it is very important before deciding to choose to DO as a platform for Kubernetes to take a very careful look at the SLA contracts and make sure that their terms are suitable for you. It is also possible to use your own deployed Kubernetes cluster on droplets without using DOKS, but then the main idea of the simplicity of using the ready-made Kubernetes as a service is already lost.
Add-on: By the way, not so long ago DigitalOcean made a new statement about SLA for Kubernetes control planes with HA support, but we have not used DOKS in production for about a year and have not tried it any more. However, for those who still do, it can be interesting. I leave you the link here.