Enterprise-ready environments on-demand

1-click secure and scalable private clouds in the most stable, affordable AWS regions.

Ready, steady, scale

Environments are virtual private clouds configured with all of the subnets, gateways, and clusters you need to deploy your applications. Your VPC is ready to adapt at any time, regardless of your initial availability needs and release grade.

Development

Fastest deploys, lowest cost

Staging

Production parity, low cost

Production

Extended log retention, reliable uptime


Well-architected

Built on AWS Well-Architected Framework principles. Subnet configuration and selection that scales. Region and release grade-specific CIDR block allocation.

Dual-stack

Communicate over IPv6 and IPv4. FlexStack environments are future-proof and more cost-efficient than traditional IPv4 VPCs.

Architecture automation

Don't need a load balancer? Don't pay for one. FlexStack environments autoscale based on your usage.

Highly available

Two-nines? Three-nines? Four-nines? You set your availability target, we'll handle the rest.

Secure by default

Built-in resource access controls, zero-config database access, and enhanced network security for cautious teams.

Change is inevitable

FlexStack environments are designed to adapt to your needs. Whether you're rapidly growing your service count, looking for higher availability, or want to promote an environment to production, FlexStack has you covered. We make it simple to change your environment when your goals change – without downtime.

A screenshot of an environment's target availability settings

Target availability

Availability refers to the uptime and reliability of your services, often expressed as a percentage (e.g., 99.9% uptime, or three-nines). Actual availability is a function of your environment's design and the services you deploy, but FlexStack will help you meet your target.

Learn more about availability targets

Release grades

Release grades are a way to configure your environments based on their intended use. For example, you might have a development environment that's optimized for fast deploys and low cost, or a production environment that's designed for high availability and reliability.

Development

Optimize for early-stage application development and testing. Focus on cost-efficiency, deploying cheaper resources. Configure log retention, metric reporting, and alert thresholds with cost-savings in mind.

Staging

Create intermediate environments between development and production that closely mirror production. Use staging to test new features, integrations, and configurations before deploying to production while keeping costs low.

Production

Optimize for high availability and reliability. Configure production environments to handle changes to service workload and ensure consistent uptime. Retain logs and metrics for 90 days, so you can analyze performance and troubleshoot issues. Use production environments to host your customer-facing applications and services.

Patterns to build a fortress

Environments are configured to make security effortless. With built-in resource access controls, zero-config database access, and enhanced network security, you can be confident that your applications are set up to protect your data and your users.

Enhanced network security

For certain production use cases where security and isolation are paramount, FlexStack provides the flexibility to deploy services exclusively on private subnets.

Better security, effortless savings

In production environments, we provision a NAT gateway provider that is managed by AWS. For Development and Staging environments, the enhanced security option uses a t4g.nano NAT instance in a single availability zone instead.

Resource RBAC

At FlexStack we love patterns that make security easier. Use tags to control access from FlexStack services to other AWS resources in your account that support tagging – from EC2 instances, SNS topic, and S3 buckets to IAM roles.

Tag-based access controls

One tag is worth a thousand permissions

FlexStack adds tags to your resources that describe the project, environment, and component they belong to, for example FlexStack:ComponentID. When you add these magic tags to your AWS resources, service roles stipulate that they may access that resource.

Read-only or full-access

FlexStack service roles are designed to be as restrictive as possible. You can assign resources a role that only allows read-only access, or a role that allows full access to the resource from a FlexStack service.

Zero-config database access

We've made it simple to integrate RDS and other AWS managed database solutions with your FlexStack services. With zero-config database access, you can connect to your database without needing to manage your own network security groups.

Databases guide

Infrastructure as code

Use FlexStack to bootstrap your infrastructure as code journey. Environments are fully importable by Terraform, CDK, and other IaC tools cutting out the boilerplate and getting you to the good stuff faster.

Terraform

Data sources make it easy to reference FlexStack resources. We've fully documented our VPC, subnet, and security group exports so you can easily import them into your Terraform projects. Use the FlexStack API to list an environment's outputs and resources.

CloudFormation exports