# Kloudfuse Install Prerequisites

Review the hardware, software, and cloud prerequisites required before installing Kloudfuse on a Kubernetes cluster running on GCP, AWS, or Azure.

## Prerequisites

Before you begin, ensure the following requirements are in place:

| Requirement                | Details                                                                                                                                                                                           |
|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Kubernetes cluster         | A cluster running on GCP (GKE), AWS (EKS), or Azure (AKS). The cluster can be dedicated to Kloudfuse or shared with other application workloads.                                                  |
| Node resources             | At least 16 vCPUs and 128 GB memory available across the cluster. For production deployments, see [Cluster Configuration](https://docs.kloudfuse.com/platform/4.1.0/administration/clusters/overview/)       to size and isolate node pools by workload type. |
| Persistent Volume Claims    | The cluster must support dynamic PVC provisioning. Kloudfuse uses persistent volumes for its storage components.                                                                                  |
| Helm                       | Version 3.10.0 or later. Used to install and upgrade the Kloudfuse stack.                                                                                                                        |
| kubectl                    | Configured to communicate with your target cluster.                                                                                                                                               |

## Installation steps

Follow these steps in order for a complete Kloudfuse deployment:

| Step                              | Description                                                                                                                                                                              |
|-----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Install Using Helm](https://docs.kloudfuse.com/platform/4.1.0/setup/install/helm/)                 | Deploy the Kloudfuse Helm chart with your custom configuration values.                                                                 | 
| [Ingress Configuration](https://docs.kloudfuse.com/platform/4.1.0/setup/network/nginx/)               | Configure cloud provider-specific Helm values to expose the Kloudfuse UI and API endpoints.                                                                      |
| [Local Authentication](https://docs.kloudfuse.com/platform/4.1.0/setup/install/local-user-auth/)       | Add initial user accounts for platform access.                                                                                                                                             |
| [SSO Authentication](https://docs.kloudfuse.com/platform/4.1.0/setup/install/sso-user-auth/)          | Optional: configure Single Sign-On to integrate with your identity provider (Google, Okta, JumpCloud, or SAML).                                                                       |
| [Pinot Object Storage](https://docs.kloudfuse.com/platform/4.1.0/setup/storage/object-store/)          | Configure an external object store (S3, GCS, or Azure Blob Storage) for long-term data retention in Pinot.                                                                            |
| [Uninstall Kloudfuse](https://docs.kloudfuse.com/platform/4.1.0/setup/install/uninstall/)              | Remove the Kloudfuse stack when needed.                                                                                                                                               |

## Advanced configuration

For production deployments, review these additional topics after completing the initial installation:

| Topic                               | Description                                                                                                                                                                                              |
|-------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Cross-AZ Recovery](https://docs.kloudfuse.com/platform/4.1.0/setup/advanced/cross-az/)                     | Configure backup, restore, and disaster recovery procedures to protect your Kloudfuse data.                                                                                                   |
| [HA Multi-AZ Setup](https://docs.kloudfuse.com/platform/4.1.0/setup/advanced/ha-multi-az-setup/)            | High Availability(HA) setup for Kloudfuse, you will deploy the cluster across multiple availability zones (multi-AZ).                                                                                                                        |
| [Kloudfuse Authentication](https://docs.kloudfuse.com/platform/4.1.0/administration/authentication/overview/) | Configure SSO, SAML, ingestion authentication, and login security policies.                                                                                                   |
| [Cloud-Provider Database](https://docs.kloudfuse.com/platform/4.1.0/setup/cloud-services/remote-database/)  | Optional: configure Kloudfuse to use a cloud provider-managed database instead of the bundled database.                                                                      |
| [Cluster Configuration](https://docs.kloudfuse.com/platform/4.1.0/administration/clusters/overview/)         | Isolate ingestion, query, and control plane workloads across dedicated node pools. Configure Pinot stream isolation for large-scale deployments.           |
