Trying To Migrate To Kubernetes Fully
For many companies, Kubernetes is a way to unify work with servers on one platform, hence the desire to manage everything uniformly. It’s a wobbly path of temptation, and production will quickly put everything in its place and show that it was not taken into account in the transfer.
For example, migrating a database to Kubernetes is usually possible but much less necessary. And if you already set out to do this, keep in mind that due to the mobility of Kubernetes, you need a DBMS cluster, in which switching from Master to Slave should occur automatically. In addition, there will be networked storage under the database in Kubernetes, which is not the same as local storage: you need to consider that delays will increase.
If there are components in your system that you do not understand how their behavior will change after moving to Kubernetes, give yourself time to assess the consequences.
Not Preparing The Team For Kubernetes Deployment
Working with Kubernetes highlights the lack of expertise. Suppose the administrators who install and support Kubernetes do not understand the concepts of the technology. In that case, the output is not a Cloud-Native system, but an architecture with manual operations, without adaptation to the tasks of a particular company, without using the actual capabilities of the cluster.
If the team of sysadmins is not familiar with Kubernetes, it is unlikely that it will be possible to work in production the first time. You will have to teach, send to courses, give time for experiments, and prepare for the fact that there will be surprises in production at first. If you hire specialists, you need to check whether they can deploy Kubernetes on their own and administer its operation: many can only press a button on platforms like Rancher. With such experience, it will also not be possible to administer the cluster on their own.
But if you find experts to manage the application infrastructure in Kubernetes, you will need fewer of them than the admins needed before moving the application to containers. Another plus is that Kubernetes as technology is highly standardized, so any new employees with the necessary experience who come to a Kubernetes project can quickly get involved in tasks. Instead of Kubernetes, a company that uses the self-written solutions to automate development, everything is more complicated.