Automation Flow for Updating Services
Automation Flow for Updating Services on Existing Deployed Infrastructure
1. Automated Updates and Upgrades:
Triggering the CI/CD Pipeline: When a developer pushes the latest updates (e.g., new features, patches, or bug fixes) to the respective branch in the version control system (e.g., Git), it automatically triggers the Continuous Integration/Continuous Deployment (CI/CD) pipeline configured for the customer or MSSP branch.
2. Helm Chart and Docker Image Creation:
Helm Chart Generation: As part of the CI/CD process, a new Helm chart is generated to define the Kubernetes application structure.
Docker Image Creation: The application is containerized into Docker images.
Image Push to Container Registry: The newly created Docker images are pushed to a central container registry (e.g., Docker Hub, private repository), where all service images are stored and versioned for easy retrieval.
3. Webhook Integration with StackStorm
Webhook Setup: A StackStorm webhook is integrated into the container registry. Upon the successful creation and push of new Docker images, the webhook automatically triggers a specific StackStorm workflow to initiate the update process.
Metadata Capture: The webhook captures essential metadata, such as the image version, and passes it as parameters to the StackStorm workflow for processing.
4. StackStorm Workflow Execution
Fetching Updated Images: The triggered StackStorm workflow retrieves the new Docker images and Helm charts from the container registry.
Preparing for Deployment: The workflow prepares the necessary files for deployment to the Kubernetes cluster.
5. Update Deployment to Kubernetes Cluster:
Helm-based Deployment: The StackStorm workflow leverages Helm to update the Kubernetes deployments.
Rolling Upgrade Process: The update process follows a rolling upgrade strategy, gradually replacing older versions of the pods with the new ones while ensuring service availability throughout the process.
6. Additional VM Requirement:
VM for Automation: An additional virtual machine is required to automate the deployment process via StackStorm, ensuring seamless execution of the workflows.
This automation flow ensures smooth, efficient updates and upgrades of services within the deployed infrastructure while maintaining high availability and minimal disruption.
Last updated