mastering continuous monitoring in a microservices world · mastering continuous monitoring in a...

64
1 COMPANY CONFIDENTIAL DO NOT DISTRIBUTE #Perform2015 feat. Ansible, Docker, Mesos & Co. Mastering Continuous Monitoring in a Microservices World

Upload: doquynh

Post on 30-Dec-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

1 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

feat. Ansible, Docker, Mesos & Co.

Mastering Continuous Monitoring

in a Microservices World

Page 2: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

2 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Monitoring for a Microservices-readyWeb Hosting Platform

Page 3: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

3 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Romain Bigeard

• Senior Consultant at Avocado Consulting

• Infrastructure Background

• APM and Automation for past four years

[email protected]

• https://au.linkedin.com/in/rbigeard

• @romainbigeardIT

Who am I

Page 4: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

4 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Big Telco (37000+ employees)

Project: VAS Platform migration from Solaris to a Private Linux Based Cloud

The Customer

Page 5: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

5 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Focus on elasticity, automation and DevOps principles

• Ready for microservices migration

• Identical prod and non-prod environments

• Holistic monitoring

Platform Goals

Page 6: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

6 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Blocks of VMs can be spun up at will through a Web GUI

• Each Block has a Virtual Load Balancer

• Dockerized Applications are then deployed to blocksby a Continuous Deployment System (Atlassian Bamboo)

• Ansible Chosen as “Automation” Glue

Focus on Automation

Page 7: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

7 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Block CreationContainer DeploymentCustomer Traffic

Page 8: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

8 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Web GUI

Page 9: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

9 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE9

Technology Choices

Page 10: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

10 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• YAML Syntax easy to comprehend

• Agentless architecture

• Combines configuration management and orchestration

• Good match with Docker

• Integrates well with CI systems

Ansible

Page 11: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

11 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Ansible

Page 12: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

12 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Light-weight containers

• Perfect match for running microservices

• Allows for rapid deployment/redeployment

• Containers contain all application dependencies

• Container images can inherit from existing containers

• Huge Ecosystem: https://www.mindmeister.com/389671722/docker-ecosystem

• Docker images distributed by a registry (think App Store)

Docker

Page 13: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

13 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE13

Monitoring Challenges

Page 14: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

14 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Must be elastic

• Must provide state-of-the-artApplication Performance Monitoring

• Must integrate with current “corporate wide”monitoring and alerting solution (HPOV)

• Must add value to every environment: Dev, SVT, Production

Monitoring Challenges

Page 15: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

15 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Dynatrace fulfills

those requirements!

ELK complements Dynatrace for Log Processing

Page 16: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

16 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Three layers of Dynatrace infrastructure must be automated

Monitoring Challenges

Page 17: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

17 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE17

Dynatrace Agent Automation

Page 18: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

18 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Leverages Docker image ‘Inheritance’

• Dynatrace Agent integrated in “Parent” images for Tomcat and JBoss

• Application Startup Script determines Dynatrace Agent configurationvia DNS TXT Records

Dynatrace Agent Automation

Page 19: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

19 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Docker can build images automaticallyby reading the instructions from a Dockerfile

• Each image consists of a series of layers

Docker Image Inheritance

Page 20: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

20 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

FROM docker-registry.acme.com/tomcat7:7.0.60.1 (Dynatrace Agent Inside)

RUN rpm -ivh http://repo/application1-6.2.0.1238-linux-3.tls1.rpm

CMD ["/usr/sbin/application1”]

Dockerfile Example

docker-registry/tomcat7:7.0.60.1

docker-registry/application:1.0.0.1

Dynatrace Agent

Page 21: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

21 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Application startup script queries DNS:

dig -x 10.1.1.51 TXT +short

"node_environment=production"

"node_shortname=vm001"

"node_service=application1"

Allows to build:

JAVA_OPTS="-agentpath:${dynatrace_binary}

=name=${node_service}-${node_environment},

server=${dynatrace_server} $JAVA_OPTS"

Determine Dynatrace Agent Config via DNS TXT

Page 22: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

22 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE22

Dynatrace Collector Automation

Page 23: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

23 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Dynatrace Collectors run like any otherDockerized Application on the Platform

• Dynatrace Collectors are behind a load balancer

• They are deployed by CD System (Bamboo)

• Number of Collectors can be scaled up within minutes!

Dynatrace Collector Automation

Page 24: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

24 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE24

Dynatrace Server Automation

Page 25: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

25 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Ansible playbook deploys the Dynatrace Server

• Dynatrace Server considered a core service on the platform

• Dynatrace offers own Ansible playbooks/roles: https://github.com/dynatrace/Dynatrace-Ansible

Dynatrace Server Automation

Page 26: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

26 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE26

End Result

Page 27: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

27 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

End ResultCustomer Traffic

Application Dynatrace

Collector Block

Dynatrace

Server

Page 28: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

28 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Page 29: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

29 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Integration with Corporate Alerting Solution

SNMP

Traps

Page 30: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

30 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Same monitoring solution

used

in every environment.

Page 31: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

31 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• in Dev to allow for rapid performance testing

• in Volume Testing for every run,in order to spot possible performance problems under load

• in Production for Alarming

• in Production for Diagnosing Problems

Dynatrace is used…

Page 32: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

32 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Page 33: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

33 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Elastic platform

• Ready for microservices migration

• Strong cooperation between Dev and Ops

• Monitoring solution spans every environment

Overall Solution Benefits

Page 34: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

34 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Managing and scaling microserviceswith Apache Mesos and Ruxit

Page 35: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

35 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Alexander Ramos Jardim

• IT Operations Manager at B2W

• Working at B2W since 2008

• Architecture design

• Operations management

• Incident response management

Who am I

Page 36: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

36 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

americanas.com.br

Page 37: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

37 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

submarino.com.br

Page 38: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

38 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

shoptime.com.br

Page 39: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

39 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

soubarato.com.br

http://www.soubarato.com.br

Page 40: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

40 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• 25% market share of Brazilian e-commerce market

• Largest e-commerce company in Latin America

• Revenue: $10 billion Brazilian Real; $2.5 billion US

• 4 brands: Submarino, Americanas.com, Shoptime, Soubarato

• 2 carriers and 9 distribution centers

B2W Digital

Page 41: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

41 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

The reign of monolith applications

Page 42: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

42 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Java + Spring

Weblogic

Numerous apps per JVM

Backend does all the worki

HTML, business logic,

data access, you name it

Outdated monolithic architectures

HARDWARE

OPERATING SYSTEM

JVM

APP1 APP2

JVM

APP1 APP2

Page 43: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

43 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Changes are slow and risky!

We’ve had difficulty innovating on our apps

HARDWARE

OPERATING SYSTEM

JVM

APP1 APP2

JVM

APP1 APP2 Why did the site break?

Page 44: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

44 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

July 2014: Black Night

Page 45: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

45 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Too many requests

• Architecture couldn't scale properly

• Team couldn't react to incidents

Board realized we needed a microservices approach

What happened?

Page 46: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

46 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• Going microservices

• Going DevOps

• Decentralized governance

• Hybrid cloud infrastructure

AWS + private

This involved...

Page 47: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

47 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE47

2015: PaaS

But why..?

Page 48: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

48 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

So many apps!

Page 49: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

49 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Lack of technical standards

but where's it???

APP1APP2

APP1 depends on APP2

Where is this specified?

Page 50: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

50 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Lack of integration between Ops tools

Page 51: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

51 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Page 52: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

52 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Now, we have...

‘Go’ is coming soon

Allows Devs to use any technology

Page 53: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

53 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

One CI fits all technologies

Deploys Docker

containers

in 2 seconds

Marathon

Page 54: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

54 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Example Mesos Architecture

Source: digital ocean

Page 55: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

55 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE55

Easier Deployments

Page 56: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

56 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Dev pushes codeHook triggers

build

Docker image built+ test+ Docker push

Relax, your code is ready for

production

Page 57: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

57 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Dev triggers deployment

Runs deploymentDeploys containers on Mesos cluster

Marathon

Page 58: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

58 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Page 59: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

59 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

But, wait…

What's happening inside my containers?

Now we need visibility into API and

job management with Docker

Page 60: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

60 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

Ruxit completes the puzzle

completes the puzzle

Page 61: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

61 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

When Marathon died!The day Marathon died

Page 62: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

62 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

The network retransmission episode

Page 63: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

63 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

No changes to applications.

No plugins.

One agent does it all.

Page 64: Mastering Continuous Monitoring in a Microservices World · Mastering Continuous Monitoring in a Microservices World. 2 COMPANY CONFIDENTIAL –DO NOT DISTRIBUTE #Perform2015 Monitoring

64 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Perform2015

• We still have lots of auxiliary operational tools to be integrated

• Need deeper integration of Ruxit into our ticketing system

• Need to integrate Ruxit and persistence technologies

Looking ahead