Creating a Resilient PostgreSql Cluster with Kubegres

Alex Arica
2 min readApr 23, 2021

Kubegres is a Kubernetes operator allowing to deploy a cluster of PostgreSql instances with data replication enabled out-of-the box.

PostgresConf is going to host a webinar about how to create a resilient PostgreSql cluster with Kubegres.

You can register here.

Since Kubegres was launched, there have been a lot of questions about how it compares to the other operators specialised in managing a PostgreSql cluster on Kubernetes.

Kubegres is minimalist in terms of codebase compared to other open-source Postgres operators. It has the minimal and yet robust required features to manage a cluster of PostgreSql on Kubernetes. The team aims keeping this project small and simple.

Among many reasons, there are 5 main ones how Kubegres differentiates itself:

  • Standard: to manage replications, failover and backup, Kubegres is 100% relying on the PostgreSql standard libraries bundled in the PostgreSql containers. It does not ship with any custom or third party libraries to manage those features.
  • Small learning curve: if you are already familiar with the standard PostgreSql libraries, you can understand and admin Kubegres easily.
  • Security: all other open source projects that were evaluated do require their own custom Docker containers which ship with custom libraries. And in order to reduce the attack surface caused by additional dependencies, Kubegres team has decided to only depend on the PostgreSql containers created and maintained by the Docker Official Images team.
  • Portable: the approach above allows Kubegres to be compatible with any containers which derive from those PostgreSql containers.
  • Pure Go: Kubegres was entirely written in Go and no additional languages were used (e.g. Python, …). And it uses the latest Kubebuilder version 3 which is maintained by the official Kubernetes API Machinery Special Interest Group (SIG).

For more details, if you would like to install Kubegres, please read the page about Getting started.

And you can contribute to Kubegres, by following the instructions in the page How to contribute.

--

--

Alex Arica

Entrepreneur and application developer with over 20 years experience.