rollout

Configure batched container boot rollouts for Kamal deployments.

Updated Jun 30, 2026
One-click install
npx skills add https://github.com/donnfelker/kamal-skills --skill rollout-donnfelker
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: rollout
Source: https://github.com/donnfelker/kamal-skills/tree/main/skills/rollout
Command: npx skills add https://github.com/donnfelker/kamal-skills --skill rollout-donnfelker

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This skill prevents infrastructure instability during deployments by replacing the default parallel container restart behavior with controlled, batched rollouts that protect your system from thundering-herd load spikes.

Core Features & Use Cases

  • Batch Deployment: Configure specific limits to boot containers in groups rather than all at once.
  • Stability Pauses: Introduce mandatory wait times between batches to allow for cache warming and connection rebalancing.
  • Role Parallelism: Toggle whether multiple roles on a single host boot sequentially or in parallel.
  • Use Case: When deploying to a large fleet of web servers, use this skill to boot 25% of the fleet at a time with a 10-second pause between groups to ensure the database remains stable.

Quick Start

Configure the boot strategy in the deploy.yml file by setting a limit of 25 percent and a wait time of 10 seconds to ensure a gradual rollout across the server fleet.

Frequently Asked Questions about rollout

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent thundering-herd load spikes during container deployments?

Preventing thundering-herd load spikes requires replacing default parallel restarts with batched rollouts. You can configure Kamal deployment pacing to boot containers in groups with mandatory wait intervals, allowing cache warming and connection rebalancing for infrastructure stability.

How do I configure batch sizes and wait intervals for Kamal deployments?

Configuring batch sizes and wait intervals for Kamal deployments involves setting limits in your deploy.yml file. You can specify a percentage of the server fleet to boot at once, such as 25 percent, and define a 10-second wait time between groups to ensure gradual rollouts.

Can I control whether multiple roles on a single host boot sequentially or in parallel?

You can control role parallelism on a single host by toggling the boot strategy in your deployment configuration. This allows you to determine whether multiple roles boot sequentially or in parallel, preventing resource exhaustion during application restarts across your server fleet.

What is the best way to gradually update a large fleet of web servers without destabilizing the database?

The best way to gradually update a large web server fleet is to use controlled, batched rollouts. By configuring your deployment to boot 25% of the fleet at a time with a 10-second pause between groups, you ensure the database remains stable during application restarts.

When do I need to use configurable deployment pacing for infrastructure scaling?

You need configurable deployment pacing for infrastructure scaling when updating large server fleets to prevent resource exhaustion or connection spikes. It is required during application restarts where gradual updates are necessary to maintain system stability and allow connection rebalancing.