2012-01-01から1年間の記事一覧

fluent と growthforecast を連携させてさくさくグラフを描く

http://blog.nomadscafe.jp/2011/12/growthforecast.html http://d.hatena.ne.jp/tagomoris/20120218/1329558305 http://d.hatena.ne.jp/hogem/20120521/1337610385 cacti はcactiで便利だけど、設定するのに面倒だったりする一方でgrowthforecastはびっくり…

rvmを使ってfluent のinstall memo

RHEL install rvm prefix: /usr/local/rvm # curl -L get.rvm.io | bash -s stable install ruby 1.9.3 # ruby -v ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux] # source /usr/local/rvm/scripts/rvm # rvm install 1.9.3 #### make ruby-1.9.3 d…

ab でPOSTのベンチマーク

-p postfile postデータを書いたファイルをで指定 -T content-type "application/x-www-form-urlencoded" を指定 postfileはURLエンコードしておく必要あり。複雑なPOSTデータの場合はngrep/tcpdumpしておきながら、一度ブラウザでPOSTしたものをコピペして…

RHELでいつのまにかyumが更新できなくなって困った

サブスクリプションのライセンスは切れてないぜぇ?と思いつつ調べてたら書いてた。 http://jp.redhat.com/promo/doc/faq/2.html 該当のマシーンが、インターネット環境へ継っていない、ネットワークの設定などの理由で、ある一定期間Red Hat Networkと同期…

vimでファイル末尾への改行を防ぐ

vim

postデータ生成するときなどに勝手に改行入れられて困っちゃう。 :set binary :set noendofline でもecho -n するほうが簡単ですね。

known_hostsを手動で編集しなくてもssh-keygen -R hostname で良かった / sshのremote hostが変更になってsshでエラーが出るとき

仮想マシンを作っては壊して、などをやっていると良く起こる。仮想マシンじゃなくても物理サーバが壊れて、IPを引き継いで復旧させた場合なども同様。clinetのknown_hostsに登録されているものと、remote hostのsshdの認証鍵が変わっていて、中間者攻撃の可…

perl Sys::Virt でlibvirt APIを叩いてKVM 仮想マシンを操作する

Sys::Virt - libvirt のperl バインディング。virt-manager で出来るようなストレージの設定や仮想マシンの起動、停止、削除、設定変更などが可能。(自分で確認したのは仮想マシンを操作するSys::Virt::Domain のみ)久しぶりに触ろうとしたら忘れすぎて悲惨…

nginx で特定IPからのアクセスをログに取らない

LoadBalancer からのアクセスをログに取らない、みたいな。 http://wiki.nginx.org/HWLoadbalancerCheckErrors この例では一部のLBからにstatus 400 のエラーを返してしまうときに、error_page /400 に飛ばして、そのlocation内でgeo module を使ってIPがマ…

varnish でredirectする

https://www.varnish-cache.org/trac/wiki/RedirectsAndRewrites http://d.hatena.ne.jp/hogem/20100731/1280509514 Varnish does not have any built in support for HTTP redirections so redirection in Varnish can only be accomplished using somethin…

mod_rewriteを書く場所によってRewriteRule がマッチする対象が異なる件

http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriterule これちょいちょい忘れてはまる。ex: http://example.com/foo/bar/ => http://example.com/hoge/bar/ にリダイレクトいつもは基本的にvirtualhost内に書くからこう書いてる。 RewriteEngi…

mod_rewrite でBasic/Digest認証ユーザの名前を変数に利用する

http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewritecond Other things you should be aware of: の5番。 %{LA-U:variable} can be used for look-aheads which perform an internal (URL-based) sub-request to determine the final value of v…

perlの標準入力で文字コードを指定するときの foo.pl foo.txt と foo.pl < foo.txt の違い

知らんかった。 http://blog.livedoor.jp/dankogai/archives/50759241.html http://chalow.net/2007-02-07-1.html ex: utf8で書いたtextを読んで文字数(byte数ではなく)を数えたい。 foo.txt 4文字のファイル作る $ echo -n ほげほげ > foo.txt foo.pl 文字…

guestfish で仮想マシン内のコマンドを実行

http://d.hatena.ne.jp/hogem/20120204/1328321337 guestifshはファイルの読み書きだけだと思ったら、なんと仮想マシン内のコマンドも実行できるようだ。どういう仕組みになってるんだ??? http://libguestfs.org/guestfish.1.html#command 仮想マシンがオ…

mod_rpaf でオリジナルのクライアントのIPでアクセス制御できなくなってた原因

http://heartbeats.jp/hbblog/2012/03/mod-rpaf.html http://d.hatena.ne.jp/hogem/20090622/1245675445 http://stderr.net/apache/rpaf/ https://github.com/ttkzw/mod_rpaf-0.6 reverse proxy 配下にapache + mod_rpaf を使っている状況で、以前はmod_rpaf…

cgroup でプロセス毎のDisk (block device) へのI/O の帯域制限 blkio.throttle.*

http://docs.redhat.com/docs/ja-JP/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/ch-Subsystems_and_Tunable_Parameters.html http://www.kernel.org/doc/Documentation/devices.txt /usr/share/doc/kernel-*/Documentation/cgroups/ redhat…

vyattaでbrute force attack を防ぐ

ssh(22番)へのアクセスをstate を使って、30秒間に3回以内に制御する(4回目以上をdrop)。やっていることはiptables のstate モジュールを使っているだけなので、特別新しいことではないけど。 $ configure # set firewall name untrust-to-trust rule 10 pro…

cgroup と libvirtの連携

cgroup有効にしているときにlibvirtdを起動すると、各コントローラ以下の /cgroup/*/libvirt/qemu/"仮想マシン名" が自動で作成されていく、ということを知った。/cgroup/*/libvirt/qemu/"仮想マシン名"/tasks に仮想マシンのqemu-kvmプロセスのpidも書き込…

linuxのコントロールグループ(cgroup)でリソース制御 memo

今更だけど便利そうな機能なので勉強。 http://docs.redhat.com/docs/ja-JP/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/ch01.html http://docs.redhat.com/docs/ja-JP/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/ch-Subsy…

linux bondingのパラメータをオンラインでの変更

できるものとできないものがあるみたい。miimonの数値はオンラインのまま変更可能だった。 # echo 100 > /sys/class/net/bond0/bonding/miimonbondingのmode, xmit_hash_policy 等はinterfaceを停止させないと変更できなかった。 # echo 2 > /sys/class/net/…

linux bonding 時のnicの偏りを調整する

http://d.hatena.ne.jp/rx7/20120412/p1 http://docs.redhat.com/docs/ja-JP/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/sec-Using_Channel_Bonding.html nicが偏って困ってたらniceなentry見つけた。さすがrx7さん。linux bonding mode=2 (balance-…

socat - Multipurpose relay (SOcket CAT)

netcat がパワーアップしたようなもの? http://www.dest-unreach.org/socat/ http://www.dest-unreach.org/socat/doc/socat.html#EXAMPLES netcatのport forwardが面倒くせーなーと思っていたけど、socatなら名前付きパイプを作らなくても良かった。(といっ…

netcat で port forward

単純にncをパイプで入出力を繋げると、入力はforwardされるけど、出力はclientに返らずに、ncを実行している端末の標準出力に出てしまう。 localhostの8080にきたものを192.168.0.1の80にforward $ nc -l 8080 | nc 192.168.0.1 80これでcilentからnc 10.0.0…

さくらVPSのVNCコンソールの実装

使っているのはsshのtunnel経由でVNC接続するtightvnc。 http://www.tightvnc.com/ssh-java-vnc-viewer.php https://secure.sakura.ad.jp/vpscontrol/main/vnc このhtml ソースのappletのところ。 <param name="SSHHOST" value="vnc@210.224.172.110" /> <param name="HOST" value="localhost" /> <param name="PORT" value="******" /> </param></param></param>

mysql innodbの行ロック/テーブルロック

http://dev.mysql.com/doc/refman/5.1/ja/innodb-next-key-locking.html innodbは行ロックできるstorage engine という認識だったけど、適当に作ったテーブルで適当に遊んでたら、どうも行ロックになっちゃってるぞ。。。?と思ってドキュメント読んだ。この…

mysqlのトランザクション分離レベル おさらい

http://ja.wikipedia.org/wiki/%E3%83%88%E3%83%A9%E3%83%B3%E3%82%B6%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E5%88%86%E9%9B%A2%E3%83%AC%E3%83%99%E3%83%AB http://dev.mysql.com/doc/refman/5.1/ja/innodb-transaction-isolation.html http://dev.mysql.co…

libvirt API を使ってkvm ホストサーバから仮想マシンのコンソールに接続する

仮想マシンの設定で、シリアルコンソールに接続できる設定をするだけ。(物理サーバにメンテ用でシリアルコンソール接続する設定等と基本的に同じ) 仮想マシン: SL 6.2 の例 /etc/securetty echo "ttyS0" >> /etc/securetty /boot/grub/grub.conf serial --sp…

さくらVPS リニューアルで1Gに乗り換えたのでCentOS 6.2 初期設定 memo

http://vps.sakura.ad.jp/ 512Mプランだったけど、乗り換え優遇プランの案内が来たので乗り換えた。とりあえずやったこと。 OS カスタムインストールでパーティション設定 defaultで用意されているCentOS 6.2 64bit版のパーティション構成は以下。 partition…

traceroute で使っている UDP port 番号

firewallの設定をガチムチにしていたら、icmp版traceroute (traceroute -I) は通るけど、defaultのtracerouteが通らなかったのでport番号調べた。RFCは読んでない。 netscreenのpredefined の設定 ICMP type:8,code:0 UDP src port 0-65535, dst port:33400-…

rsyslogでsyslogを受信した時刻でlogに出力する

remote hostの時刻がずれている(or UTC) の場合などに、syslogの時刻がずれて嫌な感じなので修正できるか調べた。(ex: vyattaのsyslogがUTCで飛んでくる) formatを変えれば出来たっぽい。 http://www.rsyslog.com/doc/rsyslog_conf_templates.html man rsysl…

RHEL系OSでipv6を無効にする

確認したのはRHEL, CentOS, SL の5.8と6.2modprobe.d 以下に適当な名前の設定ファイルを作成 (or /etc/modprobe.conf に直接書く) # vi /etc/modprobe.d/ipv6.conf options ipv6 disable=1設定したあとOS再起動。 昔のRHEL5系 (5.0, 5.1などの古いOS # いつ…