As mentioned in chapter “Design for Scale”, the automation of data services is not restricted to the creation of data service instances such as provisioning database clusters on-demand. In order to work at platform scale, delivering a number of data services to a large number of platform environments across multiple infrastructures requires the automation of the entire data service lifecycle beyond the lifecycle of resulting service instances.
The Data Service Automation Big Picture
The data service automation has to cover the following areas in order to cover the entire lifecycle comprehensively:
- Automation of new data service automation releases on arrival of new data service versions
- Continuous delivery of new data service automation releases into platform environments.
- Automation of the data service instance lifecycle
Automation of new Data Service Automation Releases
Obviously, without the automation of, for example, PostgreSQL in the first place, there’s no problem of delivering it into platform environments. However, it is the next PostgreSQL release that also requires automation and the data service release such as PostgreSQL or Redis may contain critical security fixes.
The automated release management of data services has the goal to minimize the delay between an upcoming data service version and its automation release.
Continuous Delivery of new Data Service Automation Releases Into Platform Environments
The most recent data service automation release containing the new data service version with a critical security patch must be delivered to platform environments as quickly as possible. Only then data service instances – the actual PostgreSQL or Redis databases, for example – can be updated by developers.
The continuous delivery pipeline of data service automation releases has the goal to minimize the delay between the automation release and its deployment to all platform environments.
Automation of Data Service Instance Lifecycle
Data service automation releases contain data service releases, service brokers and automation tools to allow developers to perform upgrades to recent data service versions, programmatically. This ensures that data services are always securely patches.
The goal of the data service instance automation is to minimize the effort and delay between a data service automation deployment to a platform environment and the update of all data service instances.