SlideShare a Scribd company logo
1
Google Cloud Platform
monitoring with Zabbix
Google Cloud Platform
Max Kuzkin (maxkuzkin@gmail.com)
version 24 | Sep-02-2016
2
Zabbix – Terminology
Host = any monitored device, where Agent (or SNMP, JMX,
IPMI interfaces) are installed
Examples: Linux/Windows Server, Router, etc.
Item = particular metric configured for a particular Host
Examples: system.cpu.load[all,avg5], system.cpu.num[online], script[echo,hello,world],
net.tcp.service[http] …
Key = type of Item that can be gathered from the Host
Examples: system.cpu.load[<cpu>,<mode>], system.cpu.num[<type>],
script[<parameter1>,<parameter2>,...], net.tcp.service[<service>,<ip>,<port>] …
3
Zabbix: Operations Flow
Operations
Agent
system.cpu.load[all,avg5]
system.cpu.num[online]
script[echo,hello,world]
net.tcp.service[http] …
DB
Agent
system.cpu.load[all,avg5]
system.cpu.num[online]
script[echo,hello,world]
net.tcp.service[http] …
Host 2
Host 2
4
Zabbix Key → Item Mapping
Key + Parameters
Data type mapping
Value mapping
Type of Information Data Type (numeric)
5
Extending Zabbix
1. External Checks
Syntax: script[<parameter1>, <parameter2>,...]
Example: check_oracle.sh["-h", "{HOST.CONN}"]
More: https://www.zabbix.com/documentation/2.4/manual/config/items/itemtypes/external
2. User Parameters
Syntax: UserParameter=key[*], command
Example: UserParameter=ping[*], echo $1
More: https://www.zabbix.com/documentation/2.4/manual/config/items/userparameters
Demoed in this presentation
6
Zabbix External Checks
/etc/zabbix/zabbix_server.conf
/usr/lib/zabbix/externalscripts/some-script.sh
7
Monitoring Model
Google Cloud
8
Google Cloud Monitoring
Operations
Service 1
Service 2
DB 1
DB 2
App Engine
Cloud SQL
Google Cloud Platform
Monitoring API
9
Google Monitoring API v3
Try yourself: https://developers.google.com/apis-explorer/#p/monitoring.googleapis.com/v3/
# Method Description
1 collectdTimeSeries.create
Stackdriver Monitoring Agent only: Creates a new time series. This method is only for use by the Google
Monitoring Agent. Use projects.timeSeries.create instead.
2 groups.create Creates a new group.
3 groups.delete Deletes an existing group.
4 groups.get Gets a single group.
5 groups.list Lists the existing groups.
6 groups.members.list Lists the monitored resources that are members of a group.
7 groups.update Updates an existing group. You can change any group attributes except name.
8 metricDescriptors.create
Creates a new metric descriptor. User-created metric descriptors define custom metrics
(/monitoring/custom-metrics).
9 metricDescriptors.delete Deletes a metric descriptor. Only user-created custom metrics (/monitoring/custom-metrics) can be deleted.
10 metricDescriptors.get Gets a single metric descriptor.
11 metricDescriptors.list Lists metric descriptors that match a filter.
12 monitoredResourceDescriptors.get Gets a single monitored resource descriptor.
13 monitoredResourceDescriptors.list Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account.
14 timeSeries.create Creates or adds data to one or more time series.
15 timeSeries.list Lists time series that match a filter.
10
Some of App Engine Counters
# Counter ID Value Description
1 http/server/response_count DELTA
INT64 Delta HTTP response count.
2 http/server/response_latencies DELTA,
DISTRIBUTION HTTP response latency.
3 system/network/received_bytes_count DELTA
INT64
Delta count of incoming network
bandwidth.
4 system/network/sent_bytes_count DELTA
INT64
Delta count of outgoing network
bandwidth.
5 system/cpu/usage GAUGE
INT64 CPU usage in megacycles.
Much more: https://cloud.google.com/monitoring/api/metrics
Services can also define their own custom counters.
11
timeSeries.list parameters
# Parameter Example
1 Project Name projects/odin-ap
2 Period of aggregation 3600s
3 Overall aggregation rule REDUCE_SUM
4 Fields for grouping metric.label.response_code
5 Series aggregation rule ALIGN_SUM
6 Filter metric.type = "appengine.googleapis.com/http/server/response_count"
AND resource.label.module_id = "service"
AND metric.label.response_code >= 500
AND metric.label.response_code <= 599
7 Start Time 2016-08-27T23:00:00.000Z
8 End Time 2016-08-28T00:00:00.000Z
More on filters: https://cloud.google.com/monitoring/api/v3/filters#comparisons
12
timeSeries.list example call
# Parameter Example
1 Project Name projects/odin-ap
2 Period of aggregation 3600s
3 Overall aggregation rule REDUCE_SUM
4 Fields for grouping metric.label.response_code
5 Series aggregation rule ALIGN_SUM
6 Filter metric.type =
"appengine.googleapis.com/http/server/response_count"
AND resource.label.module_id = "service"
AND metric.label.response_code >= 500
AND metric.label.response_code <= 599
7 Start Time 2016-08-27T23:00:00.000Z
8 End Time 2016-08-28T00:00:00.000Z
13
GCP Monitoring API Command Line
https://github.com/odin-public/gcpmetrics
14
GCP Monitoring API Command Line
$ pip install gcpmetrics
15
Zabbix: External Checks
Tracking HTTP response statuses 5xx
(server errors) count using Google Cloud
Platform Monitoring API v3
16
Web Scenario
Zabbix: Web Monitoring
Zabbix Host
gcpmetrics
External Check
Agent
Detailed
Analysis
DBs
Cloud SQL
Google Cloud Platform
Monitoring
Monitoring
Services
App Engine
Monitoring API v3
DB
Operations
17
Configure Timeouts of Zabbix
•Default installation of Zabbix is configured to terminate all
scripts in 3 seconds. Google Monitoring API may take 5-10+
seconds to respond, depends on the actual query.
•We suggest to set Zabbix Timeout to 30 seconds
Note: Applies to both server
and agent configurations
18
Install gcpmetrics
CentOS example:
$ easy_install pip
$ pip install --upgrade gcpmetrics
Check that installation was successful with:
$ gcpmetrics --version
19
Configure ExternalScripts
$ cd /usr/lib/zabbix/externalscripts
$ gcpmetrics --init-config ./gcp
Creating folder: ./gcp...
Creating configuration file: ./gcp/config.yaml...
Creating key file: ./gcp/keyfile.json...
Configuration initialized, use --config to reference it.
20
Edit config.yaml: project, service, etc.
21
Update keyfile.json
22
Create 2 scripts in
$ cd /externalscripts/
$ vim tm-http5xx-absolute.sh
$ vim tm-http5xx-relative.sh
2 scripts are needed to demo both Absolute and Delta behavior of Zabbix
because it doesn’t allow 2 items to refer to the same script.
23
Create 2 Items
tm-http5xx-absolute.sh tm-http5xx-relative.sh
24
Create Graph with those 2 Items
25
Graph with those 2 Items
absolute
relative
Some 5xx error
happened there
26
Thank You!
Questions?

More Related Content

What's hot

Apresentacao zabbix
Apresentacao zabbixApresentacao zabbix
Apresentacao zabbix
Daniel Peres
 
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
Amazon Web Services Korea
 
Terraform modules and best-practices - September 2018
Terraform modules and best-practices - September 2018Terraform modules and best-practices - September 2018
Terraform modules and best-practices - September 2018
Anton Babenko
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
Bo-Yi Wu
 
MySQL Performance Schema in Action: the Complete Tutorial
MySQL Performance Schema in Action: the Complete TutorialMySQL Performance Schema in Action: the Complete Tutorial
MySQL Performance Schema in Action: the Complete Tutorial
Sveta Smirnova
 
Monitoring all Elements of Your Database Operations With Zabbix
Monitoring all Elements of Your Database Operations With ZabbixMonitoring all Elements of Your Database Operations With Zabbix
Monitoring all Elements of Your Database Operations With Zabbix
Zabbix
 
Alexei Vladishev - Zabbix - Monitoring Solution for Everyone
Alexei Vladishev - Zabbix - Monitoring Solution for EveryoneAlexei Vladishev - Zabbix - Monitoring Solution for Everyone
Alexei Vladishev - Zabbix - Monitoring Solution for Everyone
Zabbix
 
Terraform 101
Terraform 101Terraform 101
Terraform 101
Haggai Philip Zagury
 
Zabbix Monitoring Platform
Zabbix Monitoring Platform Zabbix Monitoring Platform
Zabbix Monitoring Platform
Seyedmajid Etehadi
 
Nginx Reverse Proxy with Kafka.pptx
Nginx Reverse Proxy with Kafka.pptxNginx Reverse Proxy with Kafka.pptx
Nginx Reverse Proxy with Kafka.pptx
wonyong hwang
 
UserParameter vs Zabbix Sender - 1º ZABBIX MEETUP DO INTERIOR-SP
UserParameter vs Zabbix Sender - 1º ZABBIX MEETUP DO INTERIOR-SPUserParameter vs Zabbix Sender - 1º ZABBIX MEETUP DO INTERIOR-SP
UserParameter vs Zabbix Sender - 1º ZABBIX MEETUP DO INTERIOR-SP
André Déo
 
How to Avoid Common Mistakes When Using Reactor Netty
How to Avoid Common Mistakes When Using Reactor NettyHow to Avoid Common Mistakes When Using Reactor Netty
How to Avoid Common Mistakes When Using Reactor Netty
VMware Tanzu
 
ELK introduction
ELK introductionELK introduction
ELK introduction
Waldemar Neto
 
Terraform
TerraformTerraform
Terraform
Phil Wilkins
 
NGINX Back to Basics Part 3: Security (Japanese Version)
NGINX Back to Basics Part 3: Security (Japanese Version)NGINX Back to Basics Part 3: Security (Japanese Version)
NGINX Back to Basics Part 3: Security (Japanese Version)
NGINX, Inc.
 
MySQL Performance Tuning: Top 10 Tips
MySQL Performance Tuning: Top 10 TipsMySQL Performance Tuning: Top 10 Tips
MySQL Performance Tuning: Top 10 Tips
OSSCube
 
Elastic Stack Introduction
Elastic Stack IntroductionElastic Stack Introduction
Elastic Stack Introduction
Vikram Shinde
 
Zabbix introduction ( RadixCloud Radix Technologies SA)
Zabbix introduction ( RadixCloud Radix Technologies SA)Zabbix introduction ( RadixCloud Radix Technologies SA)
Zabbix introduction ( RadixCloud Radix Technologies SA)
Martin Markovski
 
Terraform -- Infrastructure as Code
Terraform -- Infrastructure as CodeTerraform -- Infrastructure as Code
Terraform -- Infrastructure as Code
Martin Schütte
 

What's hot (20)

Apresentacao zabbix
Apresentacao zabbixApresentacao zabbix
Apresentacao zabbix
 
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
 
Terraform modules and best-practices - September 2018
Terraform modules and best-practices - September 2018Terraform modules and best-practices - September 2018
Terraform modules and best-practices - September 2018
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
 
MySQL Performance Schema in Action: the Complete Tutorial
MySQL Performance Schema in Action: the Complete TutorialMySQL Performance Schema in Action: the Complete Tutorial
MySQL Performance Schema in Action: the Complete Tutorial
 
Monitoring all Elements of Your Database Operations With Zabbix
Monitoring all Elements of Your Database Operations With ZabbixMonitoring all Elements of Your Database Operations With Zabbix
Monitoring all Elements of Your Database Operations With Zabbix
 
Alexei Vladishev - Zabbix - Monitoring Solution for Everyone
Alexei Vladishev - Zabbix - Monitoring Solution for EveryoneAlexei Vladishev - Zabbix - Monitoring Solution for Everyone
Alexei Vladishev - Zabbix - Monitoring Solution for Everyone
 
Terraform 101
Terraform 101Terraform 101
Terraform 101
 
Zabbix Monitoring Platform
Zabbix Monitoring Platform Zabbix Monitoring Platform
Zabbix Monitoring Platform
 
Nginx Reverse Proxy with Kafka.pptx
Nginx Reverse Proxy with Kafka.pptxNginx Reverse Proxy with Kafka.pptx
Nginx Reverse Proxy with Kafka.pptx
 
UserParameter vs Zabbix Sender - 1º ZABBIX MEETUP DO INTERIOR-SP
UserParameter vs Zabbix Sender - 1º ZABBIX MEETUP DO INTERIOR-SPUserParameter vs Zabbix Sender - 1º ZABBIX MEETUP DO INTERIOR-SP
UserParameter vs Zabbix Sender - 1º ZABBIX MEETUP DO INTERIOR-SP
 
How to Avoid Common Mistakes When Using Reactor Netty
How to Avoid Common Mistakes When Using Reactor NettyHow to Avoid Common Mistakes When Using Reactor Netty
How to Avoid Common Mistakes When Using Reactor Netty
 
ELK introduction
ELK introductionELK introduction
ELK introduction
 
Terraform
TerraformTerraform
Terraform
 
NGINX Back to Basics Part 3: Security (Japanese Version)
NGINX Back to Basics Part 3: Security (Japanese Version)NGINX Back to Basics Part 3: Security (Japanese Version)
NGINX Back to Basics Part 3: Security (Japanese Version)
 
MySQL Performance Tuning: Top 10 Tips
MySQL Performance Tuning: Top 10 TipsMySQL Performance Tuning: Top 10 Tips
MySQL Performance Tuning: Top 10 Tips
 
Elastic Stack Introduction
Elastic Stack IntroductionElastic Stack Introduction
Elastic Stack Introduction
 
Terraform
TerraformTerraform
Terraform
 
Zabbix introduction ( RadixCloud Radix Technologies SA)
Zabbix introduction ( RadixCloud Radix Technologies SA)Zabbix introduction ( RadixCloud Radix Technologies SA)
Zabbix introduction ( RadixCloud Radix Technologies SA)
 
Terraform -- Infrastructure as Code
Terraform -- Infrastructure as CodeTerraform -- Infrastructure as Code
Terraform -- Infrastructure as Code
 

Viewers also liked

Zabbix monitoring in 5 pictures
Zabbix monitoring in 5 pictures  Zabbix monitoring in 5 pictures
Zabbix monitoring in 5 pictures
Nicola Mauri
 
Zabbix for Hybrid Cloud Management
Zabbix for Hybrid Cloud ManagementZabbix for Hybrid Cloud Management
Zabbix for Hybrid Cloud Management
Daisuke Ikeda
 
Monitoring with Stackdriver
Monitoring with StackdriverMonitoring with Stackdriver
Monitoring with Stackdriver
denise stockman
 
Cas d'étude - Zabbix Toulouse #1 - ZUG
Cas d'étude - Zabbix Toulouse #1 - ZUGCas d'étude - Zabbix Toulouse #1 - ZUG
Cas d'étude - Zabbix Toulouse #1 - ZUG
Zabbix User Group
 
Présentation de Zabbix - Zabbix Lyon - ZUG
Présentation de Zabbix - Zabbix Lyon - ZUGPrésentation de Zabbix - Zabbix Lyon - ZUG
Présentation de Zabbix - Zabbix Lyon - ZUG
Zabbix User Group
 
Garelic: Google Analytics as App Performance monitoring
Garelic: Google Analytics as App Performance monitoringGarelic: Google Analytics as App Performance monitoring
Garelic: Google Analytics as App Performance monitoringJano Suchal
 
Nouveautés Zabbix 3.2 - Zabbix Lyon - ZUG
Nouveautés Zabbix 3.2 - Zabbix Lyon - ZUGNouveautés Zabbix 3.2 - Zabbix Lyon - ZUG
Nouveautés Zabbix 3.2 - Zabbix Lyon - ZUG
Zabbix User Group
 
Running Cassandra in AWS
Running Cassandra in AWSRunning Cassandra in AWS
Running Cassandra in AWS
DataStax Academy
 
Automating Zabbix with Puppet (Werner Dijkerman / 26-11-2015)
Automating Zabbix with Puppet (Werner Dijkerman / 26-11-2015)Automating Zabbix with Puppet (Werner Dijkerman / 26-11-2015)
Automating Zabbix with Puppet (Werner Dijkerman / 26-11-2015)
Nederlandstalige Zabbix Gebruikersgroep
 
Présentation des nouveautés de Zabbix 3.2 - Zabbix Toulouse #1 - ZUG
Présentation des nouveautés de Zabbix 3.2 - Zabbix Toulouse #1 - ZUGPrésentation des nouveautés de Zabbix 3.2 - Zabbix Toulouse #1 - ZUG
Présentation des nouveautés de Zabbix 3.2 - Zabbix Toulouse #1 - ZUG
Zabbix User Group
 
Ingus Vilnis - Benefits of Zabbix Training | ZabConf2016
Ingus Vilnis -  Benefits of Zabbix Training | ZabConf2016Ingus Vilnis -  Benefits of Zabbix Training | ZabConf2016
Ingus Vilnis - Benefits of Zabbix Training | ZabConf2016
Zabbix
 
Alain Ganuchaud - Trouble Ticket Integration with Zabbix in Large Environment...
Alain Ganuchaud - Trouble Ticket Integration with Zabbix in Large Environment...Alain Ganuchaud - Trouble Ticket Integration with Zabbix in Large Environment...
Alain Ganuchaud - Trouble Ticket Integration with Zabbix in Large Environment...
Zabbix
 
Rihards Olups - Zabbix log management
Rihards Olups - Zabbix log managementRihards Olups - Zabbix log management
Rihards Olups - Zabbix log management
Zabbix
 
Zabbix as Enabler Platform for Business Model of DataBase as a Service DBAaaS
Zabbix as Enabler Platform for Business Model of DataBase as a Service DBAaaSZabbix as Enabler Platform for Business Model of DataBase as a Service DBAaaS
Zabbix as Enabler Platform for Business Model of DataBase as a Service DBAaaS
Zabbix
 
13ª aula do 4º ano – Análise do Horóscopo Natal
13ª aula do 4º ano – Análise do Horóscopo Natal13ª aula do 4º ano – Análise do Horóscopo Natal
13ª aula do 4º ano – Análise do Horóscopo Natal
Quiron
 
Vmware vSphere Api Best Practices
Vmware vSphere Api Best PracticesVmware vSphere Api Best Practices
Vmware vSphere Api Best Practices
Pablo Roesch
 
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with ZabbixZabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
Zabbix
 
Виртуализация инфраструктуры ЦОД российской разработки // Владимир Порохов (O...
Виртуализация инфраструктуры ЦОД российской разработки // Владимир Порохов (O...Виртуализация инфраструктуры ЦОД российской разработки // Владимир Порохов (O...
Виртуализация инфраструктуры ЦОД российской разработки // Владимир Порохов (O...
IBS
 
vSphere APIs for performance monitoring
vSphere APIs for performance monitoringvSphere APIs for performance monitoring
vSphere APIs for performance monitoringAlan Renouf
 
Bias Driven Development - Mario Fusco - Codemotion Milan 2016
Bias Driven Development - Mario Fusco - Codemotion Milan 2016Bias Driven Development - Mario Fusco - Codemotion Milan 2016
Bias Driven Development - Mario Fusco - Codemotion Milan 2016
Codemotion
 

Viewers also liked (20)

Zabbix monitoring in 5 pictures
Zabbix monitoring in 5 pictures  Zabbix monitoring in 5 pictures
Zabbix monitoring in 5 pictures
 
Zabbix for Hybrid Cloud Management
Zabbix for Hybrid Cloud ManagementZabbix for Hybrid Cloud Management
Zabbix for Hybrid Cloud Management
 
Monitoring with Stackdriver
Monitoring with StackdriverMonitoring with Stackdriver
Monitoring with Stackdriver
 
Cas d'étude - Zabbix Toulouse #1 - ZUG
Cas d'étude - Zabbix Toulouse #1 - ZUGCas d'étude - Zabbix Toulouse #1 - ZUG
Cas d'étude - Zabbix Toulouse #1 - ZUG
 
Présentation de Zabbix - Zabbix Lyon - ZUG
Présentation de Zabbix - Zabbix Lyon - ZUGPrésentation de Zabbix - Zabbix Lyon - ZUG
Présentation de Zabbix - Zabbix Lyon - ZUG
 
Garelic: Google Analytics as App Performance monitoring
Garelic: Google Analytics as App Performance monitoringGarelic: Google Analytics as App Performance monitoring
Garelic: Google Analytics as App Performance monitoring
 
Nouveautés Zabbix 3.2 - Zabbix Lyon - ZUG
Nouveautés Zabbix 3.2 - Zabbix Lyon - ZUGNouveautés Zabbix 3.2 - Zabbix Lyon - ZUG
Nouveautés Zabbix 3.2 - Zabbix Lyon - ZUG
 
Running Cassandra in AWS
Running Cassandra in AWSRunning Cassandra in AWS
Running Cassandra in AWS
 
Automating Zabbix with Puppet (Werner Dijkerman / 26-11-2015)
Automating Zabbix with Puppet (Werner Dijkerman / 26-11-2015)Automating Zabbix with Puppet (Werner Dijkerman / 26-11-2015)
Automating Zabbix with Puppet (Werner Dijkerman / 26-11-2015)
 
Présentation des nouveautés de Zabbix 3.2 - Zabbix Toulouse #1 - ZUG
Présentation des nouveautés de Zabbix 3.2 - Zabbix Toulouse #1 - ZUGPrésentation des nouveautés de Zabbix 3.2 - Zabbix Toulouse #1 - ZUG
Présentation des nouveautés de Zabbix 3.2 - Zabbix Toulouse #1 - ZUG
 
Ingus Vilnis - Benefits of Zabbix Training | ZabConf2016
Ingus Vilnis -  Benefits of Zabbix Training | ZabConf2016Ingus Vilnis -  Benefits of Zabbix Training | ZabConf2016
Ingus Vilnis - Benefits of Zabbix Training | ZabConf2016
 
Alain Ganuchaud - Trouble Ticket Integration with Zabbix in Large Environment...
Alain Ganuchaud - Trouble Ticket Integration with Zabbix in Large Environment...Alain Ganuchaud - Trouble Ticket Integration with Zabbix in Large Environment...
Alain Ganuchaud - Trouble Ticket Integration with Zabbix in Large Environment...
 
Rihards Olups - Zabbix log management
Rihards Olups - Zabbix log managementRihards Olups - Zabbix log management
Rihards Olups - Zabbix log management
 
Zabbix as Enabler Platform for Business Model of DataBase as a Service DBAaaS
Zabbix as Enabler Platform for Business Model of DataBase as a Service DBAaaSZabbix as Enabler Platform for Business Model of DataBase as a Service DBAaaS
Zabbix as Enabler Platform for Business Model of DataBase as a Service DBAaaS
 
13ª aula do 4º ano – Análise do Horóscopo Natal
13ª aula do 4º ano – Análise do Horóscopo Natal13ª aula do 4º ano – Análise do Horóscopo Natal
13ª aula do 4º ano – Análise do Horóscopo Natal
 
Vmware vSphere Api Best Practices
Vmware vSphere Api Best PracticesVmware vSphere Api Best Practices
Vmware vSphere Api Best Practices
 
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with ZabbixZabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
 
Виртуализация инфраструктуры ЦОД российской разработки // Владимир Порохов (O...
Виртуализация инфраструктуры ЦОД российской разработки // Владимир Порохов (O...Виртуализация инфраструктуры ЦОД российской разработки // Владимир Порохов (O...
Виртуализация инфраструктуры ЦОД российской разработки // Владимир Порохов (O...
 
vSphere APIs for performance monitoring
vSphere APIs for performance monitoringvSphere APIs for performance monitoring
vSphere APIs for performance monitoring
 
Bias Driven Development - Mario Fusco - Codemotion Milan 2016
Bias Driven Development - Mario Fusco - Codemotion Milan 2016Bias Driven Development - Mario Fusco - Codemotion Milan 2016
Bias Driven Development - Mario Fusco - Codemotion Milan 2016
 

Similar to Google Cloud Platform monitoring with Zabbix

Monitoring und Metriken im Wunderland
Monitoring und Metriken im WunderlandMonitoring und Metriken im Wunderland
Monitoring und Metriken im Wunderland
D
 
Monitoring using Prometheus and Grafana
Monitoring using Prometheus and GrafanaMonitoring using Prometheus and Grafana
Monitoring using Prometheus and Grafana
Arvind Kumar G.S
 
What's new in android jakarta gdg (2015-08-26)
What's new in android   jakarta gdg (2015-08-26)What's new in android   jakarta gdg (2015-08-26)
What's new in android jakarta gdg (2015-08-26)
Google
 
Monitoring with Prometheus
Monitoring with PrometheusMonitoring with Prometheus
Monitoring with Prometheus
Richard Langlois P. Eng.
 
Docker, Zabbix and auto-scaling
Docker, Zabbix and auto-scalingDocker, Zabbix and auto-scaling
Docker, Zabbix and auto-scaling
Vitaly Peregudov
 
Windows Remote Management - EN
Windows Remote Management - ENWindows Remote Management - EN
Windows Remote Management - ENKirill Nikolaev
 
2 years with python and serverless
2 years with python and serverless2 years with python and serverless
2 years with python and serverless
Hector Canto
 
Monitoring Weave Cloud with Prometheus
Monitoring Weave Cloud with PrometheusMonitoring Weave Cloud with Prometheus
Monitoring Weave Cloud with Prometheus
Weaveworks
 
DevOps, Microservices and Serverless Architecture
DevOps, Microservices and Serverless ArchitectureDevOps, Microservices and Serverless Architecture
DevOps, Microservices and Serverless Architecture
Mikhail Prudnikov
 
Timely Year Two: Lessons Learned Building a Scalable Metrics Analytic System
Timely Year Two: Lessons Learned Building a Scalable Metrics Analytic SystemTimely Year Two: Lessons Learned Building a Scalable Metrics Analytic System
Timely Year Two: Lessons Learned Building a Scalable Metrics Analytic System
Accumulo Summit
 
Apache Eagle at Hadoop Summit 2016 San Jose
Apache Eagle at Hadoop Summit 2016 San JoseApache Eagle at Hadoop Summit 2016 San Jose
Apache Eagle at Hadoop Summit 2016 San Jose
Hao Chen
 
Apache Eagle: Secure Hadoop in Real Time
Apache Eagle: Secure Hadoop in Real TimeApache Eagle: Secure Hadoop in Real Time
Apache Eagle: Secure Hadoop in Real Time
DataWorks Summit/Hadoop Summit
 
Scaling asp.net websites to millions of users
Scaling asp.net websites to millions of usersScaling asp.net websites to millions of users
Scaling asp.net websites to millions of users
oazabir
 
Performance eng prakash.sahu
Performance eng prakash.sahuPerformance eng prakash.sahu
Performance eng prakash.sahu
Dr. Prakash Sahu
 
[OpenInfra Days Korea 2018] Day 2 - E6 - OpenInfra monitoring with Prometheus
[OpenInfra Days Korea 2018] Day 2 - E6 - OpenInfra monitoring with Prometheus[OpenInfra Days Korea 2018] Day 2 - E6 - OpenInfra monitoring with Prometheus
[OpenInfra Days Korea 2018] Day 2 - E6 - OpenInfra monitoring with Prometheus
OpenStack Korea Community
 
using Mithril.js + postgREST to build and consume API's
using Mithril.js + postgREST to build and consume API'susing Mithril.js + postgREST to build and consume API's
using Mithril.js + postgREST to build and consume API's
Antônio Roberto Silva
 
WebSphere Technical University: Top WebSphere Problem Determination Features
WebSphere Technical University: Top WebSphere Problem Determination FeaturesWebSphere Technical University: Top WebSphere Problem Determination Features
WebSphere Technical University: Top WebSphere Problem Determination Features
Chris Bailey
 
6 tips for improving ruby performance
6 tips for improving ruby performance6 tips for improving ruby performance
6 tips for improving ruby performance
Engine Yard
 
Automatically scaling your Kubernetes workloads - SVC201-S - Chicago AWS Summit
Automatically scaling your Kubernetes workloads - SVC201-S - Chicago AWS SummitAutomatically scaling your Kubernetes workloads - SVC201-S - Chicago AWS Summit
Automatically scaling your Kubernetes workloads - SVC201-S - Chicago AWS Summit
Amazon Web Services
 
Prometheus - Utah Software Architecture Meetup - Clint Checketts
Prometheus - Utah Software Architecture Meetup - Clint CheckettsPrometheus - Utah Software Architecture Meetup - Clint Checketts
Prometheus - Utah Software Architecture Meetup - Clint Checketts
clintchecketts
 

Similar to Google Cloud Platform monitoring with Zabbix (20)

Monitoring und Metriken im Wunderland
Monitoring und Metriken im WunderlandMonitoring und Metriken im Wunderland
Monitoring und Metriken im Wunderland
 
Monitoring using Prometheus and Grafana
Monitoring using Prometheus and GrafanaMonitoring using Prometheus and Grafana
Monitoring using Prometheus and Grafana
 
What's new in android jakarta gdg (2015-08-26)
What's new in android   jakarta gdg (2015-08-26)What's new in android   jakarta gdg (2015-08-26)
What's new in android jakarta gdg (2015-08-26)
 
Monitoring with Prometheus
Monitoring with PrometheusMonitoring with Prometheus
Monitoring with Prometheus
 
Docker, Zabbix and auto-scaling
Docker, Zabbix and auto-scalingDocker, Zabbix and auto-scaling
Docker, Zabbix and auto-scaling
 
Windows Remote Management - EN
Windows Remote Management - ENWindows Remote Management - EN
Windows Remote Management - EN
 
2 years with python and serverless
2 years with python and serverless2 years with python and serverless
2 years with python and serverless
 
Monitoring Weave Cloud with Prometheus
Monitoring Weave Cloud with PrometheusMonitoring Weave Cloud with Prometheus
Monitoring Weave Cloud with Prometheus
 
DevOps, Microservices and Serverless Architecture
DevOps, Microservices and Serverless ArchitectureDevOps, Microservices and Serverless Architecture
DevOps, Microservices and Serverless Architecture
 
Timely Year Two: Lessons Learned Building a Scalable Metrics Analytic System
Timely Year Two: Lessons Learned Building a Scalable Metrics Analytic SystemTimely Year Two: Lessons Learned Building a Scalable Metrics Analytic System
Timely Year Two: Lessons Learned Building a Scalable Metrics Analytic System
 
Apache Eagle at Hadoop Summit 2016 San Jose
Apache Eagle at Hadoop Summit 2016 San JoseApache Eagle at Hadoop Summit 2016 San Jose
Apache Eagle at Hadoop Summit 2016 San Jose
 
Apache Eagle: Secure Hadoop in Real Time
Apache Eagle: Secure Hadoop in Real TimeApache Eagle: Secure Hadoop in Real Time
Apache Eagle: Secure Hadoop in Real Time
 
Scaling asp.net websites to millions of users
Scaling asp.net websites to millions of usersScaling asp.net websites to millions of users
Scaling asp.net websites to millions of users
 
Performance eng prakash.sahu
Performance eng prakash.sahuPerformance eng prakash.sahu
Performance eng prakash.sahu
 
[OpenInfra Days Korea 2018] Day 2 - E6 - OpenInfra monitoring with Prometheus
[OpenInfra Days Korea 2018] Day 2 - E6 - OpenInfra monitoring with Prometheus[OpenInfra Days Korea 2018] Day 2 - E6 - OpenInfra monitoring with Prometheus
[OpenInfra Days Korea 2018] Day 2 - E6 - OpenInfra monitoring with Prometheus
 
using Mithril.js + postgREST to build and consume API's
using Mithril.js + postgREST to build and consume API'susing Mithril.js + postgREST to build and consume API's
using Mithril.js + postgREST to build and consume API's
 
WebSphere Technical University: Top WebSphere Problem Determination Features
WebSphere Technical University: Top WebSphere Problem Determination FeaturesWebSphere Technical University: Top WebSphere Problem Determination Features
WebSphere Technical University: Top WebSphere Problem Determination Features
 
6 tips for improving ruby performance
6 tips for improving ruby performance6 tips for improving ruby performance
6 tips for improving ruby performance
 
Automatically scaling your Kubernetes workloads - SVC201-S - Chicago AWS Summit
Automatically scaling your Kubernetes workloads - SVC201-S - Chicago AWS SummitAutomatically scaling your Kubernetes workloads - SVC201-S - Chicago AWS Summit
Automatically scaling your Kubernetes workloads - SVC201-S - Chicago AWS Summit
 
Prometheus - Utah Software Architecture Meetup - Clint Checketts
Prometheus - Utah Software Architecture Meetup - Clint CheckettsPrometheus - Utah Software Architecture Meetup - Clint Checketts
Prometheus - Utah Software Architecture Meetup - Clint Checketts
 

Recently uploaded

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 

Recently uploaded (20)

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 

Google Cloud Platform monitoring with Zabbix

  • 1. 1 Google Cloud Platform monitoring with Zabbix Google Cloud Platform Max Kuzkin (maxkuzkin@gmail.com) version 24 | Sep-02-2016
  • 2. 2 Zabbix – Terminology Host = any monitored device, where Agent (or SNMP, JMX, IPMI interfaces) are installed Examples: Linux/Windows Server, Router, etc. Item = particular metric configured for a particular Host Examples: system.cpu.load[all,avg5], system.cpu.num[online], script[echo,hello,world], net.tcp.service[http] … Key = type of Item that can be gathered from the Host Examples: system.cpu.load[<cpu>,<mode>], system.cpu.num[<type>], script[<parameter1>,<parameter2>,...], net.tcp.service[<service>,<ip>,<port>] …
  • 3. 3 Zabbix: Operations Flow Operations Agent system.cpu.load[all,avg5] system.cpu.num[online] script[echo,hello,world] net.tcp.service[http] … DB Agent system.cpu.load[all,avg5] system.cpu.num[online] script[echo,hello,world] net.tcp.service[http] … Host 2 Host 2
  • 4. 4 Zabbix Key → Item Mapping Key + Parameters Data type mapping Value mapping Type of Information Data Type (numeric)
  • 5. 5 Extending Zabbix 1. External Checks Syntax: script[<parameter1>, <parameter2>,...] Example: check_oracle.sh["-h", "{HOST.CONN}"] More: https://www.zabbix.com/documentation/2.4/manual/config/items/itemtypes/external 2. User Parameters Syntax: UserParameter=key[*], command Example: UserParameter=ping[*], echo $1 More: https://www.zabbix.com/documentation/2.4/manual/config/items/userparameters Demoed in this presentation
  • 8. 8 Google Cloud Monitoring Operations Service 1 Service 2 DB 1 DB 2 App Engine Cloud SQL Google Cloud Platform Monitoring API
  • 9. 9 Google Monitoring API v3 Try yourself: https://developers.google.com/apis-explorer/#p/monitoring.googleapis.com/v3/ # Method Description 1 collectdTimeSeries.create Stackdriver Monitoring Agent only: Creates a new time series. This method is only for use by the Google Monitoring Agent. Use projects.timeSeries.create instead. 2 groups.create Creates a new group. 3 groups.delete Deletes an existing group. 4 groups.get Gets a single group. 5 groups.list Lists the existing groups. 6 groups.members.list Lists the monitored resources that are members of a group. 7 groups.update Updates an existing group. You can change any group attributes except name. 8 metricDescriptors.create Creates a new metric descriptor. User-created metric descriptors define custom metrics (/monitoring/custom-metrics). 9 metricDescriptors.delete Deletes a metric descriptor. Only user-created custom metrics (/monitoring/custom-metrics) can be deleted. 10 metricDescriptors.get Gets a single metric descriptor. 11 metricDescriptors.list Lists metric descriptors that match a filter. 12 monitoredResourceDescriptors.get Gets a single monitored resource descriptor. 13 monitoredResourceDescriptors.list Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account. 14 timeSeries.create Creates or adds data to one or more time series. 15 timeSeries.list Lists time series that match a filter.
  • 10. 10 Some of App Engine Counters # Counter ID Value Description 1 http/server/response_count DELTA INT64 Delta HTTP response count. 2 http/server/response_latencies DELTA, DISTRIBUTION HTTP response latency. 3 system/network/received_bytes_count DELTA INT64 Delta count of incoming network bandwidth. 4 system/network/sent_bytes_count DELTA INT64 Delta count of outgoing network bandwidth. 5 system/cpu/usage GAUGE INT64 CPU usage in megacycles. Much more: https://cloud.google.com/monitoring/api/metrics Services can also define their own custom counters.
  • 11. 11 timeSeries.list parameters # Parameter Example 1 Project Name projects/odin-ap 2 Period of aggregation 3600s 3 Overall aggregation rule REDUCE_SUM 4 Fields for grouping metric.label.response_code 5 Series aggregation rule ALIGN_SUM 6 Filter metric.type = "appengine.googleapis.com/http/server/response_count" AND resource.label.module_id = "service" AND metric.label.response_code >= 500 AND metric.label.response_code <= 599 7 Start Time 2016-08-27T23:00:00.000Z 8 End Time 2016-08-28T00:00:00.000Z More on filters: https://cloud.google.com/monitoring/api/v3/filters#comparisons
  • 12. 12 timeSeries.list example call # Parameter Example 1 Project Name projects/odin-ap 2 Period of aggregation 3600s 3 Overall aggregation rule REDUCE_SUM 4 Fields for grouping metric.label.response_code 5 Series aggregation rule ALIGN_SUM 6 Filter metric.type = "appengine.googleapis.com/http/server/response_count" AND resource.label.module_id = "service" AND metric.label.response_code >= 500 AND metric.label.response_code <= 599 7 Start Time 2016-08-27T23:00:00.000Z 8 End Time 2016-08-28T00:00:00.000Z
  • 13. 13 GCP Monitoring API Command Line https://github.com/odin-public/gcpmetrics
  • 14. 14 GCP Monitoring API Command Line $ pip install gcpmetrics
  • 15. 15 Zabbix: External Checks Tracking HTTP response statuses 5xx (server errors) count using Google Cloud Platform Monitoring API v3
  • 16. 16 Web Scenario Zabbix: Web Monitoring Zabbix Host gcpmetrics External Check Agent Detailed Analysis DBs Cloud SQL Google Cloud Platform Monitoring Monitoring Services App Engine Monitoring API v3 DB Operations
  • 17. 17 Configure Timeouts of Zabbix •Default installation of Zabbix is configured to terminate all scripts in 3 seconds. Google Monitoring API may take 5-10+ seconds to respond, depends on the actual query. •We suggest to set Zabbix Timeout to 30 seconds Note: Applies to both server and agent configurations
  • 18. 18 Install gcpmetrics CentOS example: $ easy_install pip $ pip install --upgrade gcpmetrics Check that installation was successful with: $ gcpmetrics --version
  • 19. 19 Configure ExternalScripts $ cd /usr/lib/zabbix/externalscripts $ gcpmetrics --init-config ./gcp Creating folder: ./gcp... Creating configuration file: ./gcp/config.yaml... Creating key file: ./gcp/keyfile.json... Configuration initialized, use --config to reference it.
  • 22. 22 Create 2 scripts in $ cd /externalscripts/ $ vim tm-http5xx-absolute.sh $ vim tm-http5xx-relative.sh 2 scripts are needed to demo both Absolute and Delta behavior of Zabbix because it doesn’t allow 2 items to refer to the same script.
  • 24. 24 Create Graph with those 2 Items
  • 25. 25 Graph with those 2 Items absolute relative Some 5xx error happened there