監視をテーマに参加者全員がゆるふわに好き放題しゃべる Monitoring Casual Talk に参加してきました

Zussar: http://www.zusaar.com/event/521056

発表した内容はこちら。監視の話なのかどうかは謎

MHA for MySQLの基本構成と弊社で使っているMHA管理ツールの紹介です。masterha_managerの設定とプロセス管理、そしてオンラインでのマスター切り替えをWebUIから行えるの非常に便利なツールです。オープンソースになってないのに喋りました。すみません。

今回感じたのが、モニカジ参加者かいわいでの監視ツールが zabbix か munin + nagios に固まってきている点。zabbix勢はツールの使いこなしに悩んでいて、nagios勢は設定ファイルの自動生成あたりがホットな話題という感じでした。

弊社は cloudforecast + データセンターの監視サービス + 一部nagios の環境。サーバ管理ツールとの連携とかあまりしていないので、監視漏れは気をつけていないとでてくるし、そろそろツールの改良,自動化などを考えたいと思っているところ。

ちなみに nagiosの設定ファイルは Data::Section::SimpleXslateで生成してる。

#!/usr/bin/env perl

use strict;
use warnings;
use Text::Xslate;
use Data::Section::Simple qw(get_data_section);
use Log::Minimal;
$Log::Minimal::AUTODUMP=1;

my @nodes;
for my $l ( split /\n/, get_data_section('data') ) {
    chomp($l);
    my ($ip, $host, $notify) = split /\s+/, $l;
    push @nodes, {
        ipaddr => $ip,
        hostname => $host,
        is_master => ( $host =~ m!^dbm! ) ? 1 : 0,
        notify => $notify ? 1 : 0,
    };
}

my $tx = Text::Xslate->new();
print $tx->render_string(get_data_section('tmpl'), { nodes => \@nodes });

__DATA__
@@ data
10.xx.xx.74 dbm101.service
10.xx.xx.74 dbs101.service

@@ tmpl
: for $nodes -> $node {
define host{
  use                     generic-host
  max_check_attempts      3
  host_name               <: $node.hostname :>
  alias                   <: $node.hostname :>
  address                 <: $node.ipaddr :>
  contact_groups          ldnsg
}

define service{
  use                             generic-service
  host_name                       <: $node.hostname :>
  service_description             Disk Usage
  max_check_attempts              3
  normal_check_interval           15
  retry_check_interval            15
  notification_options            u,c,r
  notifications_enabled           1
  check_command                   check_mysql5_disk
}
..
:}

define hostgroup{
  hostgroup_name  mysql5
  alias           mysql5
  members         <: $nodes.map(-> $a { $a.hostname }).join(", ") :>
}

サーバが増えても1行足すだけなので、お気楽ですね。

このブログ記事について

このページは、Masahiro Naganoが2013年3月 9日 22:34に書いたブログ記事です。

ひとつ前のブログ記事は「Plack::Middleware::AxsLog でフォーマットが任意に変更できるようになったよ & PM::AccessLogとのベンチマーク」です。

次のブログ記事は「Apache::LogFormat::Compiler version 0.05 supports custom format strings」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ

OpenID対応しています OpenIDについて
Powered by Movable Type 4.27-ja