devops: coding defines monitoring

27
Coding defines Monitoring Jirayut Nimsaeng (Dear) Founder Opsta Code Mania 100 : Coding Defines Anything Faculty of Engineering, Chulalongkorn University | November 6, 2016 How developer do monitoring as a code

Upload: opsta

Post on 08-Jan-2017

669 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: DevOps: Coding Defines Monitoring

Coding definesMonitoring

Jirayut Nimsaeng (Dear)Founder OpstaCode Mania 100 : Coding Defines AnythingFaculty of Engineering, Chulalongkorn University | November 6, 2016

How developer do monitoring as a code

Page 2: DevOps: Coding Defines Monitoring

#whoami

Jirayut Nimsaeng (Dear)

● Founder of Opstahttps://facebook.com/opstacloud

● Senior DevOps at Kaidee● Focus on building scale with

Cloud Automation● Open Source Contributor

https://github.com/opstaOpenStack Contributor

Page 3: DevOps: Coding Defines Monitoring

Monitoring Stacks

Network

Physical Devices

OS and Application

Development Application

Business

Page 4: DevOps: Coding Defines Monitoring

Network

● Bandwidth In/Out● Connection● Error/Loss● Load on devices● Traffic breakdown● Latency

Page 5: DevOps: Coding Defines Monitoring

Physical Devices

● Hardware● Temperature● Fans● Voltages● Power Consumption

Page 6: DevOps: Coding Defines Monitoring

OS and Application

Operating System

● CPU● Memory● Hard Disk● Network● Load

Application

● Process● Memory/Network footprint● Logging● Connection● Specific value

Page 7: DevOps: Coding Defines Monitoring

Development Application

● Response time○ Function○ API

● Connection○ Database○ Other services

● Success/Error● Counting● Logging● Application Specific

Page 8: DevOps: Coding Defines Monitoring

Business

Page 9: DevOps: Coding Defines Monitoring

Type of monitoring data

Log

Metric

Check

Page 10: DevOps: Coding Defines Monitoring

Check

Page 11: DevOps: Coding Defines Monitoring

Metric

Page 12: DevOps: Coding Defines Monitoring

Log

Page 13: DevOps: Coding Defines Monitoring

Traditional Monitoring Tools

Page 14: DevOps: Coding Defines Monitoring

Modern Monitoring Features

● Dashboard● Scaling● Alert● High Availability● API● Monitor as a Code● Automated● Developer Self Service

Page 15: DevOps: Coding Defines Monitoring

Modern Monitoring Tools

Page 16: DevOps: Coding Defines Monitoring

Monitor Components

Database

AnalysisAlertVisualize

CollectorSensor

Page 17: DevOps: Coding Defines Monitoring

Monitor Components

Page 18: DevOps: Coding Defines Monitoring

Graylog

Page 19: DevOps: Coding Defines Monitoring

Prometheus

Page 20: DevOps: Coding Defines Monitoring

Elasticsearch

Page 21: DevOps: Coding Defines Monitoring

Sensu

Page 22: DevOps: Coding Defines Monitoring

Sensu check configuration

{

"checks": {

"sensu-website": {

"command": "check-http.rb -u https://sensuapp.org",

"subscribers": [

"production"

],

"interval": 60,

"contact": "ops"

}

}

}

Page 23: DevOps: Coding Defines Monitoring

ClientClient

Sensu self-deploy monitor

Server

Clients

Trigger Deploy

Run Check

Page 24: DevOps: Coding Defines Monitoring

InfluxDB + Grafana

Page 25: DevOps: Coding Defines Monitoring

Application Monitor with StatsD

Page 26: DevOps: Coding Defines Monitoring

Demo

Page 27: DevOps: Coding Defines Monitoring

QA