Upgrade to Pro — share decks privately, control downloads, hide ads and more …

LINE TECHPULSE 2022 - Implementing Observability Practices on Kubernetes

LINE TECHPULSE 2022 - Implementing Observability Practices on Kubernetes

Implementing Observability Practices on Kubernetes by Che-Wei Lin / Wan Jun-Wei / SRE @ LINE TECHPULSE 2022 https://techpulse.line.me/

LINE Developers Taiwan

January 21, 2022
Tweet

More Decks by LINE Developers Taiwan

Other Decks in Programming

Transcript

  1. Speakers Che Wei Lin a.k.a johnlin › Site Reliability Engineer

    @ LINE Taiwan › SRE Team › Loves Linux Networking, Distributed Systems & Open Source Wei › Site Reliability Engineer @ LINE Taiwan › SRE Team › A Gopher, interested in Kubernetes and Serverless › Sometimes contribute Open Source project.
  2. Agenda › Traditional Monitoring Practices & Background › Overview of

    Observability Platform › Adoption Status & Current Practices › Challenges of Adoption › Sharing Use Cases
  3. Current (K8s) Adoption Status October 2021 Projects +100% 20 40

    K8s Clusters +40% 50 70 App Configs +500% 130 650+
  4. Background Verda Infrastructure › VKS : Verda Kubernetes Service ›

    VES : Verda Elasticsearch Service › VOS : Verda Object Storage › Most application teams use in-house service VKS for hosting applications › Verda is a private cloud service for LINE
  5. Traditional Monitoring Practice Traditional Approaches › Prometheus long-term storage problem

    (ex: 6 months metrics) › Each team may have their own Grafana dashboards cause redundant works For Self-hosting Prometheus, Grafana For Self-hosting ELK stack › Need an expert in ELK stack to manage the performance and indices Build-in LogSender & Prometheus is Not Enough › Logs: Collect container logs with Fluentd and send to Verda Elasticsearch Service (VES) › Metrics: Prometheus monitor cluster level › Traces: Few teams adopt Zipkins for distributed request tracing
  6. Observability Platform Goal of Observability Platform › Use the same

    data sources and dashboards to discuss the behavior of events › The process of importing indicators into the application is the same and experience can be shared › Reduce communication costs caused by differences in tools Pooling of system knowledge for organization Everyone Uses Same Tools & Dashboards › Provides integrated logs, metrics, and tracing data sources › Built-in common used dashboards Reduce time for repeated deployment of monitoring facilities › Managed single Grafana instance › Multi-tenant for organizations and projects
  7. Adoption Status Observability Platform Project Adopted LINE HUB LINE TRAVEL

    LINE SPOT STICKER LINE TODAY LINE SHOPPING LINE MUSIC OA PLUS
  8. Prometheus Grafana Loki Grafana Tempo InfluxDB Elasticsearch MySQL 0 10

    20 30 40 Adoption Status Statistics of Data Sources
  9. Adoption Status Statistics of Telemetry Data 40B+ / week Log

    Lines 300M / h hourly, weekly Metric Series 16M 20B+ / week Trace Spans 200M / h
  10. Current Practices: Telemetry Data Logs, Metrics & Traces › Logs:

    A record of an event that happened within an application › Metrics: Numerical representation of data. Determine a service or component’s overall behavior over time › Traces: The entire path of a request as it moves through all the nodes of a distributed system Exemplars Split view with labels Metric queries Span metrics processor Trace to logs Followed Trace ID Metrics Traces Logs
  11. Challenges of Adoption Challenges of Adopting from Application Team Introducing

    new languages (LogQL, PromQL) Instrumenting for metrics & tracing may require retrofitting existing infrastructure
  12. How to deal with these challenges Built-in Default Dashboards on

    Grafana › Blackbox/Uptime Dashboards › Kubernetes Events/Deployment/ Jobs › Traefik Latency/QPS Dashboards
  13. How to deal with these challenges Provide managed ingress controller

    which already export metrics & traces Out of the box feature Built-in TLS certificates & Traefik common middlewares Integrated structure log, tracing agent and exposed metrics
  14. Use Case Interactive Observation with Different Indicators Find out 500

    error from metrics Link to corresponding access logs Open trace viewer for a request Jump to application logs in span of trace Logs Traces Logs Metrics
  15. Roadmap Next Steps Error Tracking Sentry Web Vitals Metrics to

    Traces Prometheus 
 with 
 Exemplars Logs Grafana Loki 
 with 
 Promtail Traces to Metrics OpenTelemetry Collector with 
 Span Metrics Processor Traces Grafana Tempo 
 with 
 OpenTelemetry Collector Metrics Prometheus 
 with 
 Thaons
  16. Summary Key Takeaways › Observability platform brings a consolidated dashboard

    and pooling of system knowledge across organization › Current observability practices speed up for teams to achieve actionable insights from data › Traditional monitoring practices are not enough for teams debugging in a distributed system › Adoption challenges, experience sharing and use cases sharing