Cloud Spectra Gateway -- Quick Start v1.0.0

Deploy Cloud Spectra Gateway into your own AWS account in under 15 minutes.

1. Overview

Cloud Spectra Gateway is an AWS networking appliance that deploys entirely into your own AWS account. It replaces metered AWS networking and LLM-API spend with a fixed EC2 cost -- your cloud, off the meter. All traffic and configuration stay inside your account: there is no vendor control plane and no data leaves your boundary.

You subscribe on the AWS Marketplace, launch a CloudFormation stack, and within minutes you have a running gateway with a management dashboard. Outbound NAT works immediately; you turn on additional features from the dashboard as you need them.

Cloud Spectra Gateway replaces the AWS services you are currently metered on with in-appliance equivalents:

What AWS metersCloud Spectra Gateway equivalentTier
NAT Gateway (hourly + per-GB)Source NAT (sNAT) on the applianceNetwork
Inbound forwardingDestination NAT / port forwarding (dNAT)Network
Network Load Balancer (L4)In-appliance Linux IPVS L4 load balancingNetwork
TLS terminationHAProxy + ACM certificate on port 443Network
Inline inspection / IDS-IPSSuricata IDS/IPS (ET Open rules plus community threat feeds), nftables firewall, TLS inspection, domain and URL-category filtering, ClamAV antivirus, L7 App-ID, and SIEM exportSecurity
Forward web proxySquid proxy with caching and filteringNetwork
LLM API spendOpenAI-compatible AI Gateway with an exact-match response cache and a semantic cache, plus an in-dashboard AI Assistant backed by Amazon BedrockSecurity
Always-on, oversized stateful box (database, search, analytics, dashboard)ElasticApps: one stateful app, vertically right-sized and on SpotPlatform

Cloud Spectra ships as three tiers -- Platform, Network, and Security -- which stack, so each higher tier includes everything in the one below it. Platform carries the compute and Kubernetes worker stack (CPU and GPU) and makes a single stateful application cost-elastic; Network adds the networking data plane; Security adds inline inspection, enforcement and the governed AI LLM gateway. For the full breakdown of every feature and how it works, see the User Guide; for how the appliance is assembled internally, see the Architecture guide.

The ElasticApps tier Platform

ElasticApps is a separate Marketplace tier for a different job: making one stateful open-source application cost-elastic without clustering or a front-end load balancer. You pick a single app -- Grafana, ClickHouse, OpenSearch, PostgreSQL, Neo4j, Trino, Prometheus and more -- and the Cloud Spectra control plane runs it on a single instance that is vertically right-sized: it moves the app onto a bigger instance when it is busy and a smaller one when it is idle, and it can run that instance on Spot for a deeper discount. A sticky EBS data volume follows the app across every resize and replacement, and a stable Elastic IP and DNS name keep its address unchanged -- so the instance can move to the right size, and across Availability Zones, while the data and the endpoint stay put. Because the software fee is a small multiple of the instance's on-demand price (with a per-hour cap), scaling the box down directly shrinks your bill.

flowchart LR
    APP["One stateful app
(Grafana / ClickHouse /
Postgres / Trino / ...)"] --> Q{"App load?"} Q -->|"busy"| UP["Move to a
bigger instance"] Q -->|"idle"| DOWN["Move to a smaller
instance"] UP --> KEEP["Sticky EBS keeps the data
Elastic IP + DNS keep the address"] DOWN --> KEEP KEEP --> APP style APP fill:#dbeafe,stroke:#3b82f6,color:#1e3a8a style UP fill:#d1fae5,stroke:#10b981,color:#065f46 style DOWN fill:#d1fae5,stroke:#10b981,color:#065f46 style KEEP fill:#fef3c7,stroke:#f59e0b,color:#92400e
Deploying an elastic app? You subscribe and launch the CloudFormation stack the same way as any other tier (steps 2--4 below), then select the application and its scaling policy from the dashboard. Unlike the per-AZ network topology shown below, the elastic tier runs as a single multi-AZ instance -- no Gateway Load Balancer and no horizontal scale-out. See ElasticApps tier in the User Guide for the full configuration reference and Pricing for the fee.

CPU and GPU worker nodes

The CPU and GPU worker stacks -- both part of the Platform tier -- are worker-node AMIs rather than appliances. They exist to give a Kubernetes cluster ready-to-join nodes without you having to bake and maintain the image yourself, so there are no runtime settings to configure in the dashboard once a node is launched -- you launch the AMI and the node joins your cluster.

  • The CPU worker stack -- a Kubernetes worker AMI with the containerd runtime, kubeadm/kubelet ready to join a cluster, and the Calico CNI pre-installed.
  • The GPU worker stack -- the same worker AMI plus the NVIDIA driver, the CUDA toolkit, the vLLM runtime, and the NVIDIA device plugin pre-installed, for GPU workloads such as model serving.

Both sit in Platform, the lowest tier in the Cloud Spectra ranking, which runs Platform -> Network -> Security. A capability gated at that floor is therefore available in every tier above it: the sticky EBS data volume, which re-homes a persistent volume onto a replacement instance without reformatting, is the main example.

Deploying worker nodes? Worker nodes have no CloudFormation stack or dashboard of their own -- launch the AMI the way you launch any other worker node. The rest of this walkthrough follows the gateway path.

Deployment flow at a glance

graph TD
    MP["AWS Marketplace
subscribe to a tier"] --> CF["CloudFormation stack
new-VPC or existing/BYO-VPC"] CF --> ASG["Per-AZ Auto Scaling Group
one ASG per Availability Zone"] ASG --> GWLB["Gateway Load Balancer (GENEVE)
horizontal scale"] GWLB --> EIP["Elastic IP
stable endpoint"] EIP --> DASH["HTTPS dashboard
port 9443 (nginx, self-signed)"] DASH --> DONE["Login & configure"] style MP fill:#dbeafe,stroke:#3b82f6,color:#1e3a8a style CF fill:#dbeafe,stroke:#3b82f6,color:#1e3a8a style DONE fill:#d1fae5,stroke:#10b981,color:#065f46

2. Prerequisites

To complete this quick start you need:

  • An AWS account where you can subscribe on the Marketplace and create resources.
  • A chosen AWS Region to deploy into (any commercial region works).
  • Permissions to create CloudFormation stacks and the resources they create: EC2 instances, VPC networking, IAM roles, Auto Scaling groups, and an Elastic IP.
  • No EC2 key pair needed. The stack creates its own key pair and stores the private key in SSM Parameter Store for you; the stack Outputs include the command to download it (see section 5).
  • Optional: an AWS Certificate Manager (ACM) certificate if you want TLS termination on port 443, in front of your own services, to serve a trusted certificate. This does not change the management dashboard's certificate -- in v1 the dashboard always serves a per-instance self-signed certificate.
Enable most features -- deploy the operational IAM role. The base CloudFormation template is intentionally minimal: the gateway boots and outbound NAT works from it, but most other features -- the full per-AZ NAT data plane for your private subnets, Gateway Load Balancer, EventBridge, vertical/horizontal scaling, the AI Gateway, teardown, and cross-account management -- require a separately deployed operational IAM role (the cross-account / home-account role). You deploy it once in this account, and once per additional account you manage, from a CloudFormation stack the dashboard hands you with every permission pre-filled. Without it, most features will not work. See Cross-account / home-account IAM role in the User Guide for the full setup.
Where configuration lives: All gateway configuration is stored in AWS SSM Parameter Store inside your account. There is no external database and no vendor-hosted state.

3. Choose a deployment

Cloud Spectra Gateway supports three deployment methods. This quick start focuses on the Marketplace 1-click CloudFormation path; the other two are covered in detail in the User Guide.

MethodBest forHow
Marketplace + CloudFormationThe fastest, recommended path for most customers1-click from the listing into a CloudFormation stack
TerraformTeams managing infrastructure as codeThe cloudspectra/cloudspectra provider + AWS modules
Standalone AMIQuick trials or non-CloudFormation environmentsLaunch the AMI directly; boots with NAT + dashboard

CloudFormation: new VPC vs existing/BYO VPC

The Marketplace listing offers two CloudFormation templates. Pick the one that matches your environment:

  • New-VPC template -- Cloud Spectra creates a fresh VPC, subnets, route tables, and an internet gateway for you. This is the simplest starting point and is the default.
  • Existing / BYO-VPC template -- Cloud Spectra deploys into a VPC and subnets you already operate. Use this for production accounts where the network is already established.
Terraform path: If you prefer infrastructure as code, install the Terraform provider cloudspectra/cloudspectra via a one-time network mirror block in ~/.terraformrc, then drive both deployment and feature configuration with the provider's resources. Full instructions are in the User Guide.
Standalone AMI path: You can also launch the Cloud Spectra AMI directly from the EC2 console with no CloudFormation at all. It boots with sNAT and the dashboard already running. See the standalone walkthrough in the User Guide.

4. Deploy via CloudFormation

Estimated time: 8-10 minutes

1Subscribe in AWS Marketplace

Visit the AWS Marketplace and subscribe to the Cloud Spectra Gateway listing, then SELECT the tier you want at deploy time -- Platform, Network, or Security. One Marketplace product per architecture ships the same superset AMI for every tier, so the tier is a deploy-time choice rather than a different subscription, and each higher tier includes everything in the tiers below it.

2Launch the CloudFormation stack

From the listing, choose Continue to Launch. This opens the CloudFormation console with the Cloud Spectra template pre-loaded. Confirm your launch Region in the top-right of the console before continuing.

3Pick a template: new-VPC or existing/BYO-VPC

Select the new-VPC template to have Cloud Spectra build the network for you, or the existing/BYO-VPC template to deploy into a VPC and subnets you already run (see section 3). When in doubt, start with the new-VPC template.

4Set parameters

Most defaults are sensible. The key parameters to review:

ParameterWhat it controls
VPC selectionNew VPC (created for you) vs an existing VPC ID + subnets you provide.
Availability ZonesThe list of AZs to deploy into. One ASG is created per AZ; AZ 1 is required, additional AZs add high availability.
Instance typeThe EC2 instance type for gateway nodes. Can be changed live later.
Admin access CIDRThe source CIDR allowed to reach the dashboard. Restrict to your office or VPN range.
ACM certificate (optional)An ACM certificate ARN to serve trusted TLS on port 443.
Security and AI features need at least 4 vCPUs: The Network tier runs on small instances. The inline data-plane services -- the Suricata IDS/IPS, antivirus scanning, and the AI LLM proxy -- will not start below 4 vCPUs, so pick an instance type of that size or larger if you plan to use the Security or Security tiers. Match the instance architecture to the AMI you subscribed to.

5Wait for CREATE_COMPLETE

Acknowledge the IAM capability prompt and create the stack. Provisioning takes roughly 8-10 minutes. Watch the stack Events until the status reads CREATE_COMPLETE.

What the stack builds: a per-AZ Auto Scaling Group (one ASG per Availability Zone, each egressing through its own ENI to avoid cross-AZ data charges), a Gateway Load Balancer (GWLB, GENEVE) for horizontal scale, and an Elastic IP for a stable endpoint. The internals are described in the Architecture guide.

5. First login

6Find the dashboard URL in stack Outputs

Open the stack's Outputs tab in the CloudFormation console. The output for the gateway's Elastic IP is your stable dashboard endpoint. Open it over HTTPS on port 9443 -- the AccessElasticIp stack output already includes the port. (The dashboard is served by nginx using a per-instance self-signed certificate generated at first boot; an ACM certificate is not used here.) Port 443 is deliberately left free for TLS termination in front of your own services; if you are not using a TLS load balancer, you can set the dashboard0000port stack parameter to 443 to serve the dashboard on the standard HTTPS port.

7Retrieve the initial admin password

Log in as user admin. The one-time initial password lives only in a root-only file on the instance, so you retrieve it over SSH. The stack generated the key pair for you: run the AccessInstancePrivateKeyCommand stack output to download the private key from SSM Parameter Store, then SSH with it. Password authentication and root login are disabled on the appliance, so you authenticate with that key:

# 1. Download the stack-generated private key
#    (copy this command verbatim from the AccessInstancePrivateKeyCommand stack output)
aws ssm get-parameter --name /ec2/keypair/<KEY_PAIR_ID> --with-decryption \
  --query Parameter.Value --output text > ~/.ssh/<KEY_NAME> && chmod 400 ~/.ssh/<KEY_NAME>

# 2. SSH in as user "admin" with that key
ssh -i ~/.ssh/<KEY_NAME> admin@<ELASTIC_IP>

# 3. Read the one-time dashboard init password (root-only file)
sudo cat /etc/cloudspectra/dashboard_init_pw

The initial password is never written to SSM Parameter Store or anywhere else -- this root-only file on the instance is the only copy until you set a permanent password. (Only the SSH private key is stored in SSM, at /ec2/keypair/<KEY_PAIR_ID>.)

8Set a permanent password

The dashboard forces a password change on first login. After you set your own password, the one-time init password stops working. Keep your new password somewhere safe -- the gateway has no vendor-side recovery path because there is no vendor control plane.

Certificate warning: In v1 the dashboard always serves a per-instance self-signed certificate, so your browser will show a warning on first access. This is expected, and the ACM certificate parameter does not change it -- that parameter applies only to TLS termination on port 443 in front of your own services.
Roadmap. Built-in Grafana fleet dashboards -- a single pane of live CPU, memory, disk, and network metrics for every instance across all Auto Scaling Groups -- are on the roadmap and are not enabled in v1. In v1, use the dashboard's own status panels (section 8) to check per-AZ instance health. This is distinct from the ElasticApps Grafana application, which ships today and is one of the stateful apps you can run elastically.

6. NAT works out of the box

As soon as the stack reaches CREATE_COMPLETE, source NAT is already running on the appliance -- no configuration step is required. Private instances whose route tables point default traffic at the Cloud Spectra ENI immediately reach the internet through the gateway's Elastic IP.

graph LR
    subgraph VPC["Your VPC"]
        PRIV["Private subnet instances
(no public IP)"] GW["Cloud Spectra Gateway
sNAT on per-AZ ENI"] end EIP["Elastic IP
(stable egress)"] NET["Internet"] PRIV -->|"0.0.0.0/0 route"| GW GW --> EIP EIP --> NET style GW fill:#d1fae5,stroke:#10b981,color:#065f46 style EIP fill:#dbeafe,stroke:#3b82f6,color:#1e3a8a

9Verify outbound from a private instance

SSH into any EC2 instance in a private subnet that routes through the gateway, and confirm it can reach the internet:

# From a private instance routed through Cloud Spectra:
curl -s https://checkip.amazonaws.com

# The returned IP should match the gateway's Elastic IP
# (the AccessElasticIp value from the stack Outputs).
Multi-AZ tip: Point each AZ's private subnets at that same AZ's Cloud Spectra ENI. Because each AZ egresses through its own ENI, keeping traffic within the AZ avoids cross-AZ data transfer charges. The route-table details are in the User Guide.

7. Enable a feature

Every additional capability is turned on the same way: from the dashboard (or the config API on port 8080, or the Terraform provider). Per-feature configuration reference -- including firewall rules, the Squid proxy, TLS termination, and the AI Gateway -- lives in the User Guide. Here is the pattern using one Network-tier feature, the forward HTTP proxy.

flowchart LR
    A["Dashboard (HTTPS 9443)"] --> B["Toggle a feature on"]
    B --> C["Config saved to
SSM Parameter Store"] C --> D["Gateway nodes reconcile
and apply the change"] D --> E["Feature live
on all AZs"] style A fill:#dbeafe,stroke:#3b82f6,color:#1e3a8a style E fill:#d1fae5,stroke:#10b981,color:#065f46

10Enable the forward HTTP proxy (Squid)

  1. Open the dashboard over HTTPS and sign in.
  2. Go to the Web Proxy panel ("Web Proxy Gateway").
  3. Enable the proxy, set the listening port, and optionally configure response caching, domain filtering, and bandwidth limits.
  4. Copy the auto-generated proxy credential from the panel's Proxy Credential card. The username is always admin; the password is generated for you and can be re-issued with Rotate password.
  5. Save. The change is written to SSM Parameter Store and the gateway nodes apply it automatically.

Then point a client at the proxy:

# Send outbound traffic through the Cloud Spectra forward proxy
# (username is always "admin"; copy PROXY_PASSWORD from the
#  Web Proxy panel's Proxy Credential card)
export http_proxy=http://admin:<PROXY_PASSWORD>@<GATEWAY>:<PROXY_PORT>
export https_proxy=$http_proxy
curl -s https://checkip.amazonaws.com
The same pattern applies to every feature. Each of these is enabled from the dashboard with its own settings; see the User Guide for the full per-feature reference.
  • Network TLS termination (ACM), the IPVS L4 load balancer, destination NAT / port forwarding, the sticky secondary ENI (a pre-provisioned ENI with a fixed private IP that survives instance replacement), and the per-slot route table.
  • The sticky EBS data volume is universal -- it is available in every tier (floor: Platform), not just Network. See the tier lineup above.
  • Security the Suricata IDS/IPS, nftables firewall rules, domain and URL-category filtering, ET Open threat detection, community threat feeds (abuse.ch, CINS Army, Spamhaus DROP), TLS inspection, antivirus scanning, L7 App-ID, and SIEM export to Splunk, Sentinel, or QRadar.
  • Security the AI LLM proxy with its response cache, the semantic cache, and the AI Assistant -- an in-dashboard assistant, backed by Amazon Bedrock, that answers questions about gateway status, configuration, and troubleshooting. It runs in your account; no vendor control plane sees your data.
TLS inspection first for HTTPS scanning. Antivirus scanning inspects downloads that pass through the forward proxy using ClamAV over ICAP. Because HTTPS traffic is encrypted end-to-end, scanning HTTPS downloads requires TLS inspection (SSL bump) to be enabled first -- without it, only cleartext HTTP downloads are scanned. TLS inspection uses a self-managed certificate authority by default, and the keys never leave your account. See the User Guide for the CA trust-distribution steps.
Sizing. The Suricata IDS/IPS, antivirus scanning, and the AI LLM proxy run inline in the data plane and will not start below 4 vCPUs (see section 4). If you enable them on a smaller instance type, resize the gateway first.

Key ports

PortService
9443HTTPS management dashboard (nginx, per-instance self-signed certificate)
443TLS termination (HAProxy + ACM) Network
8080Configuration API
8090AI Gateway, OpenAI-compatible endpoint Security
configurableSquid forward proxy port
80HTTP redirect to HTTPS

8. Verify

A quick end-to-end check confirms the gateway is healthy and routing correctly.

CheckHowExpected result
Outbound NATcurl -s https://checkip.amazonaws.com from a private instanceReturns the gateway's Elastic IP
Dashboard reachableOpen the Elastic IP over HTTPS (port 9443)Login page loads
Status panelsSign in and open the dashboard overviewPer-AZ instances healthy; enabled features show active
Forward proxy (if enabled)curl through the proxy portRequest succeeds via the proxy

If outbound traffic does not return the gateway's Elastic IP, confirm the private subnet's route table sends 0.0.0.0/0 to the Cloud Spectra ENI for that AZ. Common questions and troubleshooting are collected in the FAQ.

Before tearing down: If you pointed existing route tables at Cloud Spectra ENIs, revert those routes before deleting the CloudFormation stack to avoid losing connectivity for instances that depend on the gateway.

9. Next steps

You now have a running Cloud Spectra Gateway with NAT live and a feature enabled. Where to go from here:

DocumentWhat it covers
User GuidePer-feature configuration for every tier: sNAT/dNAT, IPVS L4 load balancing, TLS termination (ACM), the sticky secondary ENI and per-slot route table, sticky EBS, per-AZ Auto Scaling, GWLB scaling, the Squid forward proxy, Suricata IDS/IPS and nftables firewall, domain and URL-category filtering, ET Open and community threat feeds, TLS inspection, antivirus scanning, L7 App-ID, SIEM export, the AI Gateway with response caching and the semantic cache, the AI Assistant, and the ElasticApps tier (vertical right-sizing, sticky EBS, and a stable endpoint for a single stateful app). Also the full Terraform and standalone-AMI walkthroughs.
ArchitectureHow the appliance is assembled: the per-AZ ASG model, GWLB/GENEVE data path, Elastic IP endpoint, SSM-backed configuration, the in-account data-plane design, and why there is no vendor control plane.
FAQCommon questions on cost, data residency, security, deployment options, scaling, and troubleshooting.
Recommended reading order: Start with the User Guide to configure the features you need, skim the Architecture guide to understand how it all fits together, and keep the FAQ handy for quick answers.