Install CCX on a Laptop
This guide explains how to install Docker Desktop, enable Kubernetes, configure AWS credentials for deploying CCX's datastore in AWS, and deploy CCX on the Kubernetes cluster.
Prerequisites
- System requirements: a laptop/desktop with atleast 4 cores and 8GB of RAM, 20GB of free storage.
- Docker Desktop, download Docker Desktop from the official Docker website.
- kubectl installed and on the PATH, get kubectl here.
- AWS CLI, see the AWS installation guide.
- AWS credentials, allowing you to create VMs, volumes, security groups, networks, S3, etc..
- Helm installed on your system. If not, follow the Helm installation guide.
Step 1: Enable Kubernetes in Docker Desktop
- Open Docker Desktop and navigate to Settings > Kubernetes.
- Check the box Enable Kubernetes and click Apply & Restart. We have tested these instructions with Kubernetes v1.30.5.
-
Wait for Kubernetes to initialize. It may take some time for Kubernetes to be Started. You can verify this by running:
The output of this command should look something like this: -
Ensure that the
docker-desktopcontext is selected:
Step 2: Create and Switch to a Namespace
-
Create a new namespace for CCX:
-
Switch your context to use this namespace:
Step 3: Configure AWS Credentials
CCX uses AWS credentials to deploy its datastore in the AWS cloud. These credentials need to be securely provided to Kubernetes as a secret.
-
Run the following command to configure your AWS credentials:
Provide the following details:
- AWS Access Key ID
- AWS Secret Access Key
- Default Region
-
Create a Kubernetes secret for the AWS credentials using the following command:
Verify the secret is available: The output of this command should look something like this:kubectl create secret generic aws \ --from-literal=AWS_ACCESS_KEY_ID=$(awk 'tolower($0) ~ /aws_access_key_id/ {print $NF; exit}' ~/.aws/credentials) \ --from-literal=AWS_SECRET_ACCESS_KEY=$(awk 'tolower($0) ~ /aws_secret_access_key/ {print $NF; exit}' ~/.aws/credentials)
Step 4: Deploy CCX Using Helm
-
Add the required Helm repository:
and you will see: -
Deploy CCXDEPS using the following command:
-
Deploy CCX:
Danger
This setup is only for demo and development purposes and the installtion will only work for the specified CIDR or 0.0.0.0/0 if no CIDR is set. For production and testing we recommend to follow the installation guide and overriding the values.yaml with your settings. If you set the CIDR below then CCX will only be able to access the datastores from this CIDR.
Using the CIDR 0.0.0.0/0 (access is allowed from everywhere, which might be a security risk):
Using a custom CIDR N.N.N.N/32 (access is allowed only from this CIDR):
Note
If you move the laptop/computer where the installation is made to another location, then you must login to the AWS Console and add that network to the security group.
Verification
- Once the deployment is complete, verify the CCX installation by accessing
https://ccx.localhostin your web browser. -
Use the following command to confirm that all pods are running successfully:
Accessing the frontends
CCX frontend
The CCX frontend is the end-user interface and allows the end-user to create and manage datastores. The necessary infrastructure (VMs, volumes, etc) are created and managed by CCX.
- Navigate to
https://ccx.localhostin your web browser. - Register a new user. In this configuration, no confirmation email will be sent and you will need to go back to
https://ccx.localhost(you can press Back in the browser) and login with your email address and password.
CC frontend
The CC frontend is an administrative interface and allows the CCX administrator to manage datastores.
- Navigate to
https://cc.localhostin your web browser. -
Login with the CC credentials, which are stored in Kubernets secrets:
Danger
Do not use this UI to delete clusters or add and remove nodes. Please see the Troubleshooting guide.
Troubleshooting
- If you experience sudden glitches or pod failures, you can try allocate more resoures too Docker Desktop. You can allocated more resources under
Settings->Resources->Advanced. - If you experience issues deploying, reset the environment (Settings->Kubernetes, Reset Kubernetes Cluster), increase resources, and try again.
- Troubleshooting guide.
- Problems? Create a GitHub issue.
Limitations
- Backups are not supported. A license to CMON is required. Please contact [email protected].
Next steps
- Installation guide.
- Visit Severalnines.com for more information about Severalnines, and CCX in general.
This document provides step-by-step instructions to set up Docker Desktop, Kubernetes, and CCX with a datastore deployed in AWS. For further details, refer to the official CCX documentation.