© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
L A G O S
What I learned from DevOps
Cobus Bernard
SeniorTechnical Evangelist
AmazonWeb Services
09.11.19
@cobusbernard
cobusbernard
cobusbernard
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
• Developer for 15 years
• AWS Customer for 8 years
• Founded DevOps Cape Town Usergroup
• Co-organizes DevOpsDays Cape Town
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Expert:
noun
Someone who can tell you dozens of
ways how not to do something.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
https://twitter.com/ToriWieldt/status/1192515583088189440
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
1. Be the person that helps others
understand and adopt DevOps
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
2. Learn from mistakes without
blaming people
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ulture
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ulture
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
https://imgs.xkcd.com/comics/is_it_worth_the_time.png
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Monolith
Does everything
Monoliths are OK
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
developers services
monitorreleasetestbuild
delivery pipelines
monitorreleasetestbuild
monitorreleasetestbuild
monitorreleasetestbuild
monitorreleasetestbuild
monitorreleasetestbuild
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Infrastructure ascode goals
1. Make infrastructure changes repeatable and predictable
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Source
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Source Build
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Source Build Test
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Source Build Test Deploy
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Infrastructure ascode goals
1. Make infrastructure changes repeatable and predictable
2. Release infrastructure changes using the same tools as code changes
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Infrastructure ascode goals
1. Make infrastructure changes repeatable and predictable
2. Release infrastructure changes using the same tools as code changes
3. Replicate production environment in a staging environment to enable
continuous testing
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
3. Use Infrastructure as Code to
build up all your infrastructure
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWSCodeBuild
• Each build runs in a new Docker container for a
consistent, immutable environment
• Docker and AWS CLI are installed in every official
CodeBuild image
• Provide custom build environments suited to your
needs through the use of Docker images
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWSCodeBuild:Any Project
version: 0.2
phases:
build:
commands:
- make build
- make test
- make package
artifacts:
type: zip
files:
- my_app.json
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“I would not give a fig for the simplicity
this side of complexity, but I would give
would give my life for the simplicityon
simplicity on the other side of
complexity Oliver Wendell Holmes Jr.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
4. Keep your builds simple and
allow easy local building & testing
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ulture
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ulture
utomation
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ulture
utomation
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
5. It is much easier to convince
someone with data
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Reading homework
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ulture
utomation
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ulture
utomation
easure
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ulture
utomation
easure
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
6. You have something to teach
others, just think of a problem you
solved in the last month, then do
a talk on it
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dan Maherat DevOpsDaysCapeTown2019
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Need your help for the next slide,
please get ready to take a photo
and tweet to:
@phrawzty
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“Programming: pressing plastic
squares in roughly the right order”
Dan Maher, DevOpsDays Cape Town 2019
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Thank you!
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Cobus Bernard
SeniorTechnical Evangelist
Amazon Web Services
L A G O S
@cobusbernard
cobusbernard
cobusbernard
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Multi-AZ architecture
Region
Availability zone a Availability zone b Availability zone c
Instances Instances Instances
DB Instance DB instance
standby
Elastic Load
Balancing (ELB)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Multi-AZ architecture
Region
Availability zone a Availability zone b Availability zone c
Instances Instances Instances
DB Instance DB instance
standby
Elastic Load
Balancing (ELB)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Multi-AZ architecture
Region
Availability zone a Availability zone b Availability zone c
Instances Instances Instances
DB Instance DB instance
standby
Elastic Load
Balancing (ELB)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Multi-AZ architecture
Region
Availability zone a Availability zone b Availability zone c
Instances Instances Instances
DB Instance DB instance
new master
Elastic Load
Balancing (ELB)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Availability zone 1
Auto Scaling group
AWS Region
Availability zone 2
Auto-scaling for self-healing
Elastic Load
Balancing (ELB)
X

2019-11-09 DevOpsNG - What I've learned from DevOps

  • 1.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. L A G O S What I learned from DevOps Cobus Bernard SeniorTechnical Evangelist AmazonWeb Services 09.11.19 @cobusbernard cobusbernard cobusbernard
  • 2.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. • Developer for 15 years • AWS Customer for 8 years • Founded DevOps Cape Town Usergroup • Co-organizes DevOpsDays Cape Town
  • 3.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 4.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 5.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Expert: noun Someone who can tell you dozens of ways how not to do something.
  • 6.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 7.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 8.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. https://twitter.com/ToriWieldt/status/1192515583088189440
  • 9.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. 1. Be the person that helps others understand and adopt DevOps
  • 10.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 11.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 12.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 13.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 14.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 15.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 16.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 17.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. 2. Learn from mistakes without blaming people
  • 18.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 19.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. ulture
  • 20.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. ulture
  • 21.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. https://imgs.xkcd.com/comics/is_it_worth_the_time.png
  • 22.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 23.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 24.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 25.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Monolith Does everything Monoliths are OK
  • 26.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 27.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 28.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. developers services monitorreleasetestbuild delivery pipelines monitorreleasetestbuild monitorreleasetestbuild monitorreleasetestbuild monitorreleasetestbuild monitorreleasetestbuild
  • 29.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Infrastructure ascode goals 1. Make infrastructure changes repeatable and predictable
  • 30.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Source
  • 31.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Source Build
  • 32.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Source Build Test
  • 33.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Source Build Test Deploy
  • 34.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Infrastructure ascode goals 1. Make infrastructure changes repeatable and predictable 2. Release infrastructure changes using the same tools as code changes
  • 35.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Infrastructure ascode goals 1. Make infrastructure changes repeatable and predictable 2. Release infrastructure changes using the same tools as code changes 3. Replicate production environment in a staging environment to enable continuous testing
  • 36.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. 3. Use Infrastructure as Code to build up all your infrastructure
  • 37.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 38.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. AWSCodeBuild • Each build runs in a new Docker container for a consistent, immutable environment • Docker and AWS CLI are installed in every official CodeBuild image • Provide custom build environments suited to your needs through the use of Docker images
  • 39.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. AWSCodeBuild:Any Project version: 0.2 phases: build: commands: - make build - make test - make package artifacts: type: zip files: - my_app.json
  • 40.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. “I would not give a fig for the simplicity this side of complexity, but I would give would give my life for the simplicityon simplicity on the other side of complexity Oliver Wendell Holmes Jr.
  • 41.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. 4. Keep your builds simple and allow easy local building & testing
  • 42.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. ulture
  • 43.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. ulture utomation
  • 44.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. ulture utomation
  • 45.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. 5. It is much easier to convince someone with data
  • 46.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Reading homework
  • 47.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. ulture utomation
  • 48.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. ulture utomation easure
  • 49.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. ulture utomation easure
  • 50.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. 6. You have something to teach others, just think of a problem you solved in the last month, then do a talk on it
  • 51.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 52.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Dan Maherat DevOpsDaysCapeTown2019
  • 53.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Need your help for the next slide, please get ready to take a photo and tweet to: @phrawzty
  • 54.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. “Programming: pressing plastic squares in roughly the right order” Dan Maher, DevOpsDays Cape Town 2019
  • 55.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 56.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 57.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 58.
    Thank you! © 2019,Amazon Web Services, Inc. or its affiliates. All rights reserved. Cobus Bernard SeniorTechnical Evangelist Amazon Web Services L A G O S @cobusbernard cobusbernard cobusbernard
  • 59.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 60.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Multi-AZ architecture Region Availability zone a Availability zone b Availability zone c Instances Instances Instances DB Instance DB instance standby Elastic Load Balancing (ELB)
  • 61.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Multi-AZ architecture Region Availability zone a Availability zone b Availability zone c Instances Instances Instances DB Instance DB instance standby Elastic Load Balancing (ELB)
  • 62.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Multi-AZ architecture Region Availability zone a Availability zone b Availability zone c Instances Instances Instances DB Instance DB instance standby Elastic Load Balancing (ELB)
  • 63.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Multi-AZ architecture Region Availability zone a Availability zone b Availability zone c Instances Instances Instances DB Instance DB instance new master Elastic Load Balancing (ELB)
  • 64.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Availability zone 1 Auto Scaling group AWS Region Availability zone 2 Auto-scaling for self-healing Elastic Load Balancing (ELB) X

Editor's Notes

  • #3 Add about having 5 for the 2nd meetup
  • #9 Remember to say ”I’ve done this” Platform engineer – talk about the happy path
  • #13 Locking out the users story here
  • #43 OPTIONAL
  • #44 OPTIONAL
  • #45 Story on DB migration – reduce time down to 3h from 24h Working on bottlenecks