Hatena::Groupfragments

うまい棒の断片

2014-01-24

[] 調べるものリスト 14:33 はてなブックマーク -  調べるものリスト - うまい棒の断片


  • Immutable infrastructure
    • 一度作ったサーバには手を加えず使い捨てる?
    • ベキトウ性 考えなくてよい
    • サーバ増減が頻繁に発生するようになる

2008-09-24

[][]nfsのmountオプション 23:25 はてなブックマーク - nfsのmountオプション - うまい棒の断片

デフォルトはhardで、intrなし。hard,intr有りにしといがほうが良いのかな。

  • hard, intr無し

落ちたサーバアクセスしに行ったクライアントプログラムは固まります。SIGINTなどの割り込みで中断することもできません。多くの場合、これはかなり困った状態になります。

  • hard, intr有り

落ちたサーバアクセスしに行ったクライアントプログラムは固まります。が、シグナルを送ればクライアントはファイルアクセスをエラーとして処理します。

  • soft

落ちたサーバクライアントプログラムアクセスするとエラーが返ります。

追記

やはりhard,intrが良いらしい。

  • hard

NFS マウントされたファイルシステム上のファイルにアクセスしている プログラムは、サーバがクラッシュすると宙ぶらりんになります。 これらのプロセスは intr を一緒に指定していない場合は、 中断することも kill することもできなくなります ("sure kill" を使えば別)。 NFS サーバが復活すると、 プログラムはそれぞれ何もなかったかのように再開します。 おそらくこちらが望ましい場合が多いでしょう。 全ての NFS マウントには、 hard,intr を用いることをお勧めします。

それにしてもsure killってなんだ。

[]tailで追跡をfile discrypterではなくてnameにする 11:11 はてなブックマーク - tailで追跡をfile discrypterではなくてnameにする - うまい棒の断片

defaultはfile discrypter。

tail -F、(tail --follow=name)すると、名前に対してtailで追いかけるのでrename、removeされても大丈夫。

ただ、名前で追いかけるときは--retryもつけたほうがよさげ。

  • man tailより
 --retry
tail がファイルを名前で追跡していて、ファイルがなくなったことを検知したら、再オープンを成功するまで繰り返す。このオプションを指定しなければ、 tail は単にファイルが存在しないことを報告して以降のチェックを行わない。

[]sshの"User hoge not allowed because account is locked 09:22 はてなブックマーク - sshの"User hoge not allowed because account is locked - うまい棒の断片

UsePam Noだと、ロックアカウント(パスワードが空)のユーザはログインできないらしい(鍵認証しようとしてもダメ)

UsePam yesにするか、デタラメなパスワードつけるか。


追記

openssh-4.5p1でUsePam Yesにしていると、chrootユーザがsshログインできなかった。/etc/pam.d/sshの設定を見直して回避すべきなんだろうけど、よくわかんない。時間がないので、

といういかにもbkな方法で対策。


[]ubrでHCCPのステータスを確認 11:09 はてなブックマーク - ubrでHCCPのステータスを確認 - うまい棒の断片

HCCP: Hot Standby Connection-to-Connection Protocol

カードをN+1構成にしてるアレ

show hccp brief

2008-05-06

[]syslogにロギングする 12:03 はてなブックマーク - syslogにロギングする - うまい棒の断片

#!/usr/bin/perl
use Sys::Syslog qw(:DEFAULT setlogsock);

setlogsock 'unix';
# openlog($ident, $logopt, $facility)
openlog('ident', 'pid', 'local0');
# syslog($priority, $message)
syslog('info', 'hogehoge');
closelog();

setlogsockはperldoc Sys::Syslogいわく、

Sets the socket type to be used for the next call to "openlog()" or "syslog()" and returns true on success, "undef" on failure.

(中略)

The default is to try "tcp", "udp", "unix", "stream", "console".

だから場合によっては設定しなくてよい?


[][]syslog.confメモ 19:22 はてなブックマーク - syslog.confメモ - うまい棒の断片

ログファイル名の先頭のハイフン

こういうの。

local0.*            -/var/log/hoge.log

ハイフンをつけると、システムバッファをフラッシュしなくなる。

=> 障害時にログが少し消える可能性あり。

大量にロギングする場合、性能がちょっと上がる?


facilityを複数指定

コンマで複数指定できる。(priorityは出来ない)

*で全部指定もできる。(これはpriorityも出来る)

mail,news.=info

mail.infoとnews.infoをロギング


特定のpriorityだけロギングする

通常、facilityとpriorityを".(ドット)"で繋ぐと、

そのpriority以上のものをロギングする。

kern.notice

kernのnotice以上のpriorityをロギングする

ずばり指定したpriorityだけをロギングしたい場合は".="を使う。

mail.=info

特定のpriority以上のものをロギングしない

".!"を使う。

mail.!warn

特定のpriorityのものをロギングしない

!と=を併用する。

mail.!=error

2008-04-08

[]tarで特定のディレクトリファイルを除外して固める はてなブックマーク - tarで特定のディレクトリ、ファイルを除外して固める - うまい棒の断片

除外するファイル名を直接指定

tar cvf hoge.tar ./hoge --exclude fuga

これだと、./hogeディレクトリのfuga以外をtarにする。

除外するファイル群を記述したファイルを指定

echo fuga  > exclude 
echo piyo >> exclude
tar cvf hoge.tar ./hoge -X exclude

これでfuga、piyo以外をtarにする。