This section describes the operation of the a9s Deployment Updater component.
The a9s Deployment Updater is intended to provide an automated way to update existing Service Instances, so that a all Service Instances can run with the latest version of the used BOSH release, stemcell or cloud config.
The a9s Deployment Updater is a BOSH errand that is part of each a9s Data Service deployment manifest as a dedicated Instance Group. The a9s Deployment Updater errand is not executed automatically during a deploy of a a9s Data Service but it is executed upon operator's request after the deploy task has finished.
The a9s Deployment Updater relies on the a9s Service Broker that is part of each a9s Data Service deployment to receive a list of Service Instances that should be updated or recreated. For each of these Service Instances, the corresponding endpoint in the a9s Service Broker is then called to trigger the desired action.
The a9s Deployment Updater supports two different strategies to update Service Instances of a given a9s Service Broker and these are described in the section below.
When the strategy
update is chosen, the a9s Deployment Updater requests a list of Service Instances with a specified
state and that are known by the configured a9s Service Broker. For each of these Service Instances an update is
triggered at the a9s Service Broker, which in the end leads to a
The Platform Operator can configure the a9s Deployment Updater to use a specific number of Service Instances as canaries to ensure that the update will run successfully. Additionally, the a9s Deployment Updater can be configured to run the Service Instance updates in parallel. For more information see Strategy Configuration - Update.
When the strategy
recreate is chosen, the a9s Deployment Updater requests a list of all Service Instances known by
the configured a9s Service Broker. For each of these Service Instances a recreate is triggered at the a9s Service
Broker which in the end leads a
bosh recreate --fix.
The BOSH recreate command is executed with the option
--fix. This way a Service Instance with an unresponsive agent is
also recreated instead of erroring. For more information see the BOSH documentation.
recreate can be used for example if the Platform Operator wants to rotate the NATS certificates used by
the BOSH director and its agents.
The a9s Deployment Updater is already part of each a9s Data Service deployment manifest using the default values described in a9s Deployment Updater Properties.
If you want to change one of these values you have to apply an Ops file to the related a9s Data Service deployment manifest.
Number of BOSH director workers
When the a9s Deployment Updater is configured to run Service Instance updates in parallel, the Platform Operator has to consider the number of workers configured for the related BOSH director. The errand itself uses already one worker when running, that means this worker is not available for the Service Instance updates.