Blue_Green_Deployment
This document outlines the blue/green deployment strategy where we maintain a single active cluster serving production traffic. The inactive cluster sits around awaiting a new deployment, before becoming active again.
While troubleshooting or working with blue-green deployments you might need to:
Identifying the Current Active Deployment
Section titled “Identifying the Current Active Deployment”To determine which deployment is currently active:
- Access the Grafana Dashboards.
- Open the CI Runners Deployment Overview Dashboard.
- Locate the ‘instance’ column in the ‘GitLab Runner Versions’ section to identify the active deployment.
Executing ChatOps Commands
Section titled “Executing ChatOps Commands”Use ChatOps commands in the #production channel to manage deployments. It’s crucial to deploy only one environment (blue or green) at a time. The ChatOps commands logic lives in the Deployer repo
Deploying and Draining Runner Managers
Section titled “Deploying and Draining Runner Managers”-
Deploy the Green Environment (When Blue is Active): This command enables and executes chef-client on the green deployment to install the GitLab Runner version defined in the Chef repository. It also starts the GitLab Runner service.
/runner run start private green
-
Drain the Blue Environment (After Green is Deployed): This command initiates the process of draining the runners and deleting the machines in the blue environment. This operation may take several hours up to a full day to complete.
/runner run stop private blue
A list of all the the available commands can be found in Deployer repo
Support and Queries
Section titled “Support and Queries”For any questions or support, reach out to folks in #g_runner_saas Slack Channel.