# Self hosted

### Overview

Deploy CXFabric directly into **your own cloud environment** for maximum control over infrastructure, security, and compliance. This option is ideal for businesses with strict regulatory requirements or unique deployment needs.

Customer-provided Cloud platform requirements

### Network <a href="#network" id="network"></a>

VPC

NAT Gateway

Application Load balancer (1 minimum)

&#x20;

### Container Orchestration <a href="#container-orchestration" id="container-orchestration"></a>

CXFabric applications are pre-packaged as Docker images and must run as containers.

[Kubernetes](https://kubernetes.io/) (EKS, AKS, etc.)

* Minimum cluster size
  * Worker nodes: 2
  * VM Size: 4 CPU, 16 RAM, 30GB Disk storage.
* Preferred cluster size
  * Work nodes: 3

&#x20;

### File storage <a href="#file-storage" id="file-storage"></a>

* AWS S3 buckets&#x20;
* Azure Blob storage&#x20;

or equivalent

&#x20;

### Database <a href="#database" id="database"></a>

[Cassandra](https://cassandra.apache.org/_/index.html) DB (or AWS Keyspaces)

&#x20;

### In-memory caching <a href="#in-memory-caching" id="in-memory-caching"></a>

Redis Cache

Possible options:&#x20;

* [AWS Valkey](https://aws.amazon.com/elasticache/)&#x20;
* [Redis](https://redis.io/) - The Real-time Data Platform

&#x20;

### Logging/Monitoring/Alerting <a href="#logging-monitoring-alerting" id="logging-monitoring-alerting"></a>

[Datadog](https://www.datadoghq.com/) (current resource)

Other possible options:&#x20;

* [CloudWatch](https://www.amazonaws.cn/en/cloudwatch/)&#x20;
* [Prometheus](https://prometheus.io/)&#x20;
* ELK ([Elasticsearch](https://www.elastic.co/)/[Logstash](https://www.elastic.co/logstash)/[Kibana](https://www.elastic.co/kibana)).

&#x20;

### Additional Resources <a href="#additional-resources" id="additional-resources"></a>

[Cloudflare](https://www.cloudflare.com/):&#x20;

* Public DNS
* DDoS/WAF protection&#x20;
* static file caching

[Auth0](https://auth0.com/):&#x20;

* User authentication


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://cxfabric.gitbook.io/docs/deployment/self-hosted.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
