# Install Percona XtraDB Cluster using Helm [Helm](https://github.com/helm/helm) is the package manager for Kubernetes. Percona Helm charts can be found in [percona/percona-helm-charts](https://github.com/percona/percona-helm-charts) repository on Github. ## Pre-requisites 1. The **Helm** package manager. Install it [following the official installation instructions](https://docs.helm.sh/using_helm/#installing-helm). !!! note Helm v3 is needed to run the following steps. 2. The **kubectl** tool to manage and deploy applications on Kubernetes. Install it [following the official installation instructions](https://kubernetes.io/docs/tasks/tools/install-kubectl/). ## Installation Here's a sequence of steps to follow: {.power-number} 1. Add the Percona’s Helm charts repository and make your Helm client up to date with it: ``` {.bash data-prompt="$" } $ helm repo add percona https://percona.github.io/percona-helm-charts/ $ helm repo update ``` 2. It is a good practice to isolate workloads in Kubernetes via namespaces. Create a namespace: ```{.bash data-prompt="$" } $ kubectl create namespace ``` 3. Install the Percona Operator for MySQL based on Percona XtraDB Cluster: ``` {.bash data-prompt="$" } $ helm install my-op percona/pxc-operator --namespace ``` The `namespace` is the name of your namespace. The `my-op` parameter in the above example is the name of [a new release object](https://helm.sh/docs/intro/using_helm/#three-big-concepts) which is created for the Operator when you install its Helm chart (use any name you like). 4. Install Percona XtraDB Cluster: ``` {.bash data-prompt="$" } $ helm install my-db percona/pxc-db --namespace ``` The `my-db` parameter in the above example is the name of [a new release object](https://helm.sh/docs/intro/using_helm/#three-big-concepts) which is created for the Percona XtraDB Cluster when you install its Helm chart (use any name you like). 5. Check the Operator and the Percona XtraDB Cluster Pods status. ```{.bash data-prompt="$" } $ kubectl get pxc -n ``` The creation process may take some time. When the process is over your cluster obtains the `ready` status. ??? example "Expected output" ``` {.text .no-copy} NAME ENDPOINT STATUS PXC PROXYSQL HAPROXY AGE cluster1 cluster1-haproxy.default ready 3 3 33d ``` You have successfully installed and deployed the Operator with default parameters. This deploys default Percona XtraDB Cluster configuration with three HAProxy and three XtraDB Cluster instances. You can check the rest of the Operator's parameters in the [Custom Resource options reference](operator.md#operator-custom-resource-options). ## Next steps [Connect to Percona XtraDB Cluster :material-arrow-right:](connect.md){.md-button} ## Useful links [Install Percona XtraDB Cluster with customized parameters](custom-install.md)