athmos: a satellite anomaly detection framework microservice … .pdf · 2017-06-23 · athmos: a...

36
ATHMoS: A Satellite Anomaly Detection Framework Microservice Architecture Corey O‘Meara German Space Operation Center ESAW 2017 June 21st, 2017 > O'Meara • ATHMoS > 21.06.17 www.DLR.de/rb Slide 1

Upload: others

Post on 23-May-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

ATHMoS:

A Satellite Anomaly Detection Framework

– Microservice Architecture

Corey O‘MearaGerman Space Operation Center

ESAW 2017

June 21st, 2017

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 1

Page 2: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 2

We want to compare new telemetry data withpast data to see how its behavior has changed

Past Telemetry Todays Telemetry

General Idea of Anomaly Detection

Page 3: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 3

Why Automated Telemetry Checking?

Page 4: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 4

Big Data, Big Computations…

Page 5: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

1. Noise Extraction and De-Trending

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 5

Page 6: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

2. Sub-Cluster Dimension Approximation

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 6

Page 7: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 7

3. Anomaly Score Computation

Raw Data

Smoothed

Data

Noise Data

Page 8: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 8

4. Deep Learning NN: Time Series Forecasting

90-min Prediction

45-min Recent Data

Page 9: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

ATHMoS: System Architecture Requirements

High Availability

Necessary to ensure 24/7 monitoring in the operational environment

Scalability:

The resulting system should be easily scalable for more

computational power

Performance:

The complete chain from import over processing to storing the data

should complete in a few minutes for a days worth of telemetry data

Modifiability:

The processing chain needs to be easily modifiable to allow for

individual mission-specific adjustments

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 9

Page 10: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 10

Page 11: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

What Are Microservices? (a.k.a. „fine-grained“ SoA)

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 11

Page 12: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

TelemetryDB: Apache Cassandra

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 12

Used by (among many others):

• Distributed database

• Supports multiple datacenters

• Highly available and scalable

• Developed for Big Data @Facebook

Apache Cassandra

Page 13: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

Data Processing: Apache Spark

Apache Spark

• Distributed computational engine

• Highly scalable and asynchronous calculations

• „Next Generation“ Hadoop (~100 times faster)

• Allows real-time processing (data streams)

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 13

Used by (among many others):

Page 14: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 14

Language: Scala

Akka (Scala)

• Framework to develop fault tolerant services

• Both OOP and Functional Programming

• Asyncronous communication

• Typesafe better version of Python (imo)

Used by (among many others):

Page 15: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 15

Message Broker: Apache Kafka

Apache Kafka

• Originally developed at LinkedIn

• Open Sourced in 2011

• Distributed messaging (pub/sub) system

• By far, the fastest w.r.t messages/sec

Used by (among many others):

Page 16: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 16

ATHMoS Microservices Overview

Page 17: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

Microservice Orchestration: DC/OS

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 17

Page 18: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

Deployment Infrastructure

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 18

x2 x6

x2

Page 19: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

Cluster Details

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 19

App Scheduler

Page 20: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

DC/OS Dashboard

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 20

Page 21: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

App Launcher and Scheduler

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 21

Page 22: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

Cluster Details

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 22

Allows for a Reactive

System

Page 23: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

App Resource Monitoring > O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 23

Application Instance CPU

Usage

Application Instance RAM

Usage

Application Instance Cached

Memory Usage

Application Instance Network

Usage

Total System Usage Statistics

Page 24: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

ATHMoS as a Reactive System

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 24

The distributed nature of the system allows us to define limits for CPU,

RAM, network connections/traffic for each component of the software

such that if it is under heavy load it will elastically scale that individual

component

Page 25: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 25

Outlook: Microservice Template

Infrastructure LayerDomain LayerApplication

Layer

Page 26: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 26

Outlook: Continuous Integration and Delivery

Page 27: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 27

In Conclusion…read this!

Page 28: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

Thanks for your attention!

@cpomeara

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 28

Page 29: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

References

1. O’Meara, C., Schlag, L., Faltenbacher, L., Wickler, M., “ATHMoS: Automated Telemetry

Health Monitoring System at GSOC using Outlier Detection and Supervised Machine

Learning,” Proceedings of the AIAA SpaceOps 2016 Conference, May 2016.

2. “Building Microservices”, Sam Newman, O’Reilly Media, Inc., 2015.

3. http://martinfowler.com/articles/microservices.html

4. https://www.linkedin.com/pulse/20141128054428-13516803-monolithic-vs-microservice-

architecture

5. http://www.lab41.org/transformers-rdd-in-disguise/

6. https://www.infoq.com/articles/apache-kafka

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 29

Page 30: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

Backup Slides

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 30

Page 31: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

Frontend Prototype

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 31

Page 32: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 32

Frontend Prototype

Page 33: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 33

Frontend Prototype

Page 34: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

Example: Battery Voltage Drop

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 34

Triggered OOL

Battery Voltage Anomaly first

detected when OOL

triggered during an image

acquisition datatake during

eclipse

Page 35: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

Example: Battery Voltage Drop

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 35

ATHMoS correctly identified

not only the anomaly where

the OOL was triggered but

anomalies of the same type

that occurred more than 1

month in advance

OOL

July 2015

Outlie

r S

core

(0-1

00%

)

Page 36: ATHMoS: A Satellite Anomaly Detection Framework Microservice … .pdf · 2017-06-23 · ATHMoS: A Satellite Anomaly Detection Framework ... Data Processing: Apache Spark Apache Spark

Example: Battery Voltage Drop

> O'Meara • ATHMoS > 21.06.17www.DLR.de/rb • Slide 36

Outlie

r S

core

(0-1

00%

)

June 2015

ATHMoS correctly identified

not only the anomaly where

the OOL was triggered but

anomalies of the same type

that occurred more than 1

month in advance