19
© 2018 eBay. All rights reserved.

© 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Page 2: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Some Numbers:

Page 4: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

• Pivotal Unit in ebay

• Ebay’s Catalog

• Backend - all around service

• We’re down - everyone’s down

Structured Data

Page 5: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

What’s it all About?

System Monitoring1

Application Monitoring 2

Business Monitoring3

Page 6: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Journey

Reactive3

Proactive 2

Predictive1

3

2

1

1

2

3

Page 7: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

• User-centric

• Fast

• Scaleable & Expandable

• Maintainable

Requirements

Page 8: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Challenge #1: It’s all about the KPI’s, man!

Define KPIs to use:• Latency, Request Count, Error/Exception Count, Pipeline vs. Pool vs. Host KPIs

Separating the wheat from the chaff:• Filter white noise (“All metrics are equal, but some metrics are more equal than others”)

• Focus on what you’re looking for and brings value (less is more)

https://www.dictionary.com/browse/all-animals-are-equal--but-some-animals-are-more-equal-than-others

Page 9: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Challenge #2: scale, Scale, SCALE!

1st Attempt (oh, the naïveté..):• Prometheus, Grafana, K8S, etcd.

• Result:⁃ Not scalable (aggregations) ⁃ Doesn’t handle load⁃ No HA (no easy way to rotate DS)

Page 10: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Challenge #2: scale, Scale, SCALE!

2nd Attempt:• Influx, remote_read

• Result: It works, but…⁃ FW bottleneck⁃ InfluxDB performance⁃ Remote_read performance⁃ InfluxDB data persistency

Page 11: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Challenge #2: scale, Scale, SCALE!

3nd Attempt:• HAProxy, Promxy, NGINX,

InfluxDB optimizations• Poor-man’s sharding for

Prometheus, HA for InfluxDB

• Result: Aha! Moment

*

* We're evaluating M3DB as our persistence layer

Page 12: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Challenge #2: scale, Scale, SCALE!

Query from 10.16.2018, 5 days’ data:

Page 13: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Challenge #3: I want to break free!

Display production dashboards on hall monitors. Sounds easy, right?

Page 14: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Challenge #3: I want to break free!

Solution:HAproxy to the rescue!

• Create a scalable single point of failure

• NGinx for “poor-man’s sharding”• Promxy for fast querying

Page 15: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Challenge #4: Business Metrics

Data retention (over 14 days)

Data aggregation

Business metrics galore

Page 16: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Challenge #4: Business Metrics

Page 17: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Challenge #5: Microservices. Microservices Everywhere!

Opentracing

Page 18: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

© 2018 eBay. All rights reserved.

Challenge #6: So, what’s next?

Canary Release

• Leverage system and application monitoring metrics

• Run a benchmark, version (X+1) vs. the rest of the pool (X)

• Deployment strategy: 1 15% 30% 45% 100%

Page 19: © 2018 eBay. All rights reserved. © 2018 eBay. All rights reserved. • User-centric • Fast • Scaleable & Expandable • Maintainable Requirements

Thank You!