2013/12/26

またすこしまがあいたのでうめあわせのえんとりです。

作業プライオリティがえらいことになっとって
年内にZabbixへの移行決着はなさそうです。

てへぺろ(・ω<)


つーかですね、こないだのMSCの社内報告書も書いてない罠…
本年最終営業日は作文でがんばりたい。

てへぺろ(・ω<)



来週はコミケに年末のご挨拶周り(+買えたら薄い本もw)をする週。
昼過ぎにちょろっと出没アド街予定です。

てへぺろ(・ω<)



良いお年をお迎えくださいませorz

2013/12/17

Ubuntu ログイン時のMotDを止める

Ubuntuのログイン時に出るMotD(Message of the Day)。
現在のステータスやaptパッケージのアップデート告知が出るようになってる。
便利なんだと思いますが、ちょっと重いのです。

マシンのステータスは別のリソースで監視してるし、
パッケージはapticronとかで監視してるしログインのたびに見てもらっても…という方用。


/etc/motd がその実体なわけだけれども、 /run/motd へのsymlink。
/etc/motdをrmすればとりあえずは出なくなりますが、
motdを作るプロセスは走ってしまうのでリソースの無駄。

探したところ、PAMに居ました。
sshdの認証が通ると pam_motd.so を呼んで、ここで/run/motdを作っている模様。

ので、コメントアウトさせていただきました。

/etc/pam.d/sshd
# Print the message of the day upon successful login.
#session    optional     pam_motd.so # [1]

【追記】
ツッコミいただきましたー。
部分的にカットしたい場合などは、 /etc/update-motd.d の下を見ると幸せになれるかも。
動的に出力する内容がスクリプトとして置いてあります。

パッケージアップデートがあるかどうかだけログイン時に知りたい時は
90-updates-available だけ有効にしておくとか、色々潰し効きますね。

Zabbixを試してみる。(2)

未解決事項あるんだけど、まあ奮闘記っつーことで。


前のフォローアップ記事に書いたとおり、
Zabbix公式のubuntuリポジトリから2.2.1を取得。

Ubuntu公式のuniverseにいるZabbix 1.8では初期テンプレートに色々詰め込まれすぎてて、
テンプレ一から作らなきゃならなかったのがよりシンプルになってた!
(Linuxテンプレを使うとhttpdは当然ながら、SMTPやFTP、果てはNNTPまで動いていると仮定されててenableにした途端ちょうエラー)


設定要素

ほぼ自分の備忘録としてまとめときます。

●ホスト

監視対象となる機器の設定。これには下記の要素が存在する。
 
・アイテム
監視するサービスや着眼ポイントの設定。
例えば、pingの打ち方とか、拾ってくるデータの定義なんかをする。

・アプリケーション
アイテムをまとめて1つのまとまりとして定義。
CPUのLoad average(1,5,15)の各アイテムをまとめてCPU Load Avgというアプリに、みたいな。
若干自信なし。

・トリガー
各アイテムの結果を元にして「状況が変化した」という判断をする閾値や条件の設定。
これで各レベルの警報をraiseする感じですな。


●アクション

で、raiseされたレベルによって「アクション」が発生する。
重要度の低いのは一般へメール、致命的なのは管理者にメール&Jabberみたいな。
アクション側では受けたトリガーレベルはもちろんのこと、元となってるテンプレや
ホストグループなんかも条件式に入れられるので、
「このシステムだけはこの人らにも」は容易に組めるわけですな。
NagiosでいうところのContactsあたりの設定。



んで、これらの設定を各ホストにいちいちやるのは面倒なので、
テンプレートという仕組みがある。

●テンプレート

要は上記のアイテムやアプリなんぞをまとめてひな形にしといて、
実際のホストを定義するときに使いまわしましょうや、という機構。

架空のホストを定義するような感じで設定しておいて、
実ホストを登録する際に「このテンプレートにリンク!」という感じ。

各ホストには複数のテンプレがリンクできるので、
「Linux基本監視」「Apache動かす用」「SQLサーバ動かす用」みたいに定義しておいて、
機能選択=テンプレ選択という感じにするのが解りやすいかと思われる。


●スクリーン

グラフとかの絵的な情報はグラフを各ホストに定義しても
Cactiのような一斉閲覧とかはできないっぽい。

じゃあどーするかというと、「スクリーン」というのを別途定義して
画面上に表示したいものを作るようだ。

スクリーンは
 ・表を作る
 ・各セルに突っ込みたいものを選択する
…という感じ。視覚的に非常に解りやすい。が、ちと重い。



▲現在の懸念(要追加調査)事項▲

・スクリーン設定時の縦横幅のデフォルト設定はないものか。
 (500×100がデフォのようだが、横1000はキツいので手打ちで400×100にしてる)

・ スイッチとかだと各I/Fのグラフをばばばばってスクリーンに自動登録してくれんもんやろか。

・各グラフのタイトルとか項目摘要名とかを手でいじれないものか。
 SWだと何がつながってるよーとかにしたい。あと、Unit/Slot/Portを短くしたい。

・他の設定項目はひとまずペンディングじゃー。



 ▲追加情報▲

SNMPホストを登録する際、もともと定義されているSNMP用テンプレの中身は
OID名が数字でなくてラベル名になっているので、snmp-mibs-downloader
パッケージをインストールしておかないと、「そんなOID知らん」って言われるかも。

# aptitude install snmp-mibs-downloader

2013/12/13

Zabbixを試してみる。(1) のフォローアップをしてみる。

昨日書いた Zabbixを試してみる。(1) の続きとゆーかフォローとゆーか訂正とゆーか。

コメントでいただき追記をした「Zabbix 2.x」の件。


なんで私がUbuntuのリポジトリに固執して
Zabbix公式から落とさなかったかとゆーと、
単にaptの管理下から離れちゃうのが嫌だったのです。

もちろんMLとかでpushをもらうようにはするんだけども、
セキュリティホールとかのアップデートのアンテナの張り出しは
ただでさえ多いのでできるだけ少なくしておきたかったの。

Zabbix公式のInstallation manual ですとwget & dpkg -iしろってことだったので
それなら自前debuildと変わらんやないかー、ということで。


これ、あくまで私の好みの問題でした。さーせん。



で、もうちょっと調べてみたらですな、
公式さんはちゃんとapt source repositoryになっとりました。

ので、早速ではございますが一度1.8をpurgeしました。

# vi /etc/apt/sources.list.d/zabbix2.0-precise.list

deb http://repo.zabbix.com/zabbix/2.2/ubuntu precise main

# wget http://repo.zabbix.com/zabbix-official-repo.key
# apt-key add zabbix-official-repo.key

# aptitude install zabbix-server-mysql zabbix-frontend-php


ちょっと幸せになりました。


# ただし、apt lineについて表立って書いてないってことは
# 突然のお取り潰しもあるかもなので、あくまで自己責任でー。



さて、構築しなおすー。


続き: Zabbixを試してみる。(2)

2013/12/12

Zabbixを試してみる。 (1)

いいかげん、NagiosとCactiに疲れてきた。
特にNagiosのコンフィグファイル修正が苦痛になってきた。UIでやりたい。

ので、 Zabbix を試すのであった。


私、最近はUbuntuとDebianを行ったり来たりしております。

以下はUbuntu 12.04 LTS Serverでのお話。
既に当該環境上ではApache2とMySQLが動作しております。


Zabbixインストール

aptitudeで簡単さん。
$ sudo aptitude install zabbix-agent zabbix-server-mysql zabbix-frontend-php
特に設定せず、 /zabbix/ でログイン可能。
初期IDは admin:zabbix 。
Cactiみたいに「初回ログイン時に強制パスワード変更」がないので注意。

[設定]-[ホスト]で監視対象となるノードを追加していく。

グラフの豆腐を何とかする

UIに関しては日本語ロケールが用意されているので楽。
が、グラフまわりで恐らく日本語を使用していて、文字化けというか豆腐が発生する。
豆腐解決前
とりあえず日本語フォント入れましょう。
今回はIPAフォントを選択。
$ sudo aptitude install fonts-ipafont
入れ終わったら、Zabbixに使用していただきたく設定。
/usr/share/zabbix/fonts に使用したいフォントのSymLinkを置く感じ。
root@test:/usr/share/zabbix/fonts# ls -al
合計 8
drwxr-xr-x  2 root root 4096 12月 12 13:05 .
drwxr-xr-x 10 root root 4096 12月 12 11:58 ..
lrwxrwxrwx  1 root root   46  4月 11  2012 DejaVuSans.ttf -> ../../fonts/truetype/ttf-dejavu/DejaVuSans.ttf

root@test:/usr/share/zabbix/fonts# ln -s /usr/share/fonts/opentype/ipafont-gothic/ipagp.ttf .

root@test:/usr/share/zabbix/fonts# ls -al
合計 8
drwxr-xr-x  2 root root 4096 12月 12 13:05 .
drwxr-xr-x 10 root root 4096 12月 12 11:58 ..
lrwxrwxrwx  1 root root   46  4月 11  2012 DejaVuSans.ttf -> ../../fonts/truetype/ttf-dejavu/DejaVuSans.ttf
lrwxrwxrwx  1 root root   50 12月 12 13:05 ipagp.ttf -> /usr/share/fonts/opentype/ipafont-gothic/ipagp.ttf
フォント設定は /usr/share/zabbix/include/defines.inc.php にある。
#       define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans');  // font file name
        define('ZBX_GRAPH_FONT_NAME', 'ipagp');       // font file name
DejaVuをコメントアウトしてIPAゴシックを有効化。
リロードしてみると…
豆腐解消後
いえーい(横ピース)

ググったりするとalternativesを使えるらしいという話もあったのだが、
残念ながら現状Ubuntuのリポジトリにはalternativesはなかったです。



ひとまずここまで。
あとは使ってる間のTipsとかTrouble Shootingを随時書かせていただきやす。



【追記】
コメントで「ttf-vlgothicかotf-ipafont-gothicを入れておけば
defines.inc.phpの書き換え不要」という情報をいただいたので調査。

zabbix.com に置いてあるdebパッケージ(2.x)を使用する場合は、
ご指摘通りのフォントを突っ込んでおくとpostinstスクリプトで
ちゃんとsymlinkを作ってくれるので手間いらずの模様。

本日現在、Preciseのuniverseリポジトリでは1.8で、
残念ながらpostinstにはそのような仕組みは入ってなかったです。

zabbix.comから落としてきたdebパッケージを使用する場合は
aptitude install ttf-vlgothic(あるいは otf-ipafont-gothic)しとくと
幸せになれます。

# 既にzabbixをインストールした後で日本語フォントを入れた場合は
# dpkg-reconfigure zabbix-frontend-php で再設定を。

ご指摘ありがとうございました。


続き: Zabbixを試してみる。(1) のフォローアップをしてみる。

2013/12/09

XPでBITSがコケる問題。

なんだか知らんけど、ここのところ何度もハマっているのでメモっておくこととする。
もちろん無保証情報です。

とはいえ、だいたいここら辺の和訳レベルだったりする。
  • XP環境(無印→SP2→SP3とアップデート)
  • Microsoft Updateを実行すると、「更新を探しています…」で帰ってこない
  • 返ってきても、いざインストールをしようとすると全パッチ即時失敗
    (0x80246008とか出たりする)
  • サービス一覧に「Background Intelligent Transfer Service(BITS)」が居ない。
    その代わり、「@%SystemRoot%\system32\qmgr.dll,-1000」とかが居る。
  • 上記サービスを起動しようとすると、エラー 1290: 0x50a で起動できない

ではプロシージャをば。
regsvr32を実行後は「成功しました」というのが出るのを確認すべし。
  1. IE閉じれ。
  2. ファイル名を指定して実行で cmd でDOS窓起動。
  3. regsvr32 qmgr.dll
  4. regsvr32 qmgrprxy.dll
  5. いっぺんWindowsを再起動する。
  6. 再起動完了後、また cmd でDOS窓起動。
  7. 以下コマンドを1行で。コピペが正義。
    %windir%\System32\rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 %windir%\inf\qmgr.inf
    このコマンド実行後「OSのディスクをくれー」と言われる場合があるが、その場合はOSディスクを入れるんじゃなくて、 %windir%\ServicePackFiles\i386 を指定してやる。
  8. 再起動。
  9. 再起動完了後、[マイコンピュータ]を右クリック、[管理]を開いて[サービス]セクションへ。
    BITSを手動で起動してみて起動できたらGood。
  10. 前項9.で起動できない(「指定されたファイルが見つからない」云々)ようなら cmd でDOS窓を開いて下記コマンドを1行で実行。
    Reg add HKLM\SYSTEM\CurrentControlSet\Services\BITS\Parameters /v ServiceDll /t REG_EXPAND_SZ /d %windir%\System32\qmgr.dll
  11. 再起動。
  12. 再起動完了後、9.と同じようにBITSサービスを手動スタートさせてみる。
  13. 開始できないようならさらに以下のコマンドを叩いて再起動。
    Reg add HKLM\SYSTEM\CurrentControlSet\Control\BackupRestore\FilesNotToBackup
  14. BITSの手動起動ができたら、スタートアップの種類を「自動」に設定しておこう。
…という感じ。コマンド叩いたりサービス管理を見たりするので、そこら辺の細かい作業方法は別途覚えておくべし。



で、MSのサイトには「WU/MUでトラブってたら自動的に直すよ」というFix itが以下らへんにある。
  http://support.microsoft.com/fixit
  http://support.microsoft.com/mats/windows_update/ja

が、BITSが死んでる場合は基本的に上記の自動修復では治らないので注意。
「不具合発見、完了」とか表示されるけど治りません。

かゆい所に手が届かないことがあるのが残念な感じ。