Customer Pre-requisites
1
Create a Ditto account
Create a Ditto account on the Ditto Homepage by clicking on “Get Started”
2
Identify a suitable GCP account
We recommend using a dedicated account for Ditto to deploy into, if possible. We can however deploy into any account of the customer’s choosing. Every effort is made to ensure that access permissions are minimal.
3
Identify a region to deploy into
For deployments based in the United States, us-east and us-west are the currently recommended regions. See Supported Regions for more information.
4
Increase service quotas, if necessary
See Service Quotas.
5
Identify an individual with suitable access to perform provisioning
This individual should have Project IAM Admin or Security Admin permissions to create IAM roles, and IAM policies in the GCP Project.
Supported Regions
Ditto BYOC is fully supported in the following GCP regions:- US-East1
- US-Central1
- US-West1
- Australia-Southeast1
Service Quotas
To ensure optimal production readiness and robust support for autoscaling within your Ditto cluster, it is crucial to proactively increase specific quotas in Google Cloud Platform (GCP). This will provide your cluster and its associated infrastructure with the necessary resources to handle fluctuating workloads and maintain high availability. The following quotas are critically important and should be increased to the specified minimums:- CPU Quota (per region): We recommend a minimum CPU quota of 50 cores per region and an additional 400 cores for N2 instance types. This is vital for applications that experience peak traffic or require significant processing power.
- SSD Quota: A minimum SSD quota of 10TB is recommended. This quota applies to Persistent Disks (PDs) that utilize Solid State Drive (SSD) storage, which are often used for high-performance databases, caching layers, and other I/O-intensive applications running within your infrastructure. Adequate SSD quota guarantees that your applications have access to fast and reliable storage, preventing bottlenecks and ensuring data integrity. This also allows for the creation of multiple SSD-backed volumes as your data storage needs to grow with your cluster’s expansion.
Deployment Process
1
Account Provisioning
The initial setup is a guided process conducted with a Ditto engineer:
1
Pre-deployment Call
Review prerequisites and deployment requirements
2
CLI Tool Delivery
Receive dedicated bootstrap script for initial setup
3
VPC Configuration
Deploy dedicated VPC or configure existing infrastructure
4
Permission Setup
Configure IAM roles and permission boundaries with CLI tool
5
Cluster Deployment
Ditto deploys Kubernetes cluster with appropriate sizing
6
App Deployment
Begin deploying applications via the Ditto Portal
2
Sizing Recommendations
Start with the v1-small configuration, our recommended initial cluster size. Our team will work with you to right-size the deployment based on your production workload requirements.
The three main scalable components are:
- Subscription Server: Horizontally scalable based on device connections
- API Server: Scales with HTTP API usage
- Store: Scales with data volume and throughput requirements
Cost Considerations
When running Ditto BYOC on GCP:- Costs include:
- Compute Engine instance hours
- Persistent Disk / SSD / Google Cloud Storage
- Network egress/ingress data transfer
- Load balancer hours
- Consider using Commited Use Discounts (CUDs) or Savings Plan for cost optimization
- Consider Sustained Use Discounts or Preemtible VM’s for further savings on long running instances
- Leverage your existing credits and enterprise agreements
GCP-Specific FAQ
Can I use existing VPCs?
Can I use existing VPCs?
Yes, but Ditto recommends dedicated VPCs for isolation and easier management.
For GCP-specific setup assistance or questions, please contact support.