Top Banner
Monitoring Microsoft Azure with Nagios Jeff Mendoza Microsoft Open Technologies http://1drv.ms/1vooPai [email protected]
13

Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

Dec 19, 2014

Download

Technology

Nagios

Jeff Mendoza's presentation on Monitoring Microsoft Azure with Nagios.
The presentation was given during the Nagios World Conference North America held Oct 13th - Oct 16th, 2014 in Saint Paul, MN. For more information on the conference (including photos and videos), visit: http://go.nagios.com/conference
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

Monitoring Microsoft Azure with Nagios

Jeff MendozaMicrosoft Open Technologies

http://1drv.ms/1vooPai

[email protected]

Page 2: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

Who am I?

• Software Engineer• Build Bridges• I don’t run systems

→ I need your feedback

Page 3: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

Agenda

• Microsoft Azure• Azure Properties to Monitor• Install• Each plugin

• CLI overview• Data source• Setup• Demo

Page 4: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

Microsoft Azure

Programming languages + tools.NET, Visual Studio, TFS + Git, Java, NodeJS, PHP, Python, Ruby, C++

Microsoft Cloud Infrastructure

PaaSWebMobileGamingCloud Services

DataAnalyticsMediaIdentity

IaaSWindows VMsLinux VMsStorageNetworking

Page 5: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

Azure Properties to Monitor

Compute• Basic state of machines, up/down

Storage• Detailed metrics on blobs, tables, queues

SQL Database• Canned queries to Azure SQL Database

PaaS• Azure Diagnostics (.NET)

Active Directory• Graph API and differential queries

Page 6: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

Install

$ pip install azuremonitor

Python packagehttps://pypi.python.org/pypi/azuremonitor/0.1https://github.com/msopentech/wamo

My setup• Azure VM, OpenLogic CentOS 7• Fedora EPEL repository Nagios packages

Nagios XI available on VM Depothttp://vmdepot.msopentech.com/Vhd/Show?vhdId=1420&version=1450

Page 7: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

Compute

$ check_azure_compute.py <cloud service> -p <ps file>

Cloud service should match the name in AzurePublishsettings file is the management certificate for your Azure subscriptionhttps://manage.windowsazure.com/publishsettings/index?client=xplat

Service Management REST APIhttp://msdn.microsoft.com/en-us/library/azure/ee460812.aspx

Demo

Page 8: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

Storage

$ check_azure_storage.py <stg acct> -p <ps file> --blob --tx -k <key> -w <warn level> -c <crit level>

Storage account should match the name in AzureCould also monitor tables or queues with --table or --queueList of keys: https://github.com/MSOpenTech/wamo/blob/master/check_azure_storage.py#L36

Storage Analyticshttp://msdn.microsoft.com/en-us/library/azure/hh343270.aspx

Demo

Page 9: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

SQL Database

$ check_azure_sql.py <srv addr> -u <user> -p <pass> -d <db name> -k <key> -w <warn level> -c <crit level>

Needs full address of SQL DB ServerList of keys: https://github.com/MSOpenTech/wamo/blob/master/check_azure_sql.py#L400

Dynamic Management Viewshttp://msdn.microsoft.com/en-us/library/ff394114.aspx

Requires ODBC and FreeTDS setupDemo

Page 10: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

PaaS

$ check_azure_paas.py <cloud service> -p <ps file> -s <stg act> -k <key> -w <warn level> -c <crit level>

Cloud service should match the name in AzureStorage account should match where diagnostic data is stored.List of keys: https://github.com/MSOpenTech/wamo/blob/master/check_azure_paas.py#L34

Azure Diagnosticshttp://msdn.microsoft.com/en-us/library/azure/gg433048.aspx

Page 11: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

Active Directory

$ check_azure_ad.py <domain> -c <client id> -s <secret> -k <key> -p <param>

Param is either user or group name depending on keyList of keys: https://github.com/MSOpenTech/wamo/blob/master/check_azure_ad.py#L350

Differential queries need --tempdir and multiple runsUse either --warn-on-change or --error-on-change

Graph APIhttp://msdn.microsoft.com/en-us/library/azure/hh974476.aspx

Page 12: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

Questions?

Any questions?

Thanks!

Page 13: Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios

The End

Jeff MendozaMicrosoft Open Technologies

[email protected]