Creating a Policy

What is a Vamp Release Policy?

When a new version of your service is deployed for an application, a release policy is applied to determine whether the new version should replace the current, live version of the service.
The policy conditions are evaluated every 30 seconds by the Vamp Release Agent running in the application namespace on your Kubernetes cluster. The Release Agent uses data from Kubernetes and your chosen Ingress controller, plus any custom metrics that are part of the release policy.
Each release policy has at least one step. At the start of each step, a percentage of users are exposed to the new version, and the Release Agent monitors the performance of that new version. If the policy conditions are not met, the new version is rolled back with minimal impact on your users' experience.
If the new version of a service does not meet all the conditions described by the release policy, Vamp immediately switches all users back to the current, live version.
A rollback takes 30-60 seconds.

Example: Creating a Policy for an Ecommerce Service

In this example, we will create a policy for releasing minor versions of a service that is part of an ecommerce application.
First, we need three crucial pieces of information about the service itself:
  1. 1.
    The response time SLO.
  2. 2.
    The number of requests the service can expect during typical "peak" and "off peak" periods.
  3. 3.
    Which user segments to target.