タグ

ブックマーク / www.drk7.jp (15)

  • Kernel 2.6 はディスク I/O情報が /proc/diskstat へ移動

    新サーバの設定でパフォーマンス監視のために使っていたMRTG をやめて、より高性能で Web インタフェースで管理もできる Cacti ってのに移行を試みていたのですが、どうにもグラフが真っ白のまま更新されず、諦めて MRTG に戻ることにしました。RRDTool 経由で SNMP の情報を MySQL までデータ格納できていることまでは確認済みなのですが・・・ ※ 誰か教えて!m(_ _)m MRTG も一筋縄ではいかず。設定しているのですが、ディスクI/O 情報が取得できなくなってしまいました。原因を調べると /proc/stat から /proc/diskstats へ情報が移動したようです。 これにあわせて、MRTG で設定しているディスク I/O 取得用のスクリプトも更新しなくてはなりません。 kernel 2.4 までは、こんな感じで上手くいっていると思います。 mrtg.cf

  • Linux の nice / renice コマンドを覚えた

    毎月15日は自宅サーバのバックアップが実行される日です。バックアップには20時間ほどもかかってしまうわけで、実は15日は凄くレスポンスが低下する日です。ロードは通常時の約3倍の3〜5程度になり、Disk I/O のパフォーマンスが極端に劣化します。 もっともその原因はバックアップの手法が悪いのです。 小さい HDD にバックアップしているために、元々の HDD を tar cvfz 使って圧縮しながらバックアップしているので CPU も凄く喰うんです。こりゃ HDD を増設して差分でバックアップする rsync 方式に変えなきゃ・・・と思いつつ今月もいつもの日が来てしまいました。 さて、今日はいつもにもまして shell での応答が遅いのでプロセスの優先度を変更することにしました。コマンドは覚えてなかったけど優先度設定コマンドがあることは知っていたので調べてみました。 renice - 実

    pitworks
    pitworks 2010/06/14
    nice/reniceコマンドでバックアップのリソース制限を実施した際の効果について ex)crontabの例:5 3 15 * * nice -n 19 backup.sh
  • ロードアベレージに関する考察

    ここ最近ロードアベレージについて調べています。業の Oracle サーバのロードアベレージが最近高いのです。日の夜はまだまだ安定した値。下のグラフは loadavg x 100 のグラフ。 Dual Core Xeon が2枚のサーバなので一般的なロードアベレージの解釈からすると4以下なら安全圏。ここ最近は6〜8という数値が多いわけですが、実際の体感的なパフォーマンスがそれほど悪いるわけではなくと言うか全然重く無くってイマイチ良く判らない。CPU とか他の数値は至って安全圏のものばかり。仕方がないので kernel 2.6 のソースを眺める日々がここ数日。とにかく kernel まわりの記事を手当たり次第読んでみました。 マルチコア時代のロードアベレージの見方 - naoyaのはてなダイアリー Linux カーネルのコンテキストスイッチ処理を読み解く - naoyaのはてなダイアリー

  • syslog は I/O 負荷が高い → daemontool に移行しよう! :: Drk7jp

    qmail のログを daemontool 経由にする方法 まずは、qmail 1.03 内の FAQ テキストの 7.7 項をみる。ちょろっと情報が記載されています。 7.7. How do I avoid syslog? It chews up a lot of CPU time and isn't reliable. Answer: Install daemontools (http://pobox.com/~djb/daemontools.html). Make a /var/log/qmail directory, owned by qmaill, mode 2700. Do qmail-start ./Mailbox /usr/local/bin/accustamp \ | setuser qmaill /usr/local/bin/cyclog /var/log/qmail

  • /dev/shm に参照系DBを持っていくと I/O 負荷が激減した件(当たり前だけど)

    前エントリーから一部の内容を分離して追加記事にしてみました。以下実施したメモリ増設の効果について。 ここ数ヶ月、自宅サーバの負荷がだんだんと上昇してきていて、そろそろ1台で高速にさばききる限界に近づいてきた感があったり。ここ数週間のロードアベレージはこんな感じ。グラフは× 100 の値になってます。CPU のコアが2個なんで、200 までは OK ということでまだ処理しきれているわけではあります。ちなみに mrtg グラフは瞬間値を示しているわけではなく平均値なので瞬間的にはもっと負荷が高いときとかあります。 でも月次処理が走るともっさり感満点。 ※緑:1分平均 / 青:15分平均 実は CPU の処理速度が追いついていないと言うより I/O 周りがボトルネックになっています。 ※緑:読取ブロック数 / 青:書込ブロック数 ということで、メモリを2GBプラスして、合計 4GB にして参照系

    pitworks
    pitworks 2009/07/09
    disk はメモリに比べて数百倍以上遅い媒体なので、消えても問題がないもしくは即座に同じデータが生成(復旧)できるようなデータは /dev/shm を使うとかなりイイ感じ
  • 無料で30%のパフォーマンスUP!! - intel compiler :: Drk7jp

    最近、雑誌の記事でよく見かけるようになった、Intel Compiler 通称 icc ですが、Linux系にプリインストールされる gcc と比較して re-compile するだけで概ね 30 % 程度の高速化が図れるようです。 試しに、当サイトで配布している「高速半角全角ライブラリ」で検証してみました。 gcc - compile版 [h2z]Drk::Encode[1000000]LOOP TIME=13 [z2h]Drk::Encode[1000000]LOOP TIME=13 icc - compile版 [h2z]Drk::Encode[1000000]LOOP TIME=10 [z2h]Drk::Encode[1000000]LOOP TIME=10 とウワサ通りの高速化が実現できてしまいました。実は version 6 の頃に試用したことがあったのですが、 gcc との互

  • Linux チューニング - Ext3 のパフォーマンスを最大化させる

    じつは自宅サーバのロードアベレージが上がり続けています。分析の結果、ボトルネックは I/O 処理でした。CPU は Athlon64 X2 4400+ ですが、まだまだ当分この CPU で間に合いそうです。HDD は当時は 7200 回転で最速だった HITACHI Deskstar T7K250 SATA2 250GB を RAID1 構成にしたのですが、今思えば速度優先で RAID0 にしておけば良かったと少しだけ後悔。 I/O がボトルネックに成っている理由ですが、Drk7jp が公開しているサービスの全てがキャッシュファイルを利用した高速化手法を取っているのですが、単純にそれらファイルの write 処理が追いついていません。常に何らかのプロセスで I/O 待ち状態が発生しているような状況です。抜的な解決方法としては disk を高速なものに交換する以外ありません。 というわけで

  • Slowloris HTTP DoS 攻撃について

    ちょっと前に Apacheに新たな脆弱性発見 - スラッシュドット・ジャパン で紹介されていた脆弱性なんですけど・・・会社のお達しで各サービス毎に状況報告ってイベントがあったので、ちょいと脆弱性試験してました。そのまとめです。 Apacheに、DoS攻撃に繋がる脆弱性が新たに見つかったそうだ(家/.記事より) この脆弱性は、これを利用したHTTP DoSツール「Slowloris」がリリースされたことから明らかになったとのこと。この攻撃ツールはApacheに不完全なリクエストヘッダーを送り続けるもので、Apacheが最後のヘッダが送られてくるのを待つ間、偽のヘッダを送ることで接続をオープンにし続け、Apacheのプロセスを一杯にさせるものだという。 脆弱性はApache 1.x、 2.x、 dhttpd、 GoAhead WebServer、そしてSquidにて確認されているが、IIS6

  • RAID 構成のサーバで Linux を大量インストールする時の簡略化検討

    ちょうど年末年始を跨いでサーバのリース契約満了にともないサーバの入れ換え作業なんてのをやっています。ここ最近も相変わらずムーアの法則通りマシンの処理速度は2年で倍になっています。近い将来にトランジスタが原子レベルにまで小さくなるそうです。いやはや凄いですね。さて、ウチの会社の場合は3年のリース契約でマシンをそろえることが多いのですが、単に固定資産を持たないための会社の方針って側面以外にもハードの進歩の速度にもあっているかなぁ〜と感じています。 で題。今回導入した新マシンは Dell 1950 です。 毎度毎度リースの更改にあわせてサーバの再構築をするわけなのですが、この作業が猛烈に面倒です。当たり前だけど構築以外にも動作のテストとかあるんだけど、これまた面倒。台数が増えるほど面倒。というわけで、いろいろなブログでも紹介されているとおり実際にはインストールは1台だけ行って動作テストも全部ク

  • Linux サーバ構築術 - 大量インストールする時の簡略化検討その2

    またまたサーバーのリース更改の時期がやってきました。ってか、普通のサービス運営してる仕事してると、年中イベント毎のようにリース更改がばらばらとやってきます。にもかかわらず、以前 RAID 構成のサーバで Linux を大量インストールする時の簡略化検討 なんてエントリを書いたにもかかわらず、すっかり忘れてしまっていていました。 そんなわけで、手元に USB HDD とか用意していなかったので、こんな方法で構築したサーバを量産しましたって情報です。正直、あまりオススメできる方法じゃぁ〜ないと思うんだけど、これでもちゃんと複製可能です。ってか、いろいろ忘れてしまっていて、ついつい方法での複製に頼っちゃいます。まぁ〜以前ご紹介した方法よりも効率は悪いですけど。 結局どうやってインストールをしたかというと、この時点ではまだ最良ではない手法でインストールをしてしまいました。個別にインストールするミド

    pitworks
    pitworks 2009/02/17
    コピー後にldconfigをするのがポイント
  • qmail の配信能力を極限まで引き出す方法(ログ関連)

    「syslog は I/O 負荷が高い → daemontool に移行しよう!」でも書きましたが、メール配信サービスのような用途の場合、メールサーバの配信ログってのは極めて重要。qmail の配信能力を極限まで引き出すには、様々なチューニングの中でも重要なのがログの出力。 そこで思いついたのがログの出力を RAMディスク上に出力するって方法。もちろんログの出力は daemontool 経由で。 もちろん出力したログは日時バッチでローカルディスク上にバックアップログとして保存。OS フリーズ等でメモリ上のログが失われるって可能性は許容するって要件で構築。 実際に業務で採用して速度の計測をしていたところ、 Intel(R) Xeon(TM) CPU 3.06GHz × 2、 メモリ4G (うち、RAMディスクは2G) なHW環境、 net-qmail ベースにいろいろな patch を適用し

  • 二度押し防止の onsubmit で disable にするやつ :: Drk7jp

    もう2年ほど前に話題になったアレなんですけど、今更ながらあるサービスでこの仕組みの導入を検討しています。 onsubmit で submit ボタンを disable にしてユーザビリティを良くする - naoyaのはてなダイアリー submit ボタン disable 技の罠 - naoyaのはてなダイアリー onsubmit で submit ボタンを < disable にしてユーザビリティを悪くするのはやめてください - のヮの うんこ♥ onsubmit で disable にするやつ - 鷹の島 onsubmit の disable 化ですが既に議論が終わっているように、onsubmit disable の実装方法として、 onsubmit イベント発生時に submit 要素を disable にして値をサーバへ渡すための hidden 要素を生成する方法 setTimeou

    pitworks
    pitworks 2008/04/19
  • Linux 備忘録 : Ext3 のジャーナルファイルの再作成の方法

    1. まず始めに Ext3 上でファイルシステムの破損状況を調査する umount /dev/hda1 e2fsck -fn /dev/hda1 正常時 Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information /dev/hda1: 150/4308992 files (10.7% non-contiguous), 3486771/8614848 blocks Parallelizing fsck version 1.20-WIP (17-Jan-2001)

    pitworks
    pitworks 2008/03/19
    破損状況確認
  • メール送信者認証技術 SPF/Sender ID についてお勉強

    お勉強の背景に関しては 「迷惑メール対策 OP25B(Outbound Port25 Blocking)についてお勉強」 に書いたとおりですが、迷惑メール対策としての SPF/Sender ID についてもいろいろ勉強したのでそのまとめです。(DomainKeys については思いのほかエントリが長くなったのでまた別の機会で・・・)まずは参考になったサイトの紹介から。 Sender Policy Framework (SPF) for Authorizing Use of Domains in E-Mail, Version 1 Sender ID: Authenticating E-Mail DNS関連技術の最新動向 - SPF/DomainKeysとは Sendmail 社 - 送信者認証技術の導入におけるレコメンデーション メール送信者認証の仕組みを探る(2/2):スペシャル - ZD

    pitworks
    pitworks 2008/03/10
  • HTML - meta タグの仕様詳細まとめ :: Drk7jp

    前エントリ - Internet Explorer のイメージツールバーを無効化する meta タグ で予告したとおり meta タグについて生まれて初めてまじめに調べてみました。改めて調べてみると知らなかったこと満載です。っていうか Web エンジニアたるもの一度は W3C勧告 くらいは一通り目を通しておかなくてはダメだなと思ったりしました。面倒なくらい分量があるけど。ひとまず meta タグ情報としての自分にとって永久保存版まとめという位置づけです。 まずは参考になったサイトの紹介から。 W3C勧告HTML4.01 :: The global structure of an HTML document W3C勧告HTML4.01 私的日語訳 :: The global structure of an HTML document(ja) rfc2616.txt Another HTML

    pitworks
    pitworks 2008/01/22
  • 1