Kubernetes (k8s)
This page provides steps to install Appsmith on a Kubernetes cluster using the Helm package manager.
System requirements
- At least 15 GB of free storage space.
- 4 GB of RAM.
Prerequisites
Install Helm package manager on your local machine. See the official Helm documentation for your operating system.
Install and configure
kubectl
to interact with your Kubernetes cluster. Follow the below guides available on the official Kubernetes documentation for instructions on how to installkubectl
on your specific operating system:Set up a Kubernetes cluster. Follow these steps using a terminal to set up the cluster on AWS EKS:
infoYou are free to choose your preferred platform for hosting the Kubernetes cluster. Make sure you have configured Kubeconfig and created a default storage class before proceeding with the Appsmith installation. If you face any issues, contact the support team using the chat widget at the bottom right of this page.
a. Verify if you have access to AWS CLI with:
aws sts get-caller-identity
The above command provides information related to your account and ARN, indicating that you can connect and access your Amazon account using a terminal.
b. Create KubeConfig with:
aws eks update-kubeconfig --region ap-south-1 --name CLUSTER_NAME --profile <PROFILE_NAME>
In the above command, add the profile name that has access to the EKS cluster to the
--profile
parameter.c. Test your Kubernetes configuration with:
kubectl cluster-info
The above command provides a summary of the current cluster configuration, including the Kubernetes master and other cluster information.
d. Define a storage class.
For Kubernetes version earlier than
1.23
, define the storage class with:kubectl apply -f - <<EOF
apiVersion: storage.k8s.io/v1
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: gp2
provisioner: kubernetes.io/aws-ebs
EOFFor Kubernetes version
1.23
and later, define the storage class with:- Create an IAM role by following the Amazon official documentation for Creating the Amazon EBS CSI driver IAM role.
- Add the Amazon Elastic Block Store (Amazon EBS) Container Storage Interface (CSI) driver chart repository with:
helm repo add aws-ebs-csi-driver https://kubernetes-sigs.github.io/aws-ebs-csi-driver
- Update the Amazon EBS CSI driver repository with:
helm repo update
- Install Amazon EBS CSI driver with:
helm upgrade --install aws-ebs-csi-driver --namespace kube-system aws-ebs-csi-driver aws-ebs-csi-driver
- Verify the Amazon EBS CSI driver installation with:
kubectl get pods -n kube-system -l app.kubernetes.io/name=aws-ebs-csi-driver
Install Appsmith
Follow these steps to install Appsmith:
- Create a folder named
appsmith
on your machine for deployment and data storage. Then, navigate to this folder using thecd
command.
- Add the Appsmith chart repository with:
helm repo add appsmith-ee https://helm-ee.appsmith.com
- Load the Appsmith chart repository with:
helm repo update
- Generate the
values.yaml
file with:
helm show values appsmith-ee/appsmith > values.yaml
- Run the below command to deploy Appsmith:
helm install appsmith-ee appsmith-ee/appsmith -n appsmith-ee --create-namespace -f values.yaml
- Get pod name with:
kubectl get pods -n appsmith-ee
The above command displays the status of the pods. Proceed to the next step once the pod status is shown as RUNNING.
- To access and verify the installation locally, use the below command that forwards the port 8080 to port 80:
kubectl --namespace appsmith-ee port-forward appsmith-ee-0 8080:80
In the above command, appsmith-ee-0
is the Appsmith pod name.
Open http://localhost:8080 and wait for the server to come up. This can take up to 5 minutes. Once the server is up and running, you can access Appsmith at http://localhost:8080.
Fill in your details to create an administrator account.
Once you've created an account, you can either start with the free plan or activate your instance with a license key. If you want to generate a license key, sign up on customer.appsmith.com to create one, and then proceed to activate your instance using the newly generated license key.
For high availability and scalability configuration, see the Configure High Availability and Scalability guide. To expose Appsmith installation on the internet, see the Expose K8s to Internet guide.
Install Appsmith Community
To install the Appsmith open source edition (Appsmith Community):
- Use the open source helm chart by running the below command which adds the Appsmith chart repository:
helm repo add appsmith https://helm.appsmith.com
- Replace
appsmith-ee
withappsmith
in the commands on this page.
Troubleshooting
If you are facing issues during deployment, please refer to the guide on troubleshooting deployment errors.
If you continue to face issues, contact the support team using the chat widget at the bottom right of this page.