Kubernetes is an open-source container cluster manager.
N/A
Liquibase
Score 8.6 out of 10
Enterprise companies (1,001+ employees)
Liquibase is a database change management tool that extends DevOps best practices to the database, helping teams release software faster and safer by bringing the database change process into existing CI/CD automation. According to the 2021 Accelerate State of DevOps Report, elite performers are 3.4 times more likely to incorporate database change management into their process than low performers. Liquibase value proposition: Liquibase speeds up the development…
K8s should be avoided - If your application works well without being converted into microservices-based architecture & fits correctly in a VM, needs less scaling, have a fixed traffic pattern then it is better to keep away from Kubernetes. Otherwise, the operational challenges & technical expertise will add a lot to the OPEX. Also, if you're the one who thinks that containers consume fewer resources as compared to VMs then this is not true. As soon as you convert your application to a microservice-based architecture, a lot of components will add up, shooting your resource consumption even higher than VMs so, please beware. Kubernetes is a good choice - When the application needs quick scaling, is already in microservice-based architecture, has no fixed traffic pattern, most of the employees already have desired skills.
Based on my experience so far on using Liquibase in my current project, I have seen that Liquibase changelogs are version control where multiple team members and developers can work together on database and deployed automatically via CI/CD Pipeline integration using github actions and it applies same changelogs to all enviroments to remain in sync and avoid any enviroment drift. Also as Liquibase stores changelog audits in DATABASECHANGELOG table it helps in tracking purposes and to easily rollback any change . Whereas in some scenarios I feel that Liquibase have some drawbacks where if complex transformation between tables is not optimized for bulk data operations which eventually degrades database performance.
Liquibase tracks changes in a metadata table contained directly in the target database, making easy administration for the DBA.
Liquibase handles many validation tests out of the box, making it easy to choose which ones you want to include, with options for writing your own if you choose. This makes it robust and flexible in terms of validation before deployment.
Liquibase provides easy integration into deployment pipelines for CI/CD. We use it with GitHub for source control and Circle CI for validation and deployment pipelines.
Local development, Kubernetes does tend to be a bit complicated and unnecessary in environments where all development is done locally.
The need for add-ons, Helm is almost required when running Kubernetes. This brings a whole new tool to manage and learn before a developer can really start to use Kubernetes effectively.
Finicy configmap schemes. Kubernetes configmaps often have environment breaking hangups. The fail safes surrounding configmaps are sadly lacking.
I would like Liquibase to explore all errors in the changelog files compared to one at a time. We spent a lot of time troubleshooting one error at a time versus having a batch log of errors in each file.
Understanding where to get support on things. I spent a lot of time researching externally to learn what the best practices were. Although I found some of the youtube videos helpful, I would like a little more of a technical support. This may be a feature with the paid tier, however, we leveraged open source.
Seeing more examples of how others use Liquibase and their usecases will be helpful. That way we can learn from each other which may help us improve on our own deployments.
The Kubernetes is going to be highly likely renewed as the technologies that will be placed on top of it are long term as of planning. There shouldn't be any last minute changes in the adoption and I do not anticipate sudden change of the core underlying technology. It is just that the slow process of technology adoption that makes it hard to switch to something else.
We are and will continue using Liquibase and it has become an integral part of our portfolio offering, any new product is by default adopting Liquibase stack.
It is an eminently usable platform. However, its popularity is overshadowed by its complexity. To properly leverage the capabilities and possibilities of Kubernetes as a platform, you need to have excellent understanding of your use case, even better understanding of whether you even need Kubernetes, and if yes - be ready to invest in good engineering support for the platform itself
Liquibase has been responsive and even is letting our group test some new products they are developing and even made code changes to their production system because of a couple bugs we have reported. Liquibase licensing has also been easy and simple. I have nothing bad to say about any of the Liquibase staff I have talked to. They also hold free information webinars for new content that helps spread adoption and moving the product forward.
Most of the required features for any orchestration tool or framework, which is provided by Kubernetes. After understanding all modules and features of the K8S, it is the best fit for us as compared with others out there.
There is no real competitor when it comes to what Liquibase does - at least not at the time we considered it three years ago. It was an easy choice in this regard, but we could have said no to it if it made our workload more difficult. But our proof of concept showed there were easy wins to be had by implementing its software.