まいんだーのはてなブログ

はてブなのはてブロなのどっちなの

UCD-DISKIO-MIB::diskIOTable とかを取りたいのに UCD-SNMP-MIB::ucdExperimental と出てしまい取れなくて生きるのがつらいとき

cloudforecast とかを使ってdiskIOを収集するにあたって diskIONWritten を指定して取るケースは多々あると思います。

しかしながら

$ snmpwalk -v 2c -c public installer1 1.3.6.1.4.1.2021.13.15.1.1.4
UCD-SNMP-MIB::ucdExperimental.15.1.1.4.1 = Counter32: 0
〜 中略 〜
UCD-SNMP-MIB::ucdExperimental.15.1.1.4.25 = Counter32: 4062435328
UCD-SNMP-MIB::ucdExperimental.15.1.1.4.26 = Counter32: 51200
UCD-SNMP-MIB::ucdExperimental.15.1.1.4.27 = Counter32: 4062384128
UCD-SNMP-MIB::ucdExperimental.15.1.1.4.28 = Counter32: 4062384128
UCD-SNMP-MIB::ucdExperimental.15.1.1.4.29 = Counter32: 0

とか出てしまって値が取れない事があるときは下記のように net-snmp をインストールすれば出るはず。

$ ./configure --with-perl-modules --with-mib-modules="ucd-snmp/diskio"
$ make
# make install

これで CloudForecast::Data::Diskio に "schema and result values is no match" とか怒られることもなくなり運用が捗ります。

MySQL5.6 だと ruby-mysql2 が入ったふりをする

Railsアプリをインストールする際にMySQL 5.6だと、mysql2のインストールが問題なく行ったかのように見えるが、実際にアプリを起動しようとすると

I, [2013-04-22T14:30:03.908634 #10246]  INFO -- : Refreshing Gem list                                                                                       
/home/nn/redmine/redmine-2.2.2/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `require': Please install the mysql2 adapter: `gem install activerecord-mysql2-adapter` (/home/nn/redmine/redmine-2.2.2/vendor/bundle/ruby/1.9.1/gems/mysql2-0.3.11/lib/mysql2/mysql2.so: undefined symbol: __cxa_pure_virtual - /home/nn/redmine/redmine-2.2.2/vendor/bundle/ruby/1.9.1/gems/mysql2-0.3.11/lib/mysql2/mysql2.so) (LoadError)

とか言われて起動せず生きるのがつらい状況になっていた。

調べてみると @n0ts さんが



ということをおっしゃっており、実際その通りやってみたら解決して無事アプリが動き始めた。

mysql2の何が悪いのかはこれから調べる必要があるが、新規に Rails 開発するときに MySQL5.6 で始めると生きるのがつらいことになるかもしれないのでメモ。

MySQL Casualにおける 事前登録不要/先着順受付 という開催方式に関する報告

MySQL Casualという、気づくともう2,3年前くらいからやっているイベントがあります。
このほどそれの第四回を開催できる運びとなり、昨今言われている「ドタキャン/何も言わずに来ない」系のなんとやらをどうにかする施策を打ってみようと思ってやったことについてまとめみたいなのを書いておきます。

結論

参加者の方々を細かく追わなくて良いが、不特定多数を相手にする必要がある場合は今回MySQL Casualが取った「事前登録不要/先着順受付/指定時間で締め切り」という手法が有効です。
参加者の方々を細かく追う必要がある場合においても、受付でケア出来るのであれば有効です。

今後のMySQL Casualについては基本「事前登録不要/先着順受付/指定時間で締め切り」というやり方で行こうと思います。

なぜそうするのか

事前登録した瞬間は行きたいと思っていても、当日までに事情が変わるケースというのは往々にしてあるからです。
そういったことが「事前登録不要/先着順受付/指定時間で締め切り」にすることで考慮せずに済むように(参会者も開催者も)なるわけで、双方の負担が減ります。

問題はないのか

問題をどのように定義するかによりますが、今までは開催者が多くのリスクを背負い込む形になっていたのが、開催者と参加者が負うリスクがより平等になるという点で問題は(今までに比べて)格段に減るという印象です。

「当日本当に行ける/行きたい人」が参加できる枠組みに変えたほうがいいよねというのに反論がある人は居ないんじゃないかなと思います。

このやり方が合わないケース

事前にキャッシュアウトが発生するような、もう一段高い規模のイベントには合わないでしょう。
また、極めて限定された人を集めて、もっと絞り込んだ話(例えばRiakシリアスのような)をしたい場合には合いません。

前者は事前に集金してリスクを軽減するという手が取れるし、後者は紹介制にして人同士のつながりを担保にしているわけなので、これもひとつのやり方です。

まとめ

MySQL Casual vol.4 はとってもカジュアルだったと思うし、今回初参加が8割くらいの勢いでいらっしゃって、この形式にしてとっても良かったので参考にできるケースがあればどうぞ、という話です。
質問があれば @myfinder を捕まえて聞けば答えられることは答えます。

Riak Serious Talksで(フィクションだけど)ナマナマシイ話しをしてきた

SEE ALSO: Riak Serious Talksやった

(フィクションだけど)参加してきました。

Riak Serious Talks on Zusaar
Riak Serious Talk #1 #riak_serious - Togetter

内容は(フィクションだけど)アレなので置いておいて、勉強会の体裁としてちょっと新しいかなーと思うので、それについて。

招待制

今回は全力で(フィクションだけど)Riakを使い始めた現状について(フィクションだけど)トークして(フィクションだけど)フィードバックや意見をもらうことを考えており「(フィクションだけど)あ…ありのまま今起こっている事を話すぜ」ということで参加をしており、参加者の皆様もそれをよく(フィクションだけど)理解いただけて(フィクションだけど)話をできたと思っております。招待制とっても安心出来ますね。

また、受付をしておりましたが「誰の招待もない」選択のまま突撃してくる方がいらっしゃり、それはとても勇気のあることだと思いましたが、どんなに言っても聞かない人は聞かないというのもよくわかった次第です。

遅刻厳禁

いちいち拾いに行ってるとキリがないのでいいと思いました。
会場を貸していただける方の都合上受付をちゃんとする必要があるケースだとなおさらですね。

結論

MySQL Casual Talks vol.4 はシリアストークとは趣を変えて登録不要先着順受付という枠組みにしてみました。
ちなみに先着順という言葉が示す通り、席が埋まった時点で受付を終了します。
並んでいてもその時点で切ってお帰りいただくことになりますので、どうしても参加したいという方は適切な時間にお越しいただき、受付してください。

今後

Riak Serious Talks vol.2 があれば(フィクションだけど)その後の経過とか、(フィクションだけど)実際ガチで向き合っている話をしたいと思います。
少なくとも(フィクションだけど)「10年経ってないプロダクトは使えない」などと(フィクションだけど)言われないような状態になっていたいなぁ。

ついに顕在化した気軽な Perl コミュニティ

Perl 使っている人たちが気軽に情報共有出来て過去ログも見られる場所が Lingr に出来たようです。

http://lingr.com/room/perl_jp/

Lingr にはスマホアプリもあるので、いつでも気軽に参加出来るのがいいですね。
昨日はPrePANにupしていたモジュールにコメントが付いていることをこのチャンネル経由で教えてもらったりして、お気軽だけど捗っています。

SEE ALSO: http://blog.64p.org/entry/2013/03/13/195515
SEE ALSO: http://blog.livedoor.jp/xaicron/archives/54421824.html

Monitoring Casual #3 にいってきました

まずは会場提供のペパボさん、幹事の@ume3 さん @lamanotrama さん @tnmt さん調整ありがとうございました。
セルリアンタワー綺麗でGMOさんの会議室も設備良かったですね!

  • 自分の発表

前回の続きのとおり、監視の話はせず素直に今やっている事とぶち当たった問題などを話しました。
個別のWebサイトなどを開いて説明するなどしたので、スライドは用意しておりません。

f:id:myfinder:20130309171733p:plain

概ね上記のトピックについてひと通り駆け足で話をしました。
モニカジ #4 も引き続きこの流れで行こうかなと思っております。

Fukuoka Perl Workshop #23 に参加いたしました

...せっかくの福岡とはしゃいでラーメンコンボを決めてしまったのでしばらくはおとなしくしようと思います。

  • 中洲で見つけて入ったお店のネギラーメン

f:id:myfinder:20130223021717j:plain

f:id:myfinder:20130223123915j:plain

f:id:myfinder:20130224120716j:plain


さて先日エントリしましたとおり、 JPA さんのご支援により Fukuoka Perl Workshop #23 に参加してきました。
福岡は国内行きたい場所No.1だったので、この機会は大変ありがたいものでした。

今回参加するにあたってはただ一方的に話をすることはせず、できるだけ参加する方の希望にそえるようアンケートを取ってから行きました。
結果としては、アンケートを通して事前にどんな方がいらっしゃるのかわかったり、Fukuoka.pm運営の面々と事前にメッセージを交わせたりという効果も得られて全体として満足度高められたのではと思ってます。

トーク内容は一方的にならないよう、資料は過去のダイジェストトピックをまとめ、過去アウトプットしたものを横断的に行き来できるような方針で用意しました。

1つ目が、今回話す「50ms or die.」の前提となるサービスについての解説で、これはその後の技術に踏み込む前に前提として知っておいていただきたい点について取りまとめたもので、YAPC::Asia 2012で話した内容をリファクタしたものです。
2つ目がYAPC::Asia 2012のスライド及びWEB+DB PRESS vol.70に寄稿した内容で、こちらは1つ目の内容を受けて具体的な技術について踏み込んだ話になります。
また、会場になった ヌーラボ さんの無線LAN提供もあり、都度Webを参照したりなどして進めることができ、捗りました。

アンケートの結果を踏まえ、その場その場で参加者の方に意見や質問を求めつつ進めた結果Perl自体の話よりもサービス自体やミドルウェア、運用についてと、それらを実現するためのインフラの実際的な部分に多く時間を使ったように思います。
Fukuoka.pmに参加されている方の多くがPerl以外にもメインで使う言語があるため、どちらかと言うと共通の話題がそちらに寄っていく傾向があった+今の自分が軸足を置いている点も影響あったのかなと。
特にAWS周りと分散データストア関係が盛り上がったなと。

このあたりどうだったかは実際に参加された方の感想エントリ楽しみに待っております。

福岡に拠点を持っている会社さんもいくつか(一部前まで)伺いました。

f:id:myfinder:00250223174058j:plain

  • 日本オラクル さん

f:id:myfinder:20130224123116j:plain

  • paperboy & co. さん

f:id:myfinder:20130224183353j:plain

最後に、重ねて今回の機会を頂いたJPAさん並びにFukuoka.pmの皆様に感謝いたします。ありがとうございました。