Slide 1

Slide 1 text

Anti-Fragile Principles + DevOps = Success @KeithResar

Slide 2

Slide 2 text

Keith Resar: Bio Wear many hats... Recovering Developer Open Source Contributor and Advocate Cloud Automation Engineer [email protected] @KeithResar

Slide 3

Slide 3 text

Fragile Software DISORDER Stress Failure @KeithResar

Slide 4

Slide 4 text

Anti-Fragile Software THRIVES Stress, Failure and Change @KeithResar

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

dsdsa https://azure.microsoft.com/en-us/blog/inside-azure-search-chaos-engineering/

Slide 7

Slide 7 text

dsdsa

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

Meltdown breaks the most fundamental isolation between user applications and the operating system, allowing a program to access the memory, and thus also the secrets, of other programs. Spectre breaks the isolation between different applications. It allows an attacker to trick error-free programs, which follow best practices, into leaking their secrets. Black Swan Events @KeithResar https://meltdownattack.com/

Slide 12

Slide 12 text

Fragile ● Difficult to modify ● Cannot cope with change ● Some value when stable, liability with stress Many organisations have applications (mainframes for example) which are impossible to change, very expensive to maintain, but still running on high cost as they are very critical to the business. @KeithResar

Slide 13

Slide 13 text

Fragile ● Withstands stress/change to a point ● Does not adapt ● Eventually fails and becomes a liability Robust @KeithResar

Slide 14

Slide 14 text

Fragile ● Designed with stress in mind ● Adaptability features ● Best engineered solution Robust Resilient @KeithResar

Slide 15

Slide 15 text

Fragile ● Created with change in mind ● Improves with stress ● Not just technical Creating an Anti-Fragile system is much harder, but once it’s in place it drives the business based on change. Anti-Fragile Robust Resilient @KeithResar

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

Individual just one pretty plane @KeithResar

Slide 18

Slide 18 text

Population the entire system @KeithResar

Slide 19

Slide 19 text

Mistake affects individual @KeithResar

Slide 20

Slide 20 text

@KeithResar

Slide 21

Slide 21 text

Good Mistake IMPROVES Population @KeithResar

Slide 22

Slide 22 text

Bad Mistake No introspection Doesn’t exploit Gives excuses @KeithResar

Slide 23

Slide 23 text

He who has never sinned is less reliable than he who has only sinned once @KeithResar

Slide 24

Slide 24 text

Anti-Fragile? RANDOM EVENTS ⬆ or ⬇ UPSIDE @KeithResar

Slide 25

Slide 25 text

No content

Slide 26

Slide 26 text

Specific steps to introduce anti-fragility

Slide 27

Slide 27 text

Code ...and we’ve already failed Test Deploy Run Scale Identify Fragile Points @KeithResar

Slide 28

Slide 28 text

Code Test Deploy Run Scale Identify Fragile Points @KeithResar

Slide 29

Slide 29 text

Code Test Deploy Run Scale Identify Fragile Points Smaller code drops @KeithResar

Slide 30

Slide 30 text

Code Test Deploy Run Scale Identify Fragile Points Incorporate feedback loops, including data from prod ops @KeithResar

Slide 31

Slide 31 text

Code Test Deploy Run Scale Identify Fragile Points Improved visibility @KeithResar

Slide 32

Slide 32 text

Code Test Deploy Run Scale Identify Fragile Points More frequent deployments More repeatable deployments @KeithResar

Slide 33

Slide 33 text

Platform Encourages Systems Thinking INTEGRATED IMAGE REGISTRY OPENSHIFT CLUSTER DEVELOPER GIT SERVER ARTIFACT REPOSITORY OPENSHIFT CI/CD PIPELINE (JENKINS) IMAGE BUILD & DEPLOY INTEGRATED IMAGE REGISTRY OPENSHIFT CLUSTER NON-PROD PROD DEV @KeithResar https://www.openshift.com

Slide 34

Slide 34 text

INTEGRATED IMAGE REGISTRY OPENSHIFT CLUSTER DEVELOPER GIT SERVER ARTIFACT REPOSITORY OPENSHIFT CI/CD PIPELINE (JENKINS) IMAGE BUILD & DEPLOY INTEGRATED IMAGE REGISTRY OPENSHIFT CLUSTER PROMOTE TO TEST NON-PROD PROD DEV TEST Platform Encourages Systems Thinking @KeithResar https://www.openshift.com

Slide 35

Slide 35 text

INTEGRATED IMAGE REGISTRY OPENSHIFT CLUSTER DEVELOPER GIT SERVER ARTIFACT REPOSITORY OPENSHIFT CI/CD PIPELINE (JENKINS) IMAGE BUILD & DEPLOY INTEGRATED IMAGE REGISTRY OPENSHIFT CLUSTER PROMOTE TO TEST PROMOTE TO UAT NON-PROD PROD DEV TEST UAT Platform Encourages Systems Thinking @KeithResar https://www.openshift.com

Slide 36

Slide 36 text

ServiceNow JIRA Service Desk Zendesk BMC Remedy INTEGRATED IMAGE REGISTRY OPENSHIFT CLUSTER DEVELOPER GIT SERVER ARTIFACT REPOSITORY OPENSHIFT CI/CD PIPELINE (JENKINS) IMAGE BUILD & DEPLOY INTEGRATED IMAGE REGISTRY OPENSHIFT CLUSTER GO LIVE? PROMOTE TO TEST PROMOTE TO UAT RELEASE MANAGER NON-PROD PROD ☒ ☑ DEV TEST UAT Platform Encourages Systems Thinking @KeithResar https://www.openshift.com

Slide 37

Slide 37 text

INTEGRATED IMAGE REGISTRY OPENSHIFT CLUSTER DEVELOPER GIT SERVER ARTIFACT REPOSITORY OPENSHIFT CI/CD PIPELINE (JENKINS) IMAGE BUILD & DEPLOY INTEGRATED IMAGE REGISTRY OPENSHIFT CLUSTER GO LIVE? PROMOTE TO TEST PROMOTE TO UAT PROMOTE TO PROD RELEASE MANAGER NON-PROD PROD DEV TEST UAT ☒ ☑ Platform Encourages Systems Thinking @KeithResar https://www.openshift.com

Slide 38

Slide 38 text

Code Test Deploy Run Scale Identify Fragile Points Deliberately exercising systems with good mistakes @KeithResar

Slide 39

Slide 39 text

@KeithResar https://azure.microsoft.com/en-us/blog/inside-azure-search-chaos-engineering/

Slide 40

Slide 40 text

@KeithResar 1. Focus on population , not individuals. Force the systems view 2. Set yourself up for success, identify common fragile points - usually at integration spots and not always technological, then… 3. Stress the system on your terms to improve Anti-Fragile Takeaways

Slide 41

Slide 41 text

Thank you! @KeithResar