mruby extension module for monitoring system Takanori Suzuki

Similar documents
ZABBIX. An Enterprise-Class Open Source Distributed Monitoring Solution. Takanori Suzuki MIRACLE LINUX CORPORATION October 22, 2009

Zabbix 3.0. The Simple, the Powerful and the Shiny by Zabbix SIA

Zabbix 1.8 Network Monitoring

Intel Simple Network Management Protocol (SNMP) Subagent v6.0

AST2150 IPMI Configuration Guide

Using SNMP to Obtain Port Counter Statistics During Live Migration of a Virtual Machine. Ronny L. Bull Project Writeup For: CS644 Clarkson University

MALAYSIAN PUBLIC SECTOR OPEN SOURCE SOFTWARE (OSS) PROGRAMME. COMPARISON REPORT ON NETWORK MONITORING SYSTEMS (Nagios and Zabbix)

vcenter Operations Management Pack for SAP HANA Installation and Configuration Guide

F5 Configuring BIG-IP Local Traffic Manager (LTM) - V11. Description

Release Notes P/N e

Virtual Machine Encryption Basics

LoadRunner and Performance Center v11.52 Technical Awareness Webinar Training

Avira AntiVir MailGate 3.2 Release Notes

Product Release Notes

Technical Notes P/N Rev 01

Maintaining Non-Stop Services with Multi Layer Monitoring

Microsoft Windows PowerShell v2 For Administrators

Citrix XenServer 5.6 OpenSource Xen 2.6 on RHEL 5 OpenSource Xen 3.2 on Debian 5.0(Lenny)

4PSA VoipNow Phone Getting Started

What is new in syslog-ng Premium Edition 4 F1

DS SERIES SOLUTIONS ALL AT ONCE

Open EMS Suite. O&M Agent. Functional Overview Version 1.2. Nokia Siemens Networks 1 (18)

System Management Console User Guide

Vistara Lifecycle Management

Controlling and Managing Security with Performance Tools

A Dude probing SNMP! Building custom probes and configuring equipment using SNMP with The Dude. Andrea Coppini AIR Wireless - Malta andrea@air.com.

Parallels Desktop 4 for Windows and Linux Read Me

The Operating System Lock Down Solution for Linux

CloudLinux is a proven solution for shared hosting providers that:

This chapter explains a preparation for the use of RemoteControlService.

Enhancements to idrac7 Alert Notification

Example of Standard API

Citrix EdgeSight for Load Testing Installation Guide. Citrix EdgeSight for Load Testing 3.5

RTI Real-Time Connect. Release Notes

Configure Cisco Unified Customer Voice Portal

First Steps after Installation Guide

14.1. bs^ir^qfkd=obcib`qflk= Ñçê=emI=rkfuI=~åÇ=léÉåsjp=eçëíë

Contents. Part 1 SSH Basics 1. Acknowledgments About the Author Introduction

Host your websites. The process to host a single website is different from having multiple sites.

Goverlan Remote Control

enetworks TM Using the Syslog Feature C.1 Configuring the Syslog Feature

ENTERPRISE-CLASS MONITORING SOLUTION FOR EVERYONE ALL-IN-ONE OPEN-SOURCE DISTRIBUTED MONITORING

White Paper. Fabasoft on Linux Performance Monitoring via SNMP. Fabasoft Folio 2015 Update Rollup 2

TIBCO Enterprise Administrator Release Notes

SIG-NOC Meeting - Stuttgart 04/08/2015 Icinga - Open Source Monitoring

Importing data from Linux LDAP server to HA3969U

RUGGEDCOM NMS for Linux v1.6

Astaro Gateway Software V7.5. What s New

SAFE HARBOR STATEMENT

Installing and Configuring the Intel Server Manager 8 SNMP Subagents. Intel Server Manager 8.40

SapphireIMS 4.0 BSM Feature Specification

opennms reporting generation tool

Origins of Operating Systems OS/360. Martin Grund HPI

Server Consolidation with SQL Server 2008

Nexxis User Management

EMC Celerra Version 5.6 Technical Primer: Control Station Password Complexity Policy Technology Concepts and Business Considerations

FlexMaster First Global Wi-Fi Managed Service

Free Small Business Security Q&A Version of a Single digit Pentragilium

DS-5 ARM. Using the Debugger. Version 5.7. Copyright 2010, 2011 ARM. All rights reserved. ARM DUI 0446G (ID092311)

Feith Dashboard iq Server Version 8.1 Install Guide

TABLE OF CONTENTS. 1...Introducing N-central 3...What You Can Do With N-central 4...MONITOR: Proactively Identify Potential Problems

DS-5 ARM. Using the Debugger. Version Copyright ARM. All rights reserved. ARM DUI 0446M (ID120712)

Configuring and Monitoring Event Logs

Welcome to Apache the number one Web server in

This document describes the new features of this release and important changes since the previous one.

Configuring Dell OpenManage IT Assistant 8.0 to Monitor SNMP Traps Generated by VMware ESX Server

SapphireIMS Business Service Monitoring Feature Specification

TIBCO ActiveMatrix BusinessWorks Plug-in for TIBCO Managed File Transfer Software Installation

Open Source Monitoring

Parallels Plesk Panel

Getting Started with SandStorm NoSQL Benchmark

PZVM1 Administration Guide. V1.1 February 2014 Alain Ganuchaud. Page 1/27

CA Workload Automation Agent for Remote Execution

Public Cloud. Build, Use, Manage. Robert Schweikert. Public Cloud Architect

Which Database is Better for Zabbix? PostgreSQL vs MySQL. Yoshiharu Mori SRA OSS Inc. Japan

Oracle Cloud. What s New for Oracle Compute Cloud Service (IaaS) Topics. July What's New for Oracle Compute Cloud Service (IaaS) Release 16.

Adept PublishWave 2015 SP2 System Requirements

Rebasoft Auditor Quick Start Guide

CSP & PCI DSS Compliance on HP NonStop systems

Configuration Management: Best Practices White Paper

Architectural Overview

NETWORK MONITORING & ALERTING SERVICES SERVICE DEFINITION

Top 3 Issues and Questions (in Network Monitoring!) Developing a Network Monitoring Architecture! infotex. Dan Hadaway CRISC Managing Partner, infotex

Dell System Update Version 1.0 Preview Guide

Copyright 2013 wolfssl Inc. All rights reserved. 2

CA Nimsoft Monitor. Probe Guide for NT Event Log Monitor. ntevl v3.8 series

IT Analytics and Big Data - Making Your Life Easier

Selling Virtual Private Servers. A guide to positioning and selling VPS to your customers with Heart Internet

Zabbix : Interview 2012 of Alexei Vladishev

CAPIX Job Scheduler User Guide

Products that are referred to in this document may be trademarks and/or registered trademarks of the respective owners.

McAfee Web Gateway 7.4.1

TIBCO ActiveMatrix BusinessWorks Plug-in for Big Data Release Notes

[D-View 7 Advanced Hands-On Practice] Version 1.0

Network Monitoring Comparison

How to configure DNAT in order to publish internal services via Internet

WNMS Mobile Application

VERITAS NetBackup 6.0 Database and Application Protection

Configuring and Integrating JMX

Zabbix: monitoring millions of metrics...and a Zabbix 3.0 sneak peek

Transcription:

mruby extension module for monitoring system Takanori Suzuki

Agenda - Introduction of MIRACLE ZBX - What is mruby extension module - Why mruby module is needed - Structure of mruby extension module - How to use mruby extension module

Introduction of MIRACLE ZBX (1/2) - Monitoring system developed in MIRACLE LINUX - Forked from OSS Zabbix under GPL2 - Support many monitoring types including agent, ssh, SNMP, IPMI, etc... - Add some special features that we need - Additional event log filter in Web interface - Additional runtime configuration - Customized Windows eventlog key - etc... * Zabbix is a registered trademark of Zabbix LLC Copyright 2000-2015 MIRACLE LINUX CORPORATION All rights reserved

Introduction of MIRACLE ZBX (2/2) - Customizable monitoring features - UserParameter feature - Execute any command from monitoring agent process and get the result - External check feature - Execute any command from monitoring server process and get the result - Loadable module feature in C - Execute C module function and get the result Copyright 2000-2015 MIRACLE LINUX CORPORATION All rights reserved

Introduction of MIRACLE ZBX (2/2) - Customizable monitoring features - UserParameter feature - Execute any command from monitoring agent process and get the result - External check feature - Execute any command from monitoring server process and get the result I made mruby extension module by this feature - Loadable module feature in C - Execute C module function and get the result

What is mruby extension module - Execute mruby function in mruby file and return the result to monitoring server - Similar as mruby version of Loadable module key: mruby.module[sample.rb,args] - Execute mruby code string and return the result to monitoring server key: mruby.eval[p "hello world"]

Why mruby module is needed - Easier than C - Faster than scripting language - Embed to existing process, no fork

Structure of mruby extension module

Overview of mruby extension module - Work as a C loadable module - Translate C function call into mruby function call

When the mruby code is called - zbx_module_init() in "MonitoringModule" class - When the agent process start - zbx_module_run(args) in "MonitoringModule" class - When the monitoring key is monitored - The function can have Arguments. - zbx_module_uninit() in "MonitoringModule" class - When the agent process stop

Problems with multiprocess Monitoring agent works in multiprocess - For sharing data, shared memory is needed. - For locking, semaphore lock is needed.

Shared memory mruby-cache - Made by CharlesCui - Mruby Inter Process Share Memory. Exchange memory space with mmap for multi mruby process.

Semaphore lock mruby-semlock - Made for mruby extension module - Implementation to use semaphore lock

Sample code in multiprocess Updating shared variable safely

Other included mrbgems

How to use mruby extension module

Installation For MIRACLE LINUX v7 and other RHEL7 compatible distributions - MIRACLE ZBX 3.0.0alpha2-1 - mruby extension module Copyright 2000-2015 MIRACLE LINUX CORPORATION All rights reserved

Setting - loadable module setting is set by installed conf file. /etc/zabbix/zabbix_agentd.d/mruby_extension_module.conf - Copy sample mruby files - Start agent service

Checking - mruby.module[] - mruby.eval[]

Demo