SlideShare uma empresa Scribd logo
1 de 54
Baixar para ler offline
From to
from oops to NoOps
CONTINUOUS DEPLOYMENT CLOUD HOSTING
31/1/2018 ApiDays Global @Paris
HI.
Ori Pekelman
Chief Product Officer @ Platform.sh
I am oripekelman everywhere
(github/linked-in/twitter)
They tell you in these conferences
that APIs are as much about code as
it is about operations. And that
DevOps is not about tools, but about
culture.
On both accounts they are partially right.
I am going to tell you that it’s not
only about culture, or tools but also
about abstractions.
And this conference is about
Sustainability. Which is a concept.
I will talk about abstractions, semantics
and such.
But this talk means to be useful. Yell
at me if I am not.
So .. before going into abstractions let’s talk some real-world
So .. before going into abstractions let’s talk some real-world
Equifax is a clusterfuck of such
epic proportions it is not an
easy subject.
Their brand now is the following:
Equifax is a clusterfuck of such
epic propotions it is not an
easy subject
For people whose main line of
business is consumer trust.
Well, good thing that consumers
are not their clients.
We will look at just two of the
epic moments of this saga.
1. The infamous
CVE-2017-5638
We will look just at two of the
epic moments of this saga.
1. The infamous
CVE-2017-5638
We will look just at two of the
epic moments of this saga.
1. The infamous
CVE-2017-5638
At $4,000,000,000 this person is
worth way more than Steve
Austin at just $29,791,399
(adjusted for inflation).
What do you gather was the
salary of a person who has a
manual/menial “update this
package” job might be?
“We can rebuild him. We have
the technology. We can make
him better than he was. Better,
stronger, faster.”
Jay Rogers: The HL-10. We
rebuild it from scratch. Modern
technology can do wonders
today.
Col. Steve Austin: Yes, I know...
Abstractions
Was this a fault of Gary? Was this the fault
of his manager Diane?
I posit this was the fault of thinking
software wrong.
What is software?
● Think of it as a fractal. Not a box.
● There is the application code, yes.
● But usually multiple applications in
multiple programming languages.
● That depend on multiple
data-backends
● That contain a state of the world
● All of which run on multiple platforms
with a complex network structure that
has semantics.
What is software?
Code by itself doesn’t run. It is a useless
thing. It needs the infrastructure. It needs a
state of the world (data).
If you are testing only the code you are not
testing the software.
Software is a function of time.
What is software?
● Over time two things happen to
software:
○ Creating new stuff
○ Repairing broken stuff
What is software?
Creating new stuff is voluntary. You do it
on your own rhythm. The better
automation you have the faster and more
productive you will be.
The better your tests are … less you will
suffer from quality degradation and rot.
What is software?
What is software?
Repairing broken stuff must not
be on your own rhythm.
The fix CVE-2017-5638 should
have been deployed an hour
after it was out.
Robustness
Robustness used to be about minimising
change. Marble looks robust. Cement.
The realization that what resists change is
brittle is a recent one.
Robustness
We used to think about software as code.
As a state of code.
Now we must think about software as
change, as a flow. As a dynamic system
where people, machines, and processes
interact continuously.
Semantics
At platform.sh we really do spend a bunch
of time asking ourselves not “how do you
build”; not even “how do you build
consistently”; but “what does it mean to
consistently build in a world where change
is good, where you do really want to be
able to push security fixes into production
as soon as they are available because you
don’t want to be an Equifax but you also
want a stable world.”.
1. Version everything. Make everything
auditable.
Think holistically.
2. Software is Code. Data Services. Data
State. Network Configuration. Permissions.
Underlying infrastructure.
Think holistically.
3. Make everything semantic. A build script
is not semantic. A minor version is not
semantic.
Think holistically.
Think holistically.
4. Always be building. Consistently.
Immutable infrastructures.
1. Hey, can you give me, in 5 minutes, the
version of every goddamn library we
are running in production?
2. Hey, how much time would it take you
to move to another cloud provider?
3. Hey, do we run our Root File System
Read-Only?
Test yourself. Test your Ops.
Ask:
Equifax happened
Because without full automation
and thinking holistically, in
system terms, fear of change will
drive the business.
Equifax happened
Because there was a specific
procedure in place to update a
specific part of the software to
be done by a human.
Let’s see if I talked really, really
fast and have time for epic
failure #2!
No. It wasn’t this. That would be half-competent.
Is it Diane or Gary’s fault
again?
No. It is about snowflakes. When
infrastructure is done by hand
you need a “change request
form”.
There is no way in hell a “mature
enterprise” will have procedures
that are lightweight enough to
roll-out a full new project in a
day. If you need to fill a form. If
you need to go through IT and
Security for this specific thing.
In an emergency someone will
“power through”.
And when that happens. Well
you’ve seen.
Full automation allows you no
only to have robust
management of your compliance
requirements; But also it allows
you to manage waivers and
exceptions; Fast.
If you can not rebuild your full
infrastructure in minutes. From
scratch. Applying all security
updates for every single service
and library. And be 100% sure
that nothing will possibly break.
It is because you were thinking
software wrong.
And you might get Equifaxed.
Bonus Bonus Slide, so how is
Equifax doing right now?
Can I have some version discovery please?
https://developercentre.equifax.com.au/CHANGELOG.txt
https://services.inivio.com.au/WebResource.axd?d=test
curl -I https://developercentre.equifax.com.au
X-Powered-By: PHP/5.4.16
https://www.cvedetails.com/vulnerability-list/vendor_id-74/produc
t_id-128/version_id-149817/PHP-PHP-5.4.16.html
Git-driven infrastructure
With a single git push
deploy an arbitrarily complex
cluster
(with micro-services, messages
queues and the lot.)
Clone a byte-for-byte copy of
your production site in less
than a minute
Every git branch has a url
Eliminates QA bottlenecks
14x faster human testing and validation
Fail proof, predictable deployments
Quick bug fixes and security release
resolution
Fully managed backend services
Unique, triple-redundant
architecture
Automatic high-availability
High Performance
Dynamic scaling
Multi-Cloud. Sovereign Hosting.
GDPR compliant. The works.
@platformsh
CONTINUOUS DEPLOYMENT CLOUD HOSTING

Mais conteúdo relacionado

Mais procurados

Mais procurados (19)

Thinking Architecturally with Nate Schutta
Thinking Architecturally with Nate SchuttaThinking Architecturally with Nate Schutta
Thinking Architecturally with Nate Schutta
 
Top 10 Things Admins Can Learn from Developers (without learning to code)
Top 10 Things Admins Can Learn from Developers (without learning to code)Top 10 Things Admins Can Learn from Developers (without learning to code)
Top 10 Things Admins Can Learn from Developers (without learning to code)
 
Lies Enterprise Architects Tell - Data Day Texas 2018 Keynote
Lies Enterprise Architects Tell - Data Day Texas 2018  Keynote Lies Enterprise Architects Tell - Data Day Texas 2018  Keynote
Lies Enterprise Architects Tell - Data Day Texas 2018 Keynote
 
DSC UTeM DevOps Session#1: Intro to DevOps Presentation Slides
DSC UTeM DevOps Session#1: Intro to DevOps Presentation SlidesDSC UTeM DevOps Session#1: Intro to DevOps Presentation Slides
DSC UTeM DevOps Session#1: Intro to DevOps Presentation Slides
 
DevOps and the Future of InfoSec
DevOps and the Future of InfoSecDevOps and the Future of InfoSec
DevOps and the Future of InfoSec
 
Coordination and Productivity Issues in Free Software: The Role of Brooks' Law
Coordination and Productivity Issues in Free Software: The Role of Brooks' LawCoordination and Productivity Issues in Free Software: The Role of Brooks' Law
Coordination and Productivity Issues in Free Software: The Role of Brooks' Law
 
Irresponsible Disclosure: Short Handbook of an Ethical Developer
Irresponsible Disclosure: Short Handbook of an Ethical DeveloperIrresponsible Disclosure: Short Handbook of an Ethical Developer
Irresponsible Disclosure: Short Handbook of an Ethical Developer
 
OWASP AppSec Cali 2018 - Enabling Product Security With Culture and Cloud (As...
OWASP AppSec Cali 2018 - Enabling Product Security With Culture and Cloud (As...OWASP AppSec Cali 2018 - Enabling Product Security With Culture and Cloud (As...
OWASP AppSec Cali 2018 - Enabling Product Security With Culture and Cloud (As...
 
Innotech Austin 2017: The Path of DevOps Enlightenment for InfoSec
Innotech Austin 2017: The Path of DevOps Enlightenment for InfoSecInnotech Austin 2017: The Path of DevOps Enlightenment for InfoSec
Innotech Austin 2017: The Path of DevOps Enlightenment for InfoSec
 
Leading Distributed Teams - Stretch Conference 2020
Leading Distributed Teams - Stretch Conference 2020Leading Distributed Teams - Stretch Conference 2020
Leading Distributed Teams - Stretch Conference 2020
 
Securing The Studio: How Netflix Protects Productions From Pitch To Play
Securing The Studio: How Netflix Protects Productions From Pitch To PlaySecuring The Studio: How Netflix Protects Productions From Pitch To Play
Securing The Studio: How Netflix Protects Productions From Pitch To Play
 
What We Learned from Three Years of Sciencing the Crap Out of DevOps
What We Learned from Three Years of Sciencing the Crap Out of DevOpsWhat We Learned from Three Years of Sciencing the Crap Out of DevOps
What We Learned from Three Years of Sciencing the Crap Out of DevOps
 
The Path of DevOps Enlightenment for InfoSec
The Path of DevOps Enlightenment for InfoSecThe Path of DevOps Enlightenment for InfoSec
The Path of DevOps Enlightenment for InfoSec
 
JavaLand 2022 - Debugging distributed systems
JavaLand 2022 - Debugging distributed systemsJavaLand 2022 - Debugging distributed systems
JavaLand 2022 - Debugging distributed systems
 
Bringing Open-Source Practices to Your Day Job
Bringing Open-Source Practices to Your Day JobBringing Open-Source Practices to Your Day Job
Bringing Open-Source Practices to Your Day Job
 
Atlassian - Software For Every Team
Atlassian - Software For Every TeamAtlassian - Software For Every Team
Atlassian - Software For Every Team
 
Welcome to the blue team! How building a better hacker accidentally built a b...
Welcome to the blue team! How building a better hacker accidentally built a b...Welcome to the blue team! How building a better hacker accidentally built a b...
Welcome to the blue team! How building a better hacker accidentally built a b...
 
Microservices Workshop - Craft Conference
Microservices Workshop - Craft ConferenceMicroservices Workshop - Craft Conference
Microservices Workshop - Craft Conference
 
Skills Matter DevSecOps eXchange Forum 2022 - Software architecture in a DevO...
Skills Matter DevSecOps eXchange Forum 2022 - Software architecture in a DevO...Skills Matter DevSecOps eXchange Forum 2022 - Software architecture in a DevO...
Skills Matter DevSecOps eXchange Forum 2022 - Software architecture in a DevO...
 

Semelhante a From DevOps to NoOps how not to get Equifaxed Apidays

Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
Stein Inge Morisbak
 
Reactive Microservice Architecture with Groovy and Grails
Reactive Microservice Architecture with Groovy and GrailsReactive Microservice Architecture with Groovy and Grails
Reactive Microservice Architecture with Groovy and Grails
Steve Pember
 
Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013
Nick Galbreath
 
DEVOPS & THE DEATH AND REBIRTH OF CHILDHOOD INNOCENCE
DEVOPS & THE DEATH AND REBIRTH OF CHILDHOOD INNOCENCEDEVOPS & THE DEATH AND REBIRTH OF CHILDHOOD INNOCENCE
DEVOPS & THE DEATH AND REBIRTH OF CHILDHOOD INNOCENCE
DrupalCamp Kyiv
 

Semelhante a From DevOps to NoOps how not to get Equifaxed Apidays (20)

From 🤦 to 🐿️
From 🤦 to 🐿️From 🤦 to 🐿️
From 🤦 to 🐿️
 
DevOps and the Death & Rebirth of Childhood Innocence
DevOps and the Death & Rebirth of Childhood InnocenceDevOps and the Death & Rebirth of Childhood Innocence
DevOps and the Death & Rebirth of Childhood Innocence
 
DevOps and Security, a Match Made in Heaven
DevOps and Security, a Match Made in HeavenDevOps and Security, a Match Made in Heaven
DevOps and Security, a Match Made in Heaven
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
ROOTS2011 Continuous Delivery
ROOTS2011 Continuous DeliveryROOTS2011 Continuous Delivery
ROOTS2011 Continuous Delivery
 
Big guns for small guys (reloaded)
Big guns for small guys (reloaded)Big guns for small guys (reloaded)
Big guns for small guys (reloaded)
 
Reactive Microservice Architecture with Groovy and Grails
Reactive Microservice Architecture with Groovy and GrailsReactive Microservice Architecture with Groovy and Grails
Reactive Microservice Architecture with Groovy and Grails
 
Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013
 
A Big Dashboard of Problems.pdf
A Big Dashboard of Problems.pdfA Big Dashboard of Problems.pdf
A Big Dashboard of Problems.pdf
 
Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)
 
Chaos Engineering Without Observability ... Is Just Chaos
Chaos Engineering Without Observability ... Is Just ChaosChaos Engineering Without Observability ... Is Just Chaos
Chaos Engineering Without Observability ... Is Just Chaos
 
Broken by design (Danny Fullerton)
Broken by design (Danny Fullerton)Broken by design (Danny Fullerton)
Broken by design (Danny Fullerton)
 
stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...
stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...
stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...
 
Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2
 
Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...
Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...
Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...
 
DEVOPS & THE DEATH AND REBIRTH OF CHILDHOOD INNOCENCE
DEVOPS & THE DEATH AND REBIRTH OF CHILDHOOD INNOCENCEDEVOPS & THE DEATH AND REBIRTH OF CHILDHOOD INNOCENCE
DEVOPS & THE DEATH AND REBIRTH OF CHILDHOOD INNOCENCE
 
"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau
"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau
"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau
 
TxJS 2011
TxJS 2011TxJS 2011
TxJS 2011
 
BsidesMCR_2016-what-can-infosec-learn-from-devops
BsidesMCR_2016-what-can-infosec-learn-from-devopsBsidesMCR_2016-what-can-infosec-learn-from-devops
BsidesMCR_2016-what-can-infosec-learn-from-devops
 
Binary crosswords
Binary crosswordsBinary crosswords
Binary crosswords
 

Último

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Último (20)

%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT  - Elevating Productivity in Today's Agile EnvironmentHarnessing ChatGPT  - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 

From DevOps to NoOps how not to get Equifaxed Apidays

  • 1. From to from oops to NoOps CONTINUOUS DEPLOYMENT CLOUD HOSTING 31/1/2018 ApiDays Global @Paris
  • 2. HI. Ori Pekelman Chief Product Officer @ Platform.sh I am oripekelman everywhere (github/linked-in/twitter)
  • 3. They tell you in these conferences that APIs are as much about code as it is about operations. And that DevOps is not about tools, but about culture. On both accounts they are partially right. I am going to tell you that it’s not only about culture, or tools but also about abstractions.
  • 4. And this conference is about Sustainability. Which is a concept. I will talk about abstractions, semantics and such. But this talk means to be useful. Yell at me if I am not.
  • 5. So .. before going into abstractions let’s talk some real-world
  • 6. So .. before going into abstractions let’s talk some real-world
  • 7. Equifax is a clusterfuck of such epic proportions it is not an easy subject. Their brand now is the following:
  • 8. Equifax is a clusterfuck of such epic propotions it is not an easy subject
  • 9. For people whose main line of business is consumer trust. Well, good thing that consumers are not their clients.
  • 10. We will look at just two of the epic moments of this saga. 1. The infamous CVE-2017-5638
  • 11. We will look just at two of the epic moments of this saga. 1. The infamous CVE-2017-5638
  • 12. We will look just at two of the epic moments of this saga. 1. The infamous CVE-2017-5638
  • 13. At $4,000,000,000 this person is worth way more than Steve Austin at just $29,791,399 (adjusted for inflation).
  • 14. What do you gather was the salary of a person who has a manual/menial “update this package” job might be?
  • 15. “We can rebuild him. We have the technology. We can make him better than he was. Better, stronger, faster.”
  • 16. Jay Rogers: The HL-10. We rebuild it from scratch. Modern technology can do wonders today. Col. Steve Austin: Yes, I know...
  • 17. Abstractions Was this a fault of Gary? Was this the fault of his manager Diane? I posit this was the fault of thinking software wrong.
  • 18. What is software? ● Think of it as a fractal. Not a box. ● There is the application code, yes. ● But usually multiple applications in multiple programming languages. ● That depend on multiple data-backends ● That contain a state of the world ● All of which run on multiple platforms with a complex network structure that has semantics.
  • 19. What is software? Code by itself doesn’t run. It is a useless thing. It needs the infrastructure. It needs a state of the world (data). If you are testing only the code you are not testing the software.
  • 20. Software is a function of time. What is software?
  • 21. ● Over time two things happen to software: ○ Creating new stuff ○ Repairing broken stuff What is software?
  • 22. Creating new stuff is voluntary. You do it on your own rhythm. The better automation you have the faster and more productive you will be. The better your tests are … less you will suffer from quality degradation and rot. What is software?
  • 23. What is software? Repairing broken stuff must not be on your own rhythm. The fix CVE-2017-5638 should have been deployed an hour after it was out.
  • 24. Robustness Robustness used to be about minimising change. Marble looks robust. Cement. The realization that what resists change is brittle is a recent one.
  • 25. Robustness We used to think about software as code. As a state of code. Now we must think about software as change, as a flow. As a dynamic system where people, machines, and processes interact continuously.
  • 26. Semantics At platform.sh we really do spend a bunch of time asking ourselves not “how do you build”; not even “how do you build consistently”; but “what does it mean to consistently build in a world where change is good, where you do really want to be able to push security fixes into production as soon as they are available because you don’t want to be an Equifax but you also want a stable world.”.
  • 27. 1. Version everything. Make everything auditable. Think holistically.
  • 28. 2. Software is Code. Data Services. Data State. Network Configuration. Permissions. Underlying infrastructure. Think holistically.
  • 29. 3. Make everything semantic. A build script is not semantic. A minor version is not semantic. Think holistically.
  • 30. Think holistically. 4. Always be building. Consistently. Immutable infrastructures.
  • 31. 1. Hey, can you give me, in 5 minutes, the version of every goddamn library we are running in production? 2. Hey, how much time would it take you to move to another cloud provider? 3. Hey, do we run our Root File System Read-Only? Test yourself. Test your Ops. Ask:
  • 32. Equifax happened Because without full automation and thinking holistically, in system terms, fear of change will drive the business.
  • 33. Equifax happened Because there was a specific procedure in place to update a specific part of the software to be done by a human.
  • 34. Let’s see if I talked really, really fast and have time for epic failure #2!
  • 35.
  • 36.
  • 37. No. It wasn’t this. That would be half-competent.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43. Is it Diane or Gary’s fault again? No. It is about snowflakes. When infrastructure is done by hand you need a “change request form”.
  • 44. There is no way in hell a “mature enterprise” will have procedures that are lightweight enough to roll-out a full new project in a day. If you need to fill a form. If you need to go through IT and Security for this specific thing.
  • 45. In an emergency someone will “power through”. And when that happens. Well you’ve seen.
  • 46. Full automation allows you no only to have robust management of your compliance requirements; But also it allows you to manage waivers and exceptions; Fast.
  • 47. If you can not rebuild your full infrastructure in minutes. From scratch. Applying all security updates for every single service and library. And be 100% sure that nothing will possibly break. It is because you were thinking software wrong.
  • 48. And you might get Equifaxed.
  • 49. Bonus Bonus Slide, so how is Equifax doing right now? Can I have some version discovery please? https://developercentre.equifax.com.au/CHANGELOG.txt https://services.inivio.com.au/WebResource.axd?d=test curl -I https://developercentre.equifax.com.au X-Powered-By: PHP/5.4.16 https://www.cvedetails.com/vulnerability-list/vendor_id-74/produc t_id-128/version_id-149817/PHP-PHP-5.4.16.html
  • 50. Git-driven infrastructure With a single git push deploy an arbitrarily complex cluster (with micro-services, messages queues and the lot.)
  • 51. Clone a byte-for-byte copy of your production site in less than a minute Every git branch has a url Eliminates QA bottlenecks 14x faster human testing and validation Fail proof, predictable deployments Quick bug fixes and security release resolution
  • 53. Unique, triple-redundant architecture Automatic high-availability High Performance Dynamic scaling Multi-Cloud. Sovereign Hosting. GDPR compliant. The works.