- Fastly Status
About Dynamic Servers
Last updated April 19, 2017
Fastly's Dynamic Servers feature distributes and directs incoming requests to a pool of servers that you dynamically manage. The benefits to using Dynamic Servers include:
- support for any cloud infrastructure provider and any type of server instances
- high availability of web applications when using health checks
- compatibility with TLS termination, HTTP/2, and IPv6
- server stickiness without requiring a cookie-based approach
To set up Dynamic Servers, you attach a pool to a service, then add versionless server entries that are stored separately from your VCL configuration. You can use the Fastly API to programmatically add, remove, and update pools and server entries.
IMPORTANT: This feature is part of a limited availability release. For more information, see our product and feature lifecycle descriptions.
How Dynamic Servers work
Like Edge Dictionaries and Edge ACLs, Dynamic Servers have two major components: the pool and the server entries within it. Pools act as containers for server entries that store the hostnames or IP addresses of servers to which incoming requests can be directed. Each pool is attached to a version of a service, but server entries are versionless and any changes will become effective immediately.
When Dynamic Servers might be useful
Dynamic Servers might be useful for organizations that need to load balance requests among servers in a single region, such as AWS EC2 instances in the US East region. They're also useful for evaluating new server instance types and new software deployments. Dynamic Servers are a great way to scale micro services.
You'll need to follow these steps:
- Create an empty pool in a working version of a service that's unlocked and not yet activated.
- Activate the new version of the service you associated with the empty pool.
- Add server entries to the newly created pool, keeping in mind the limitations.
Once the pool is created, properly associated, and filled with server entries, it can be called in your service.
Keep the following limitations in mind as you use Dynamic Servers:
- Each Fastly service can be configured with up to five origin servers. Server entries count as origins for the purposes of these limits. Contact email@example.com to enable more than five origin servers per service in your account.
- Pools created with custom VCL cannot be manipulated using the API. If you create a pool using the API, you can use the API to make changes to it, and use custom VCL to interact with it. If you create a pool using custom VCL, that pool's server entries must always be manipulated via custom VCL.
- Custom VCL manipulations are always versioned. This is true for pools and server entries created using custom VCL and for any logic created to interact with them.
- Pools need at least one server entry. Server entries cannot be deleted when a pool only has one entry left.
- Server entry deletions are permanent. If you delete a server entry, the entry is permanently removed from all service versions and cannot be recovered.
- When you delete a pool, you'll only delete it from the service version you're editing. Pools are tied to versions and can be cloned and reverted. When using pools, we want you to be able to do things like delete a pool from a current version of your service in order to roll back your configuration to a previous version using as few steps as possible.
- Event logs don't exist for server entry changes. If you use the API to add, update, or remove a server entry, there will be no record of it. The only record of a change will exist when you compare service versions to view the point at which the pool was associated with the service version in the first place.