Komodor is a Kubernetes management platform that empowers everyone from Platform engineers to Developers to stop firefighting, simplify operations and proactively improve the health of their workloads and infrastructure.
Proactively detect & remediate issues in your clusters & workloads.
Easily operate & manage K8s clusters at scale.
Reduce costs without compromising on performance.
Empower developers with self-service K8s troubleshooting.
Simplify and accelerate K8s migration for everyone.
Fix things fast with AI-powered root cause analysis.
Explore our K8s guides, e-books and webinars.
Learn about K8s trends & best practices from our experts.
Listen to K8s adoption stories from seasoned industry veterans.
The missing UI for Helm – a simplified way of working with Helm.
Visualize Crossplane resources and speed up troubleshooting.
Validate, clean & secure your K8s YAMLs.
Navigate the community-driven K8s ecosystem map.
Kubernetes 101: A comprehensive guide
Expert tips for debugging Kubernetes
Tools and best practices
Kubernetes monitoring best practices
Understand Kubernetes & Container exit codes in simple terms
Exploring the building blocks of Kubernetes
Cost factors, challenges and solutions
Kubectl commands at your fingertips
Understanding K8s versions & getting the latest version
Rancher overview, tutorial and alternatives
Kubernetes management tools: Lens vs alternatives
Troubleshooting and fixing 5xx server errors
Solving common Git errors and issues
Who we are, and our promise for the future of K8s.
Have a question for us? Write us.
Come aboard the K8s ship – we’re hiring!
Hear’s what they’re saying about Komodor in the news.
Helm is a package manager for Kubernetes, allowing simplified management of Kubernetes applications. It simplifies deploying, upgrading, and handling Kubernetes resources. Similar to other package managers like apt for Debian, Helm is crucial for maintaining large-scale Kubernetes clusters.
Helm uses charts, which are pre-configured packages of Kubernetes resources. These charts are reusable, making deployments repeatable and easily upgradable. Through charts, administrators avoid the repetitive task of manually entering resource configurations, improving consistency and reducing human error.
This is part of a series of articles about Kubernetes Helm
The helm rollback command is useful for managing Kubernetes deployments, allowing administrators to revert to a previous release. This functionality is critical when a new deployment introduces errors or instability, ensuring that applications can quickly return to a known good state.
helm rollback
To perform a rollback, Helm uses the helm rollback command followed by the release name and the desired revision number. The command relies on the release history maintained by Helm, which records each deployment as a revision. By specifying a revision, Helm replaces the current state with the specified version, applying all configurations and settings from that revision.
Helm’s rollback capability supports various scenarios, including immediate reversion to the last known stable release or selective reversion to a specified prior state based on detailed release history analysis. This flexibility is useful in dynamic environments requiring rapid response.
Related content: Read our guide to Helm values.
The rollback capability in Helm offers several benefits:
Itiel Shwartz
Co-Founder & CTO
In my experience, here are tips that can help you better utilize Helm rollback:
Test deployments in non-critical environments before promoting them to production environments.
Use Helm hooks to automate pre- and post-rollback tasks. This can include running database migrations, clearing caches, or notifying relevant teams about the rollback status..
If you’re using a service mesh like Istio or Linkerd, leverage their traffic management capabilities to route traffic away from problematic deployments and toward stable releases during a rollback.
Set up monitoring and alerting specifically for Helm rollback metrics. Tools like Prometheus and Grafana can track the success rate, duration, and performance impact of rollbacks.
Create a formal approval process for rollbacks involving key stakeholders. This ensures that rollbacks are executed thoughtfully, considering the potential impact on various aspects of the application and business.
Rolling back to a previous release in Helm can save you from potential downtimes and issues caused by problematic upgrades. Below is a step-by-step guide on how to perform a rollback using Helm and kubectl.
kubectl
First, identify the release you want to roll back. Use the helm ls command to list all releases. Adding the -A flag lists releases across all namespaces:
helm ls
-A
helm ls -A
This command provides the names and details of all current releases, helping you locate the release you need to address.
Next, determine the revision history of the release you want to roll back. Use the helm history command, providing your release name:
helm history
helm history [release_name]
For example, if your release name is stock-price-api, the command would be:
helm history stock-price-api
This will output a list of revisions along with their status, date, and description. It helps you decide which revision to revert to based on when the release was stable or functioning as expected.
Once you have identified the revision number, use the helm rollback command to revert to that specific revision. The syntax is:
helm rollback [release_name] [revision_no]
For example, to roll back stock-price-api to revision 1, you would use:
helm rollback stock-price-api 1
If you omit the revision number, Helm will rollback to the previous revision by default:
helm rollback stock-price-api
The output should be similar to this:
REVISION UPDATED STATUS CHART DESCRIPTION 1 Fri Oct 11 03:25:21 2024 superseded stock-price-api-0.1.0 Install complete2 Fri Oct 11 03:41:57 2024 deployed stock-price-api-0.1.0 Upgrade complete
Roll back to revision 1:
Helm provides several advanced options to customize the rollback process:
--cleanup-on-fail
--dry-run
--no-hooks
--wait
Example of an advanced rollback command:
helm rollback stock-price-api 1 --cleanup-on-fail --dry-run --no-hooks --wait
Implementing effective rollback procedures is crucial for maintaining the stability and reliability of Kubernetes applications. Here are some key strategies to optimize the Helm rollback process:
Komodor’s platform streamlines the day-to-day operations and troubleshooting process of your Kubernetes apps. Specifically when it comes to Helm Charts, Komodor’s platform provides you with a visual dashboard to view the installed Helm charts, see their revision history and corresponding k8s resources. It also allows you to perform actions such as rolling back to a revision or upgrading to a newer version.
At its core, the platform gives you a real-time, high-level view of your cluster’s health, configurations, and resource utilization. This abstraction is particularly useful for routine tasks like rolling out updates, scaling applications, and managing resources. You can easily identify bottlenecks, underutilized nodes, or configuration drift, and then make informed decisions without needing to sift through YAML files or execute a dozen kubectl commands.
Beyond just observation, Komodor integrates with your existing CI/CD pipelines and configuration management tools to make routine tasks more seamless. The platform offers a streamlined way to enact changes, such as scaling deployments or updating configurations, directly through its interface. It can even auto-detect and integrate with CD tools like Argo or Flux to support a GitOps approach! Komodor’s “app-centric” approach to Kubernetes management is a game-changer for daily operational tasks, making it easier for both seasoned DevOps engineers and those new to Kubernetes to keep their clusters running smoothly, and their applications maintaining high-availability.
To learn more about how Komodor can make it easier to empower you and your teams to manage & troubleshoot K8s, sign up for our free trial.
Share:
and start using Komodor in seconds!