This article is more than 1 year old
Enterprise databases deployed in Kubernetes? Proceed with caution, warns seasoned analyst
Deploying the ultimate stateful code in a stateless environment is a 'tricky business' IDC guru opines
A leading analyst has warned big, non-tech companies against database deployments in the Kubernetes, dubbing the approach as “emerging technology” for enterprises.
While developers might want the flexibility and agility the stateless container orchestrator promised, Carl Olofson, research vice president, data management software, IDC urged caution with enterprise deployments.
Speaking at the Postgres Vision 2021 conference this week, the seasoned database expert said: “You really need to make sure you're using functions that are well established. You want to be conservative. Kubernetes is open source, so the updates and the testing and all that, follows a rather slow formal process from the time that submission comes to the timer that goes out. Kubernetes is still rapidly evolving. Like any technology: if you're trying to commit your enterprise to functions that run on an emerging technology, then you are accepting some risks.”
Kubernetes is a container-orchestration system originating from Google but now maintained by the Cloud Native Computing Foundation. Containers are stateless and require additional services to provide and persist data as needed.
This was part of the problem in deploying databases using Kubernetes and relates to the challenge in trying to deploy such information in microservices application architectures, Olofson explained.
“The concept of microservices is based on the idea that the code is stateless, but database code isn’t stateless: it has constructed the database which is the ultimate stateful environment,” Olofson said.
"It's a tricky business. Most database technologies that are claimed to be container-based actually run in containers, the way they run them servers. In other words, they're not micro service based, although they do run containers. The reason they do that is for portability. Deploying a microservices-based database is a big technical project: it’s hard to do
The analyst’s note of caution comes as a herd of database vendors, both from the SQL and NoSQL families, stampede towards deployments in containers, many using Kubernetes.
- Containers make life easier for the software vendors you buy from, and that's why they'll win
- VMs were a fad fit for the Great Recession. Containers’ time has finally come
- Siloscape malware targets Windows containers, breaks through to the underlying Kubernetes cluster
- Azure anywhere: Arc adds App Service, Function apps, Event Grid and more to on-premises Kubernetes
Also at the Postgres Vision 2021 conference, Ed Boyajian, CEO of PostgreSQL commercial contributor and support firm EDB, boasted of the latest deployments in Kubernetes.
“We are using the latest Kubernetes capabilities to create a truly cloud-native Postgres, operator, that doesn't need help or [additional] tools to achieve high availability in every cloud, public or private,” he said.
"[The] resulting Kubernetes operator makes Postgres, easier to configure and deploy, and it automates many of the tasks that historically required the involvement of a DBA, such as rolling application of patches or backup and recovery cloud-native Postgres makes Postgres, much easier to use, and opens up Postgres to a whole new set of use cases, focused on DevOps and microservices."
Last year MariaDB, which supports the MySQL cousin, launched a Kubernetes operator for container services to allow deployment of the same database, whether in AWS, Azure, GCP or on-premises.
Meanwhile, in the NoSQL world, DataStax, Neo4j and MongoDB all have Kubernetes operators. ®