Environments

An application can be deployed to a zone, which is a combination of an environment and a region. This explains the rules governing the various environments. A list of all zones is also available.

NameDescriptionExpiryCluster sizes
dev Used for manual development testing. 7 days 1
perf Used for manual performance testing. 7 days min(3, spec)
test Used for automated system tests. 2 hours 1
staging Used for automated staging tests. 6 hours min(max(2, 0.1 * spec), spec)
prod Hosts all production deployments. No expiry max(2, spec)

Production

Deployments in prod must have at least one more node than required to handle peak load. A cluster is a container or content cluster, and a regular application has a container and a content cluster. A minimal, typical prod deployment therefore has 4 nodes.

Dev and Perf

dev and perf are deployed to directly as part of development or testing.

To make it convenient to deploy applications from prod to dev and perf without modification, resources are automatically downscaled in these zones. To control the resources you get in these zones, specify them explicitly for the environment in question (dev or perf) as described in deployment variants.

To deploy to the perf environment, use

mvn package vespa:deploy -Denvironment=perf

Vespa version

In dev and perf, the latest active Vespa version is used when deploying. An instance is not upgraded, unless deployed to. This means that sometimes, a deploy takes longer than normal, as it invokes a Vespa upgrade before deploying the application package.