logging for openstack - elasticsearch, fluentd, logstash, kibana

23
OPENSTACK & LOGGING

Upload: md-safiyat-reza

Post on 21-Jan-2018

1.147 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

OPENSTACK&

LOGGING

Page 2: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

ABOUT ME

Md Safiyat Reza

Fresh out of college!

Open-source enthusiast

An EMACS and KDE user.

Software Engineer at Snapdeal.com

safiyat

@reza_safiyat

[email protected]

Page 3: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

Logs are boring!

Page 4: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

nova-compute nova-network nova-manage nova-conductor nova-scheduler nova-api nova-cert nova-console nova-consoleauth nova-dhcpbridge

apache logs

cinder-apicinder-schedulercinder-volume

syslog

keystone

glance-api glance-registry

dhcp-agent l3-agent metadata-agent openvswitch-agent server.log openvswitch-server

Lots of logs!

Page 5: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana
Page 6: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

What logs contain...TIMESTAMP

PID

NAME

REQUESTID

USERID

TENANTID

[INSTANCE INSTANCEID]

MESSAGE

Page 7: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

All that is fine,

How to use them?

Page 8: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

When shit happens...

DEBUG INFO AUDIT WARNING ERROR CRITICAL TRACE

Page 9: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

Use logs for a good cause.

Page 10: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana
Page 11: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

Log Collection, Aggregation & Visualization

Page 12: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

Log Collectors and Aggregators

Page 13: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

The flow of logs

Page 14: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

• Open source• Centralized logging• Collection & Transport• High availability

• Written in Ruby• Requires Ruby (alt. td-agent)• XML-styled configuration• Plugins available• Owned by Treasure Data

• Written in JRuby• Requires JVM• JSON-styled configuration• A lot and lot of plugins• Owned by Elastic

Page 15: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

<source>path /var/log/syslogtype syslogformat grokgrok_pattern %{SYSLOGLINE}tag system

</source>

<filter>    type record_transformer    enable_ruby    <record>        timestamp ${timestamp.gsub!(" ", "T");

 timestamp.gsub(/\.\d*/, "+05:30"}    </record></filter>

<match *>    type forest    subtype elasticsearch    <template>        host elasticsearchhost        index_name someindexname        type_name sometypename    </template></match>

Fluentd: syslog to elasticsearch

Page 16: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

input {         file {                path => "/var/log/syslog"                start_position => beginning                type => syslog                sincedb_path => "/dev/null"         }}

filter {    Grok {        match => [ "message", "%{SYSLOGLINE:log}" ]    }}

output {     file {           path => "/home/safiyat/kafkaop"                     }     elasticsearch {           protocol => "http"     }}

Logstash: syslog to elasticsearch

Page 17: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

Kibana

Page 18: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

Kibana, again.

Page 19: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana

Thank you for bearing this!

Page 20: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana
Page 21: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana
Page 22: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana
Page 23: Logging for OpenStack - Elasticsearch, Fluentd, Logstash, Kibana