DevOps Transformation
November, 2016
1
Technical:
Always-ready, automated, uniform, and
independent releases on virtual
environments using latest software inside
resilient containers with service discovery
and multi-stage history-enabled feedback
systems.
Organizational: (not part of this presentation)
Product teams are independent having full
expertise and responsibility over software
development, deployment toolchain, and
software operations in production. Site
Reliability Team is responsible for the
internal and production infrastructure
reliability and performance.
DevOps Transformation
2
If these statements are true for your organization, you are there... keep on improving!
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
Improve the internal development process,
simplify repositories, stick to idea that branches
are evil, full scope coverage of testing which
includes unit, performance and full regression
testing, push code to main/trunk repository
daily at least, fully integrate and test fast in an
identical environment to production.
3
DevOps Transformation
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
Environment provision to be fully automated
using any configuration management tool
and/or use container based solutions (ex.
Dockerfiles).
4
DevOps Transformation
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
Internal and production environments to be the
same – uniform (or as similar as possible).
5
DevOps Transformation
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
Various products work independently and with
low risk to damage each other while having
version controls, easy integration, and
independent release cycles.
6
DevOps Transformation
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
In context of other words, we need to be able to
release at any time. The more often, the better
but it always a matter of what makes business
sense.
7
DevOps Transformation
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
Every service is virtualized and there is no
requirement to have hardware instances.
8
DevOps Transformation
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
No dependency on specific software versions in
any way because in due time this will be called
legacy software and it will hurt – even become
the main struggle for the DevOps approach.
9
DevOps Transformation
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
The assumption at this time is that containers
will contribute to resilience, immutability and
elasticity. The same can be achieved through
other means although it will be a bit more
complicated.
10
DevOps Transformation
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
With separation of concerns, automation and
dockerising you will need to manage and
orchestrate a lot of services. Applications and
infrastructure needs some sort of software that
deals with service management, healthchecks,
and discovery.
11
DevOps Transformation
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
Status results and/or automated tests must
quickly get back to developers on all
development stages, usually on: build, merge,
full regression, stress, performance, etc.
12
DevOps Transformation
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
Reliable logs not only from production but from
internal environments throughout different
stages too.
13
DevOps Transformation
Technical:
Always-ready, automated, uniform, and
independent releases on all virtual
environments using latest software inside
resilient containers with service discovery and
multi-stage history-enabled feedback
systems.
Meaning:
These are all tools that utilize information from
previous two words. In addition, they bring
visually clear information to every team and are
fine-tuned through machine learning and
dynamic thresholds.
14
DevOps Transformation
Questions?
Thank you!
15

DevOps Transformation - technical and organizational goals

  • 1.
  • 2.
    Technical: Always-ready, automated, uniform,and independent releases on virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Organizational: (not part of this presentation) Product teams are independent having full expertise and responsibility over software development, deployment toolchain, and software operations in production. Site Reliability Team is responsible for the internal and production infrastructure reliability and performance. DevOps Transformation 2 If these statements are true for your organization, you are there... keep on improving!
  • 3.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: Improve the internal development process, simplify repositories, stick to idea that branches are evil, full scope coverage of testing which includes unit, performance and full regression testing, push code to main/trunk repository daily at least, fully integrate and test fast in an identical environment to production. 3 DevOps Transformation
  • 4.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: Environment provision to be fully automated using any configuration management tool and/or use container based solutions (ex. Dockerfiles). 4 DevOps Transformation
  • 5.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: Internal and production environments to be the same – uniform (or as similar as possible). 5 DevOps Transformation
  • 6.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: Various products work independently and with low risk to damage each other while having version controls, easy integration, and independent release cycles. 6 DevOps Transformation
  • 7.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: In context of other words, we need to be able to release at any time. The more often, the better but it always a matter of what makes business sense. 7 DevOps Transformation
  • 8.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: Every service is virtualized and there is no requirement to have hardware instances. 8 DevOps Transformation
  • 9.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: No dependency on specific software versions in any way because in due time this will be called legacy software and it will hurt – even become the main struggle for the DevOps approach. 9 DevOps Transformation
  • 10.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: The assumption at this time is that containers will contribute to resilience, immutability and elasticity. The same can be achieved through other means although it will be a bit more complicated. 10 DevOps Transformation
  • 11.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: With separation of concerns, automation and dockerising you will need to manage and orchestrate a lot of services. Applications and infrastructure needs some sort of software that deals with service management, healthchecks, and discovery. 11 DevOps Transformation
  • 12.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: Status results and/or automated tests must quickly get back to developers on all development stages, usually on: build, merge, full regression, stress, performance, etc. 12 DevOps Transformation
  • 13.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: Reliable logs not only from production but from internal environments throughout different stages too. 13 DevOps Transformation
  • 14.
    Technical: Always-ready, automated, uniform,and independent releases on all virtual environments using latest software inside resilient containers with service discovery and multi-stage history-enabled feedback systems. Meaning: These are all tools that utilize information from previous two words. In addition, they bring visually clear information to every team and are fine-tuned through machine learning and dynamic thresholds. 14 DevOps Transformation
  • 15.