ConceptsSelf-healing
What the reconciler does
In each pass, the reconciler makes the containers of a service equal to its live deploy.
Keep. It keeps the containers of the live deploy that run, up to your number of instances.
1 / 4
The reconciler is a loop. One turn of the loop is a pass. The pass uses the snapshot of the live deploy and the number of instances that you set.
When a pass runs
| Moment | Detail |
|---|---|
| At boot | One time, when ferryd starts |
| 2 seconds later | One more time |
| Then each 10 seconds | The normal loop |
| After a change of instances | Immediately after you scale, suspend or resume a service |
See the result
ferry status api- Remove. Ferry removes immediately the containers of a deploy that did not go live: failed, canceled or interrupted. The other containers get 10 seconds to stop.
- Start. The new instance gets the same image, environment, command, port, disk and resource limits as the deploy. A setting that you changed later applies only at the next deploy or restart.
- Routes. A suspended service gets the
503page. A service with no instance that accepts connections gets it too.
The reconciler does not touch a service while one of its deploys starts instances and tests their health. That deploy controls the service.
See Reconciler internals.