Skip to the content.

Automation within SRE


Benefits of Automation within SRE

Requirements for Automations

What Good Automation looks like

  1. Being operations-lead and uses IaaC
  2. Automated functional and non-functional testing
  3. Canary tests and Blue-Green deployments
  4. Versioned and signed artifacts for deploying system components
  5. Enabled instrumentation to make services observable from the outside
  6. Uses performance testing to outline future growth
  7. Clear anti-fragility strategy

Being Operations-lead and Using IaaC

Automation effort is “Ops” lead, which means shifting operations at the early stage to ensure reliability engineering opprotunities.

Automated Functional and Non-functional Tests

In SRE, the pipeline is focused on introducing more and mroe reliability. In order to achieve this, tests need to be performed on both production and before-production environments.

Canary Testing and Blue-Green Deployments

Canary testing allows production testing by enabling automated rollback.

Blue-green deployments allows immutability by having a “dual prod”.

Versioned and Signed Artifacts for Deploying Components

The build step needs to version and digitally sign the comonents that make up the service, and all its components should be securely stored in a suitable artifact repository, such as Artifactory.

Making Services Observable

Instrumentation like monitoring shuold be enabled in pre-prod and prod environments to ensure that services are observable from the outside.

Notes on monitoring:

Tools that can make services externally observable

Tools for aggregating log files for failure analysis

Performance Testing for Outlining Future Growth

We can use performance testing to outline and test how our service can scale to meet the required future growth.

Clear Anti-Fragility Strategy

We can use chaos engineering tot est failures and address any discovered failures that may lead to service disruption.

When implemented correctly, this strategy ensures:

Tools to alert and support unplanned incidents:

Hierarchy of Automation Types

Based on an idea that is originated by Google, the hierarchy of automation types describes automation in different forms.

At the very beginning, there is no automation in place. We can see that automation starts to appear and mature as an organization steps up in the hierarchy. As an example, we could use a simple database and how automation can improve and support:

Secure Automation

With automation, we can remove the chance of human error or “willful sabotage”.

Secure Builds

Secure Tests

Secure Staging

Secure Production

How much automation do you have?

Manage

Plan

Create

Verify

Package

Secure

Release

Configure

Monitor

Defend

Resources