31
1 © Copyright 2016 EMC Corporation. All rights reserved. 1 © Copyright 2016 EMC Corporation. All rights reserved. RESILIENCY AND AVAILABILITY OF A CLOUD NATIVE INFRASTRUCTURE JONAS ROSLAND, EMC {code} DEVELOPER ADVOCATE & COMMUNITY MANAGER

EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

Embed Size (px)

Citation preview

Page 1: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

1© Copyright 2016 EMC Corporation. All rights reserved. 1© Copyright 2016 EMC Corporation. All rights reserved.

RESILIENCY AND AVAILABILITY OF A CLOUD NATIVE INFRASTRUCTUREJONAS ROSLAND, EMC {code}DEVELOPER ADVOCATE & COMMUNITY MANAGER

Page 2: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

4© Copyright 2016 EMC Corporation. All rights reserved.

• High Availability solutions• Mostly Primary-Secondary, Master-Slave• Provides redundancy

FIRST, SOME HISTORY

Page 3: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

5© Copyright 2016 EMC Corporation. All rights reserved.

• Resiliency is a quality in objects to hold or recover their shape• Example: If you bend a spoon and it bends right back

— that's resiliency

SO WHAT IS RESILIENCY?

Page 4: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

6© Copyright 2016 EMC Corporation. All rights reserved.

• Create services that withstand pressure• Foster a modern mindset in operations• Treat failures as normal occurrences, not fires

HOW DOES SPOON BENDING APPLY TO IT?

Page 5: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

7© Copyright 2016 EMC Corporation. All rights reserved.

• Service failures are treated as non-critical issues• Applications and services self-heal• The infrastructure supports this with modern tools

FAILURE HANDLING

Page 6: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

8© Copyright 2016 EMC Corporation. All rights reserved.

• Focused but not necessarily fully dedicated• Not limited to a single master-slave relationship

• Example 1: 20 nodes with resources to run services such as Hadoop, web servers and databases• Example 2: VMware clusters

MODERN INFRASTRUCTURE

Page 7: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

9© Copyright 2016 EMC Corporation. All rights reserved.

• Not just server-side clustering tools• Many layers• Schedulers, service discovery, logging, monitoring

and much more

MANAGING THIS INFRASTRUCTURE

Page 8: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

10© Copyright 2016 EMC Corporation. All rights reserved.

• Collection of compute resources• Spread out horizontally• Brings scale to your

deployments– Docker Swarm– Mesos– Kubernetes– Cloud Foundry

RESOURCE MANAGERS AND SCHEDULERS

Page 9: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

11© Copyright 2016 EMC Corporation. All rights reserved.

EXAMPLE

Page 10: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

12© Copyright 2016 EMC Corporation. All rights reserved.

• Enables apps and infrato automatically findparts of each other– Consul– etcd– SkyDNS– Zookeeper

SERVICE DISCOVERY

Page 11: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

13© Copyright 2016 EMC Corporation. All rights reserved.

EXAMPLE Service Discovery

Java App

2.3.4.5:8080 Where isJava App?2.3.4.5:8080

Page 12: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

14© Copyright 2016 EMC Corporation. All rights reserved.

EXAMPLE Service Discovery

Java A

pp

3.4.5.6:9090Where is

Java App?3.4.5.6:9090

Page 13: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

15© Copyright 2016 EMC Corporation. All rights reserved.

• All logs in one place

• Everything searchable

LOGGING

Page 14: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

16© Copyright 2016 EMC Corporation. All rights reserved.

EXAMPLE

Page 15: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

17© Copyright 2016 EMC Corporation. All rights reserved.

• Sensu• Datadog• Prometheus• New Relic• Ruxit

MONITORING AND ANALYTICS

Page 16: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

18© Copyright 2016 EMC Corporation. All rights reserved.

EXAMPLE

Page 17: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

19© Copyright 2016 EMC Corporation. All rights reserved.

• Everything is managed through smart tools• The tools have integrations to understand hardware• By changing the processes you’re more prepared• Being more prepared is crucial to deal with failures

when they happen

And they will happen

LOOK OF PHYSICAL INFRASTRUCTURE

Page 18: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

20© Copyright 2016 EMC Corporation. All rights reserved.

But what about mysuper special app?

Page 19: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

21© Copyright 2016 EMC Corporation. All rights reserved.

Applications haveto store data, right?

Page 20: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

22© Copyright 2016 EMC Corporation. All rights reserved.

• Storing data (state) is a critical component of any application• Where they store this state defines their class

– Connected database– In memory– Local disk

APPLICATION STATE DIFFERENCES

Page 21: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

23© Copyright 2016 EMC Corporation. All rights reserved.

• Store no critical data locally• Can be scaled as needed• Recovers quickly

STATELESS APPLICATIONS

Page 22: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

24© Copyright 2016 EMC Corporation. All rights reserved.

• Services that store state• Have usually been treated as HA apps• Can be scale-out or scale-up

STATEFUL SERVICES

Page 23: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

25© Copyright 2016 EMC Corporation. All rights reserved. 25© Copyright 2016 EMC Corporation. All rights reserved.

APPLICATIONS BUILT FROM SERVICESFront End or Non-Persistent

Data Services (Persistent)

Scal

e-Up

Scale-Out

CassandraPostgresRedis CouchDB

Elastic SearchHadoop

MariaDB

Mysql

Nginx

HAProxy

MongoDB

RabbitMQTomcat

Memcached

ScaleIO ECS

ApacheRails

Language Specific HTTP

Page 24: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

26© Copyright 2016 EMC Corporation. All rights reserved.

Demo of resiliency

Page 25: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

27© Copyright 2016 EMC Corporation. All rights reserved.

• Several applications, stateful and stateless, are running and working together• Cascading server failures occurs• Applications are restarted and automatically heal

themselves• The servers are back online and automatically join

the cluster of resources again

DEMO OF FAILURE HAPPENING

Page 26: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

28© Copyright 2016 EMC Corporation. All rights reserved.

• Being prepared is crucial, surprises shouldn’t happen• Use smart tools to deal with issue quickly• Leverage smart infrastructure that allows your apps

to self-heal• Manage your datacenter as an entity, not silos

SUMMARY

Page 27: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

29© Copyright 2016 EMC Corporation. All rights reserved.

Before opening up for questions

Page 28: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

30© Copyright 2016 EMC Corporation. All rights reserved.

• Hands-on lab with Docker, Mesos and REX-Ray• Free stickers at our booth• Join our community at community.emccode.com• See all our projects at emccode.com• And follow us on Twitter @EMCcode

CONTINUE THE DISCUSSION

Page 29: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

31© Copyright 2016 EMC Corporation. All rights reserved.

@EMCcode@jonasrosland

emccode.comcommunity.emccode.com

Come visit us at Booth #1044 or in the vLab

Questions?

Page 30: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure

33© Copyright 2016 EMC Corporation. All rights reserved. 33© Copyright 2016 EMC Corporation. All rights reserved.

Page 31: EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infrastructure