Slide 1

Slide 1 text

What Is Apache SkyWalking ? ● A performance monitoring tool for distributed systems ● An open source observability platform ● Apache 2.0 license ● Collect, analyse, aggregate and visualize data ● Provides auto instrument agents for services ● Maintain a clear view of your distributed systems ● For cloud native, micro service and ● Container-based (Docker, K8s, Mesos) systems

Slide 2

Slide 2 text

SkyWalking Architecture

Slide 3

Slide 3 text

SkyWalking Architecture ● The architecture has four parts ● (1) Probes – Collect data and reformat it – For SkyWalking requirements – Different probes support different sources

Slide 4

Slide 4 text

SkyWalking Architecture ● (2) Platform back end – Supports data aggregation, analysis – Drives process flow from probes to the UI – Analysis includes ● SkyWalking natives traces and metrics, 3rd party, ● Including Istio and Envoy telemetry, Zipkin trace format – Can customize aggregation and analysis – Using Observability Analysis Language for ● Native metrics ● Meter System for extension metrics

Slide 5

Slide 5 text

SkyWalking Architecture ● (3) Storage – Houses SkyWalking data – Through an open/pluggable interface – Choose an existing implementation such as ● ElasticSearch, H2, ● MySQL cluster managed by Sharding-Sphere – Implement your own

Slide 6

Slide 6 text

SkyWalking Architecture ● (4) User Interface (UI) – Highly customizable – Web based interface – End users can ● Visualize data ● Manage data

Slide 7

Slide 7 text

SkyWalking Users

Slide 8

Slide 8 text

SkyWalking Probe Protocols ● Probe protocols, how agents send/receive – Collected metrics data and traces – The formats of each entity ● Cross Process Propagation Headers Protocol (and ) ● Cross Process Correlation Headers Protocol – Are in wire data format – Agent/SDK usually uses HTTP/MQ/HTTP2 headers – To carry the data with RPC request – Remote agent will receive this in a request handler – And bind the context with this specific request

Slide 9

Slide 9 text

SkyWalking Probe Protocols ● Trace Data Protocol – Is out of wire data – Agent/SDK uses this to send traces – And metrics to Skywalking – Or other compatible backend

Slide 10

Slide 10 text

SkyWalking Query Protocol ● The backend provides query capability ● To SkyWalking UI and others ● Query capabilities depends on analysis metrics ● These queries are based on GraphQL – A query language for the API – A server-side runtime for executing queries – By using a type system you define for your data – Isn't tied to any specific database – Or storage engine – Backed by your existing code and data

Slide 11

Slide 11 text

SkyWalking Language Agents ● Micro service meshes supported – Istio – Envoy ● Multiple language agents supported – Java – .Net Core – PHP – NodeJS – Golang – LUA agents

Slide 12

Slide 12 text

Available Books ● See “Big Data Made Easy” – Apress Jan 2015 ● See “Mastering Apache Spark” – Packt Oct 2015 ● See “Complete Guide to Open Source Big Data Stack – “Apress Jan 2018” ● Find the author on Amazon – www.amazon.com/Michael-Frampton/e/B00NIQDOOM/ ● Connect on LinkedIn – www.linkedin.com/in/mike-frampton-38563020

Slide 13

Slide 13 text

Connect ● Feel free to connect on LinkedIn – www.linkedin.com/in/mike-frampton-38563020 ● See my open source blog at – open-source-systems.blogspot.com/ ● I am always interested in – New technology – Opportunities – Technology based issues – Big data integration