Data Plane
Self-hosting a DevZero Data Plane on AWS EKS.
By following this guide, you'll set up a DevZero Data Plane hosted on AWS EKS, enabling you to:
- Deploy an EKS cluster configured for seamless DevZero integration.
- Launch self-hosted DevZero Workspaces and Kubernetes Clusters to kickstart your development projects.
- Manage and scale your infrastructure directly on AWS with ease.
This step-by-step guide will walk you through creating an AWS EKS cluster, deploying DevZero Helm charts, and integrating your setup with the DevZero dashboard allowing your team to quickly start building in a production-like environment.
Let's get started!
Hosting the DevZero Data Plane on AWS EKS
For a detailed overview of the DevZero Data Plane, click here
Prerequisites
The following tools are needed to setup a DevZero region hosted on EKS:
Permissions Needed
Check out the Required Permissions on AWS
Also see Control Plane Permissions
Setting up the infrastructure
AWS CLI configuration and IAM setup
If you have an AWS account, use the AWS CLI to connect with it locally. Or, log in to your AWS console.
Configuring AWS CLI to interact with your AWS account locally
First, create aws_access_key
and aws_secret_access_key
from IAM Console.
Select Security Credentials of your user and click on 'Create Access Key'
Set the usecase as CLI and give it a description in the next panel.
After creating the keys, copy them to configure your AWS CLI locally.
Run this AWS command to configure your account:
You will have to enter your aws_access_key
and aws_secret_access_key
in the input:
You are now logged in to your AWS acount.
Setting up an EKS cluster
Deploying the Helm Charts
Update your kube-config file to connect to the EKS cluster:
Create a new namespace called devzero-self-hosted
by running:
Install the CRDs which are prerequisites to set up a DevZero region on the EKS cluster.
Install the helm charts to set up the DevZero data plane. Contact the DevZero team at support@devzero.io to get the values for:
<CEDANA-AUTH-TOKEN>
<SIGNOZ-ACCESS-TOKEN>
To track progress:
Verify that everything works:
Connecting to DevZero
Connect this Data Plane to DevZero
Visit the regions page on the DevZero
dashboard and click Add New
.
Use the retrieved values (token, URL, and CA certificate) to connect the self-hosted DevZero region to your team:
Fetching Cluster Configuration
After deploying the Helm chart, retrieve the following values for integration with the DevZero dashboard:
Cluster Name
Enter something meaningful and unique.
Examples: Frankfurt (eu-central-1), Mumbai (ap-south-1), N. California (us-west-1), SÃŖo Paulo (sa-east-1)
Region ID
Enter a cloud-friendly region name (does not necessarily have to be unique).
To preserve familiarility, feel free to reuse existing GCP terms. For a list of AWS Region Names, click here.
Examples: ap-south-1 (Mumbai), eu-central-1 (Frankfurt), sa-east-1 (SÃŖo Paulo), us-west-1 (N. California)
Cluster URL
To get the Cluster URL/IP:
For example,
Add the string as is, without leading or trailing whitespaces.
Cluster CA Certificate
To get the Cluster CA certificate:
For example,
Add the string as is, without leading or trailing whitespaces.
Service Account Name
To get the name of the Service Account:
Usually, this should be devzero-sa-token
.
Add the string as is, without leading or trailing whitespaces.
Service Account Token
To get the Service Account Token:
For example,
Add the string as is, without leading or trailing whitespaces.
Slug
Set any memorable value for the slug (ideally the same name you see in the AWS Dashboard).
For example: test-cluster, dev-cluster-1