A New Way to Provision Databases on Kubernetes
Tags: kubernetes, database, opensource, cloudnative
Published: 2024-03-13 07:59:13

Need to provide database self-service to internal teams? Can't spare the resources to build and maintain your own private DBaaS solution? Sick of cloud DBaaS providers locking you in? 

[Percona Everest](https://percona.community/projects/everest/) is a cloud-native database platform to deploy and manage enterprise-grade PostgreSQL, MongoDB and MySQL database clusters.
 
With Percona Everest, you can:  

- Enable DBA teams to regain control over data and database configuration
- Empower developers to deploy code faster and self-service provision highly performant, production-ready database clusters
- Free your entire organization from vendor lock-in and restrictive subscriptions

## Benefits of Percona Everest

Truly **open source**, Percona Everest offers the benefits of automated database provisioning and management without the need to build or maintain an in-house database management platform.

- No data lock-in or restrictive contracts 
- Reduced total cost of ownership (TCO)
- Complete data sovereignty to meet any compliance requirement 
- Fully customizable database configurations
- Right-sized database deployments 
- Frictionless developer self-service 
- Backing of highly skilled database management experts 

## Key features of Percona Everest 

**Database management via a single pane of glass**
Percona Everest enables you to manage complex database environments through a single pane of glass or API. 

- Create, configure, deploy, update, and upgrade with zero downtime
- Backup, restore, restart, suspend/resume, or delete database clusters

![Percona Everest - Database Management](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yti18ud15bq2kjub367d.png)

**Complete customization**
Customize load balancing settings, settings for network exposure, and resource settings like node count, instance type, CPU, memory, storage, etc. 

**Standardized database deployments** 
Create ready-to-use database clusters of enterprise-grade MySQL, PostgreSQL, and MongoDB, with the ability to customize to support a variety of topologies or deployments.

Percona Everest leverages [Percona Operators](https://www.percona.com/software/percona-operators) to deploy Cloud-Native Percona Distributions.

**Built-in observability tools**
Benefit from built-in open source infrastructure monitoring to keep control of (and optimize) resource usage, health, and performance of database clusters.

## How Percona Everest is designed

Percona Everest has two primary components

**Percona Everest application with the UI**
- On the frontend, there is a Percona Everest UI which is developed using the Vite framework, React library and TypeScript language.
- On the backend, requests from the frontend app are processed by Percona Everest Backend. It is an API developed in Golang using the Echo framework that sends requests to the Kubernetes API. You can also use the API directly for your needs. 

**Percona Everest CLI (everestctl)**
You can install Percona Everest operators and components to your Kubernetes Cluster with the help of a console tool Percona Everest CLI (everestctl). Then, Percona Everest will create and manage database clusters. Everestctl is developed in Golang, and it is a built-in executable file.

_Percona Everest does not supply a Kubernetes cluster; you’ll need to use your own for the deployment._

## Percona Everest is currently in Beta

We invite you to become an early adopter and contribute to progress!

Your feedback is crucial to enhancing the software, and we highly value and rely on your input.

- [Percona Everest website](https://percona.community/projects/everest/)
- [Documentation](https://docs.percona.com/everest/index.html)
- [Quick Start](https://docs.percona.com/everest/quickstart-guide/qs-overview.html)