everest

module
v1.10.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 28, 2025 License: Apache-2.0

README

Percona Everest

!image

Percona Everest is an open source cloud-native database platform that helps developers deploy code faster, scale deployments rapidly, and reduce database administration overhead while regaining control over their data, database configuration, and DBaaS costs.

Why you should try Percona Everest:

  • Launch database instance with just a few clicks
  • Enable your team to develop faster and reduce time to market
  • Scale seamlessly
  • Simplify maintenance
  • Monitor and optimize
  • Automate backups
  • Ensure data security

Discover all the features and capabilities of Percona Everest and see how it can transform your database management experience.

Documentation

For comprehensive information about Percona Everest, see the documentation. Also, visit our Storybook to check documentation for our UI components (under development).

Helm is the recommended installation method for Percona Everest as it simplifies deployment and resource management in Kubernetes environments.

Prerequisites
  • Ensure you have a Kubernetes cluster set up (e.g., Amazon EKS, Google GKE).
  • Install Helm on your local machine: Helm Installation Guide.
Steps to Install
  1. Add the Percona Helm repository:
helm repo add percona https://percona.github.io/percona-helm-charts/
helm repo update
  1. Install the Percona Everest Helm Chart:
helm install everest-core percona/everest \
--namespace everest-system \
--create-namespace
  1. Retrieve Admin Credentials:
kubectl get secret everest-accounts -n everest-system -o jsonpath='{.data.users\.yaml}' | base64 --decode | yq '.admin.passwordHash'
  • Default username: admin
  • You can set a different default admin password by using the server.initialAdminPassword parameter during installation.
  1. Access the Percona Everest UI:

    By default, Everest is not exposed via an external IP. Use one of the following options:

  • Port Forwarding:
kubectl port-forward svc/everest 8080:8080 -n everest-system

Access the UI at http://127.0.0.1:8080.

For more information about our Helm charts, visit the official Percona Everest Helm Charts repository.

Install Percona Everest using CLI

Prerequisites
  • Ensure you have a Kubernetes cluster set up (e.g., Amazon EKS, Google GKE).

  • Verify access to your Kubernetes cluster:

    kubectl get nodes
    
  • Ensure your kubeconfig file is located in the default path ~/.kube/config. If not, set the path using the following command:

    export KUBECONFIG=~/.kube/config
    

Steps to Install

Starting from version 1.4.0, everestctl uses the Helm chart to install Percona Everest. You can configure chart parameters using:

  • --helm.set for individual parameters.
  • --helm.values to provide a values file.
  1. Download the Everest CLI:

    Linux and WSL

    curl -sSL -o everestctl-linux-amd64 https://github.com/percona/everest/releases/latest/download/everestctl-linux-amd64
    sudo install -m 555 everestctl-linux-amd64 /usr/local/bin/everestctl
    rm everestctl-linux-amd64
    

    macOS (Apple Silicon)

    curl -sSL -o everestctl-darwin-arm64 https://github.com/percona/everest/releases/latest/download/everestctl-darwin-arm64
    sudo install -m 555 everestctl-darwin-arm64 /usr/local/bin/everestctl
    rm everestctl-darwin-arm64
    
    

    macOS (Intel CPU)

    curl -sSL -o everestctl-darwin-amd64 https://github.com/percona/everest/releases/latest/download/everestctl-darwin-amd64
    sudo install -m 555 everestctl-darwin-amd64 /usr/local/bin/everestctl
    rm everestctl-darwin-amd64
    
    
  2. Install Percona Everest Using the Wizard:

    Run the following command and specify the namespaces for Everest to manage:

    everestctl install
    

    If you skip adding namespaces, you can add them later:

    everestctl namespaces add <NAMESPACE>
    
  3. Install Percona Everest in Headless Mode:

    Run the following command to set namespaces and database operators during installation:

    everestctl install --namespaces <namespace-name1>,<namespace-name2> --operator.mongodb=true --operator.postgresql=true --operator.mysql=true --skip-wizard
    
  4. Access Admin Credentials:

    Retrieve the generated admin password:

    everestctl accounts initial-admin-password
    
  5. Access the Everest UI:

    Use one of the following methods to access the UI:

  • Port Forwarding:

    kubectl port-forward svc/everest 8080:8080 -n everest-system
    

    Open the UI at http://127.0.0.1:8080.

  • LoadBalancer (Optional):

    kubectl patch svc/everest -n everest-system -p '{"spec": {"type": "LoadBalancer"}}'
    

Need help?

Commercial Support Community Support

Percona offers expert cloud-native support and services to simplify your database management, featuring 24/7 assistance, consulting, managed services, and training designed to maximize your cloud database operations.


Connect with our engineers and fellow users for general questions, troubleshooting, and sharing feedback and ideas.

Get Percona Support Visit our Forum

Contributing

We believe that community is the backbone of Percona Everest. That's why we always welcome and encourage you to actively contribute and help us enhance Percona Everest.

See the Contribution Guide for more information on how you can contribute.

Communication

We value your thoughts and opinions and we would be thrilled to hear from you! Join us on Forum to ask questions, share your feedback, and spark creative ideas with our community.

Submitting Bug Reports

If you find a bug in Percona Everest, submit a report to that project's JIRA issue tracker or create a GitHub issue in this repository.

Learn more about submitting bugs, new features ideas and improvements in the documentation.

Directories

Path Synopsis
Package api provides primitives to interact with the openapi HTTP API.
Package api provides primitives to interact with the openapi HTTP API.
Package client provides primitives to interact with the openapi HTTP API.
Package client provides primitives to interact with the openapi HTTP API.
cmd
everest Copyright (C) 2023 Percona LLC
everest Copyright (C) 2023 Percona LLC
cli command
everest Copyright (C) 2023 Percona LLC
everest Copyright (C) 2023 Percona LLC
config
Package config ...
Package config ...
Package commands ...
Package commands ...
accounts
Package accounts holds commands for accounts command.
Package accounts holds commands for accounts command.
common
Package common contains common types for all commands.
Package common contains common types for all commands.
namespaces
Package namespaces provides the namespaces CLI command.
Package namespaces provides the namespaces CLI command.
settings
Package settings provides the Everest settings CLI commands.
Package settings provides the Everest settings CLI commands.
settings/oidc
Package oidc provides OIDC settings CLI commands.
Package oidc provides OIDC settings CLI commands.
settings/rbac
Package rbac provides RBAC settings CLI commands.
Package rbac provides RBAC settings CLI commands.
Package data provides access to embedded data.
Package data provides access to embedded data.
internal
server
Package server contains the API server implementation.
Package server contains the API server implementation.
server/handlers
Package handlers contains the interface and types for the Everest API handlers.
Package handlers contains the interface and types for the Everest API handlers.
server/handlers/k8s
Package k8s contains the Kubernetes handler.
Package k8s contains the Kubernetes handler.
server/handlers/rbac
Package rbac provides the RBAC handler.
Package rbac provides the RBAC handler.
server/handlers/validation
Package validation provides the validation handler.
Package validation provides the validation handler.
pkg
accounts
Package accounts ...
Package accounts ...
accounts/cli
Package cli holds commands for accounts command.
Package cli holds commands for accounts command.
cli
Package cli contains the logic for the CLI commands.
Package cli contains the logic for the CLI commands.
cli/helm
Package helm has the logic to install and uninstall Helm charts.
Package helm has the logic to install and uninstall Helm charts.
cli/helm/utils
Package utils provides utility functions for the Helm.
Package utils provides utility functions for the Helm.
cli/install
Package install ...
Package install ...
cli/namespaces
Package namespaces provides the functionality to manage namespaces.
Package namespaces provides the functionality to manage namespaces.
cli/steps
Package steps provides a way to run a function with a pretty loading spinner animation.
Package steps provides a way to run a function with a pretty loading spinner animation.
cli/tui
Package tui provides UI elements for the CLI.
Package tui provides UI elements for the CLI.
cli/uninstall
Package uninstall ...
Package uninstall ...
cli/upgrade
Package upgrade implements upgrade logic for the CLI.
Package upgrade implements upgrade logic for the CLI.
cli/utils
Package utils provides utility functions for the Everest CLI.
Package utils provides utility functions for the Everest CLI.
common
Package common holds common constants used across Everest.
Package common holds common constants used across Everest.
convertors
Package convertors provides data size convert functinality.
Package convertors provides data size convert functinality.
kubernetes
Package kubernetes ...
Package kubernetes ...
kubernetes/informer
Package informer provides generic utilities to work with Kubernetes informers.
Package informer provides generic utilities to work with Kubernetes informers.
logger
Package logger provides functionality related to logging.
Package logger provides functionality related to logging.
oidc
Package oidc ...
Package oidc ...
output
Package output provides utilities to print output in commands.
Package output provides utilities to print output in commands.
rbac
Package rbac provides RBAC middleware utilies for the Everest API server.
Package rbac provides RBAC middleware utilies for the Everest API server.
rbac/configmap-adapter
Package configmapadapter provides a Casbin adapter that uses a Kubernetes ConfigMap as the storage.
Package configmapadapter provides a Casbin adapter that uses a Kubernetes ConfigMap as the storage.
rbac/io-reader-adapter
Package readeradapter provides a Casbin adapter for reading policy from an io.Reader source.
Package readeradapter provides a Casbin adapter for reading policy from an io.Reader source.
rbac/utils
Package utils contains utility functions for RBAC.
Package utils contains utility functions for RBAC.
session
Package session provides a session manager for creating and verifying JWT tokens.
Package session provides a session manager for creating and verifying JWT tokens.
utils/must
Package must provides a function to panic if an error is not nil.
Package must provides a function to panic if an error is not nil.
version
Package version provides methods to determine the correct version of components.
Package version provides methods to determine the correct version of components.
version_service
Package versionservice provides an interface for the Perocona version service.
Package versionservice provides an interface for the Perocona version service.
Package public embeds the FE app into the BE
Package public embeds the FE app into the BE

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL