Skip to content
This repository was archived by the owner on Oct 24, 2024. It is now read-only.
This repository was archived by the owner on Oct 24, 2024. It is now read-only.

Support Blue Green Deployment #8

@akshat-kumar-singhal

Description

@akshat-kumar-singhal

Infra Provisioning Changes

Instead of provisioning a single ingress and service, provision the below:

  • Blue: Ingress, Service, Deployment
  • Green: Ingress, Service, Deployment
  • Main: Ingress

Workflow Changes

Add below steps:

  1. Identify current active service, i.e. blue or green. In case the current setup is non blue-green, create both blue and green services & ingresses, copy the deployment and replica manifests of the current service to blue, repoint ingress to "blue" ingress and then proceed to setup on the other non-active service
  2. Deploy latest image to non-active service
  3. Run sanity tests on the newly deployed service using the corresponding ingress
  4. If the tests succeed, repoint main application ingress to the newly deployed service. Else exit the workflow
  5. Scale down the older deployed service to min pod = 1

Points to take care of:

  • Applications deployed on blue or green should not have the -blue -green suffix being sent in the application logs, metrics or traces. Another label may be added to the
  • Blue Green Deployment to be applied only in case of the blue-green deployment flag passed to the helm chart
  • Proper support for transitioning users between blue-green and normal deployment to avoid downtime/ service disruption

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions