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

Sensu 2.0

Sensu 2.0

A story of how Sensu will evolve in its next iteration. It includes exploring a long history of loving Sensu, how it can and will evolve with the industry, why the Go programming language is a natural fit for our next version and about the human side of software design.

Greg Poirier

August 15, 2017

Transcript

62 slides
  1. Who am I? • Sensu user since 2012 • Specialized

    in monitoring and observability • Introduced metrics to Sensu • Superfan of Sensu
  2. Why Go: Performance • Concurrency primitives • Natively utilize multiple

    cores • Compiled language (Go) vs interpreted language (Ruby) • No more VM (Ruby or JVM)
  3. Why Go: Packaging • Statically linked binaries • Easy to

    ship in a container • Easy to package for any OS • Cross-compilation
  4. Operational Burden • Easier for current orgs to use Sensu

    • Easier for new orgs to use Sensu • More cost-effective monitoring solution
  5. Operational Burden: Transport • Don’t have to operationalize RabbitMQ •

    AMQP inspired the new Sensu transport • WebSockets for the transport protocol • JSON message bodies
  6. Operational Burden: Data • Redis replaced by distributed datastore: Etcd

    • Configuration stored within Etcd • DR and HA facilitated entirely by Sensu+Etcd
  7. Operational Burden: CM What does CM do? • Deploys Sensu,

    RabbitMQ, Redis • Configure Sensu, RabbitMQ, Redis • Deploys and configures checks
  8. Operational Burden: CM • Configuration management no longer required •

    Read/write REST API • Assets delivered to client systems by Sensu
  9. Operational Burden: CM Sensu 2.0 has the ability to deliver

    “assets” • Assets are specially-formed zip files • Assets are versioned • No more CM needed to deliver checks • Does not interfere with OS packages
  10. Easier Integrations: monitoring.yaml .monitoring.yaml: metrics: - name: nsq.queue_length.results assertions: -

    comparison: > 0 time: 5m http_check: - method: get path: /health assertions: - status: 200
  11. API-Driven: Platforms • Higher order applications can be built with

    Sensu • Stronger integrations with IaaS/PaaS • Metrics as first-class citizens
  12. API-Driven: Time Series Data - Still focused on being a

    “router” - Metrics as first-class citizen - Deep integrations with time-series databases - Metrics as a core part of monitoring with Sensu
  13. Multitenancy • Larger orgs yield more complex setups • Organizations

    and Environments • RBAC allows for cross-functional cross-team information sharing
  14. • ✔ Functioning Sensu 2.0 • ✔ Multitenancy • ✔

    API • ✔ Check execution • ✔ Alerting • ✔ Asset management Sensu 2.0: Alpha
  15. Sensu 2.0: Future • Sensu 1.0 Feature Complete • Growing

    the Sensu engineering team • Metrics integrations

More Decks by Greg Poirier

Other Decks in Technology