Argo Rollouts is a Kubernetes controller and set of CRDs that provide advanced deployment capabilities such as blue-green, canary, canary analysis, experimentation, and progressive delivery features to Kubernetes. Argo Rollouts (optionally) integrates with ingress controllers and service meshes, lev...
Argo Rollouts is a Kubernetes controller and set of CRDs that provide advanced deployment capabilities such as blue-green, canary, canary analysis, experimentation, and progressive delivery features to Kubernetes. Argo Rollouts (optionally) integrates with ingress controllers and service meshes, leveraging their traffic shaping abilities to shift traffic to the new version during an update gradually. Additionally, Rollouts can query and interpret metrics from various providers to verify key KPIs and drive automated promotion or rollback during an update.
Size: 6.66 MB
Language: en
Added: Jul 05, 2024
Slides: 12 pages
Slide Content
Argo Rollouts Advanced Deployment Strategies for Kubernetes Riya
Lack of etiquette and manners is a huge turn off. KnolX Etiquettes Punctuality Join the session 5 minutes prior to the session start time. We start on time and conclude on time! Feedback Make sure to submit a constructive feedback for all sessions as it is very helpful for the presenter. Silent Mode Keep your mobile devices in silent mode, feel free to move out of session in case you need to attend an urgent call. Avoid Disturbance Avoid unwanted chit chat during the session.
Introduction to Argo Rollouts Key Features Benefits Architecture and Components Workflow of a rollout Difference between ArgoCD and Argo Rollout Demo: Implementing a Canary Deployment Best Practices
Introduction to Argo Rollouts An advanced open-source Kubernetes controller A part of the Argo Project under the CNCF Extends the basic Kubernetes deployment capabilities Focuses on progressive delivery
Key Features of Argo Rollout Canary Deployment Gradually shifts a portion of user traffic to a newer version of the application. Blue-Green Deployment Runs two versions of the application simultaneously, switches all the traffic to the newer version once it's verified. A/B Testing Distributes different versions of the application to different user segments to compare performance. Progressive Delivery Implements a phased approach to releasing features, using traffic management.
Benefits Reduced risk during deployment Incremental updates with minimal downtime Automated rollbacks Enables near-instantaneous switchovers Provides insights into user preferences Controlled and incremental feature releases
Controllers Integrations CRDs Rollout : Defines how a deployment should be performed. Experiment: Defines experiments to run different configurations or versions. Analysis Template: Specifies templates for automated analysis. Rollout Controller : Monitors the status of the rollout and makes decisions Experiment Controller: Useful for scenarios requiring multiple variants of a deployment Analysis Controller: Collects metrics and determines if the rollout should continue Ingress Controllers: Allows for dynamic traffic splitting and routing Service Meshes: Provides advanced traffic management and observability features Metrics Providers: Provides real-time metrics essential for automated analysis Architecture and Components
Workflow of a Rollout Rollout CRD Rollout Controller Traffic Management Analysis Controller Metrics Providers (Prometheus, etc.) Ingress/Service Mesh Monitoring/Metrics
Difference between ArgoCD and ArgoRollout
DEMO
Best Practices Understand and Choose the Right Deployment Strategy Automate Rollbacks Implement Health Checks Progressive Delivery Monitor Metrics and Logs Leverage Feature Flags Automate Testing and Validation Version Control for Configuration and GitOps