タグ

ブックマーク / dsas.blog.klab.org (9)

  • 負荷試験ツール「インターネット破壊」を公開しました : DSAS開発者の部屋

    負荷試験ツール インターネット破壊を公開しました。 こちらはずっと社内で負荷試験に使用していたツールです。社内で使用していたものなので、ソーシャルアプリ向けの機能などが多少追加されていますが、もちろんんそれ以外のWebアプリケーションでも使用できます。 基的にはApache JMeterのようなWebアプリケーションむけのシナリオ負荷試験ツールです。コマンドラインオペレーションだけで実行でき、サーバー上で簡単に負荷試験を実施できるのが特徴です。POSTリクエストなどはもちろん、レスポンスのチェックやUserAgentの偽装、ランダムな値をパラメーターにセットする機能も実装しています。 注意: 当然ながら自分の管理下にないサイトに向けて負荷試験ツールを実行するのは絶対にやめてください。非常に危険です。 物騒な名前がついていますが、これは完全にわたしの小児的感性の趣味によるところです。地震で

    負荷試験ツール「インターネット破壊」を公開しました : DSAS開発者の部屋
  • Apacheのアクセスログをsyslog経由で出力するためのモジュールを作りました : DSAS開発者の部屋

    皆さんは、負荷分散環境でのApacheのアクセスログをどのように取り扱ってますか? 通常、Apacheのログは動作サーバ上のローカルファイルとして出力されるので、 Webサーバを同時に何台も稼働させて負荷分散を行うような環境では、それらすべ てのWebサーバのログファイルを集めなければなりません。ローカルファイルとし て出力されるということは、Webサーバの台数分だけログファイルがばらけること を意味します。考えるだけでめんどくさいですね。 KLabでは、このApacheログを2パターンを使い分けて集めています。ひとつは syslogによるリモート出力を使い、全Webサーバからのログ出力を一か所に集中さ せる方法です。これは、CustomLogディレクティブにloggerコマンドを使用するこ とで可能です。 CustomLog "|/usr/bin/logger -p local6.inf

    Apacheのアクセスログをsyslog経由で出力するためのモジュールを作りました : DSAS開発者の部屋
  • DSAS開発者の部屋:ネットワークパケットを覗いちゃえ

    レイヤを問わず (ethernet から HTTP や SMTP まで) 、ネットワーク絡みのトラブルシューティングや挙動の確認をするときにパケットの流れが見られると非常に有益です。 開眼すると「パケットの流れが目で見える」そうですが、私などはまだまだ修行が足りず裸眼では見えないので、tcpdump というツールを使って見ています。 tcpdump はその名前があまりよくないと私は思っていて、"tcp" だけでなく udp やICMP や ethernet フレームまで覗ける超強力ツールです。 というわけで tcpdump の簡単な説明を書いてみます。 tcpdumpについて tcpdump は UNIX 系の OS で使えるツールなのですが、Windows 用にはWinDumpという CUI のツールがあり、tcpdump と同じように使えます。 GUI がお好みの方は、後でも紹介するE

    DSAS開発者の部屋:ネットワークパケットを覗いちゃえ
  • Linuxでクラッシュダンプを採取(4) 〜 セカンドカーネルがやるべきこと 〜 : DSAS開発者の部屋

  • Linuxでクラッシュダンプを採取(3) 〜 クラッシュダンプは何故とるの? 〜 : DSAS開発者の部屋

    この数日間、Linux でクラッシュダンプを採取する方法について検証していますが、そもそも何故クラッシュダンプを取る必要があるのでしょうか。目的を見失ってしまうのは寂しいのでこのへんで少し確認しておきたいと思います。 ・不具合の原因を解析できる これを聞いて「ええええっ・・」って思う人もいるでしょうね。 原理的には可能だとわかってはいても、実際にやるには気力と根性と感性と時間が必要です(笑) そんな私も「Linuxカーネルの解析ができますっ!」なんてとても言えたものではありません。 それなのに何故クラッシュダンプを採取しようとしているか・・・ それは ・問題発生時に動いていたプロセスを知ることができる ・問題発生時にオープンしていたファイルを知ることができる ・問題発生時のロードアベレージなどを知ることができる ・問題発生時のログを採取することができる ・問題を引き起こしたプロセスが特定で

    Linuxでクラッシュダンプを採取(3) 〜 クラッシュダンプは何故とるの? 〜 : DSAS開発者の部屋
  • Linuxでクラッシュダンプを採取(2) 〜 カーネルパニックを起こしてみる 〜 : DSAS開発者の部屋

    前回は、カーネルパニック時にkexecでセカンドカーネルを起動できる仕組みまで整えてみました。 今回は、実際にセカンドカーネルを読み込ませてみて動作確認をしてみたいと思います。 kexec -p --args-linux --elf32-core-headers --append="文字列" ファイル名 オプションの意味は以下の通り。 -p パニックが起きたらセカンドカーネルを起動する --args-linux Linuxカーネルスタイルのオプションを使用する --elf32-core-headers elf32形式でコアヘッダを用意する --append=STRING カーネルに渡すコマンドラインオプションを指定する ということで、こんなコマンドを組み立ててみました。 kexec -p \ --args-linux \ --elf32-core-headers \ --append="r

    Linuxでクラッシュダンプを採取(2) 〜 カーネルパニックを起こしてみる 〜 : DSAS開発者の部屋
  • Linuxでクラッシュダンプを採取(1) 〜 kexec + kdump を使ってみる 〜 : DSAS開発者の部屋

    専用パーティーションを切らずにシステムを構築してしまったがために、クラッシュダンプを採取できなくて苦しんでいる人(って私ですが)にとってはとっても魅力的な仕組みがカーネルに取り込まれたみたいです。導入手順も Documentation/kdump/kdump.txt に非常にわかりやすく書かれているので、比較的スムーズに組み込むことができそうな予感がします。 kexec の機能を利用して別のカーネル(kdumpを組み込んだもの)を起動すると、/proc/vmcore から元のカーネルのクラッシュダンプを採取できるというものなので、通常利用するカーネル(以下、ファーストカーネル)と、パニック時に動き始めるカーネル(以下、セカンドカーネル)の二つのカーネルを作る必要があります。 以下、kdump.txt より抜粋 A) First kernel or regular kernel: -----

    Linuxでクラッシュダンプを採取(1) 〜 kexec + kdump を使ってみる 〜 : DSAS開発者の部屋
  • NFS経由で正しい内容が読めない場合がある問題の原因と解決策 : DSAS開発者の部屋

    今日はLinuxのNFSの問題について書きたいと思います。 (Linux以外の実装は調べていませんm(_ _)m) その問題とは、NFS経由で読んだファイルの内容が正しくない場合がある、というもので、NFSクライアントがnoacオプションつきでmountしていても発生してしまいます。(noacオプションが指定されていない場合は、これから述べる原因とは関係なく、メタ情報がキャッシュされるのでそもそも正しい情報が得られない可能性があります) 同じファイルに対して 一秒間の間に 異なるNFSクライアントホストから 同じサイズのデータを書き込んだ このとき、自分より後に誰かが書き込んでいても、それより前に自分で書き込んだデータが読み出されてしまいます。 ちょっとわかりづらいので図示します。 時間 NFSクライアント1 NFSクライアント2 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    NFS経由で正しい内容が読めない場合がある問題の原因と解決策 : DSAS開発者の部屋
  • DSAS開発者の部屋:特集記事『Linuxロードバランサ構築・運用ノウハウ』を公開します

    Linuxロードバランサ構築・運用ノウハウ』を公開します! これはWEB+DB PRESS Vol.37の特集記事としてDSASチームが執筆したもので、技術評論社様の許可を得て今回公開するはこびとなりました。 一口でいうと、「Linux+IPVS+keepalivedを使って、冗長構成(Active/Backup)のロードバランサを作るまで」の解説記事で、 サーバ負荷分散一般についてのはなし Linuxでロードバランサを作ってみる ロードバランサを冗長化 といった構成になっています。 みなさんがLinuxロードバランサを導入・構築・運用する際の一助になれば、DSASチームとしてもうれしい限りですので、是非、ご覧になってください! 第1章 サーバ負荷分散概論 特集のはじめに なぜサーバ負荷分散をするのか? サーバ負荷分散の実現方法 ロードバランサのいる構成 ロードバランサはなにを元に分散す

    DSAS開発者の部屋:特集記事『Linuxロードバランサ構築・運用ノウハウ』を公開します
  • 1