カテゴリー: 技術系

  • Apacheのログにレスポンスタイムを記録する

    httpd.conf にあるログ設定を変更することで、ログにレスポンスタイムを記録するようにできる。

    1ページあたりのレスポンスタイムを調べることにより、どのURLで動作が鈍くなっているのか、あたりをつけることが可能になる。問題は、一度、サーバが負荷で遅くなってしまうと後に続くレスポンスの反応も悪くなってしまう。そのため、レスポンスタイムだけでは、どのページが遅いのかを判断できない。レスポンスの悪化の原因は、レスポンスが悪くなり始めた最初のアクセスをログから探し出すと良い。

    • 変更前
      LogFormat “%h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” combined

    • 変更後
      LogFormat “%h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\” %D” combined

    %Dを足すことにより、レスポンスタイムをマイクロ秒で記録することができる(Apache2.0以降)

    %Tを足すことにおり、レスポンスタイムを秒単位で記録することができる。

    ■参考URL
    http://httpd.apache.org/docs/2.0/mod/mod_log_config.html

  • iStumbler

    部屋でiPhoneを使っていると他人の無線LANを多数検出してしまう。ネットも開通したので、うちの無線LANのAPを設定するために空チャネルを調べてみた。無線LANのチャネル検出に使ったのは iStumblerというツール。これで、無線LANのAP検出とチャネルとシグナルの強度が検出できる。使い方は簡単、ダウンロードして起動するだけ。これだけで、現在いる場所の無線LANの状況をみることができる。他にもベンダーもみることができて楽しい。

    iStumbler;http://www.istumbler.net/

    iStumblerで検出してみたところ、IEEE802.11b/g/nの主要なチャネルである、1,6,11は使われている。特にチャネル1に至っては、そこそこの強度で3つも見えている。ベンダーが同じであることとMAC Addressが下1桁しか変わらないのでバーチャルAPだろうか。現状で同じ電波帯域を使うならば、チャネル6なのだが・・・多すぎて干渉が怖い。おとなしく2.4GHz帯を捨てて、5GHz帯で802.11nを使用するべきだろうか。

  • 開発者のためのActive Directory講座

    面白い資料を発見。Power Shellを使うと、Active Directoryの管理が楽になりそうだ。コマンドから、いろいろな情報を引き出せるので、簡単なスクリプトを組むだけで、処理を簡単にできそうだ。

    http://www.slideshare.net/junichia/active-directory-2562729

    問題は、このモジュールの対応OSが2008R2というあたりか。

  • Hyper-V勉強中

    現在、Hyper-Vを勉強中。

    VMware ESX系は、結構前から試して実際に使っているが、Hyper-Vは使ったことが無かった。今度、本格的に構築・運用を行う可能性が高いので勉強中。VMware ESXと基本的な設計思想がかなり違う。今調べているかぎりだと、どっちがいいということはない。ぜんぜん別物なので、上に構築する仮想マシンとOSの性質によって、下のプラットフォームを選ぶのが良い。

    Hyper-Vは、あまり安定性がないみたいだが、安いのが特徴だ。やたらと高いVMwareに比べて、ここはかなりおいしいところ。Hyper-Vで見えてこないのは、管理性だ。実際にインストールして使い勝手と安定性や癖を確認するしかない。問題は、どのエディションをインストールするか。ハイパーバイザーだけのHyper-Vサーバが一番、コストがかからないように思えるが、管理用Vista以上のWindows が必要。Vistaは持っていないので、却下。次はWindows Server 2008 のServer Core上に構築するパターン。この組み合わせが一番安定しているようだが、これも単体で管理ができないようなので却下。(一番、試したいパターンなんだけど。)最後は、一番インストールや検証が楽なWindows Server 2008 上のHyper-Vだ。とりあえず、これで試す。Hyper-Vはバイザー型の仮想化環境のはずなんだが、このパターンだとホストOSの上で動いている感じしかしないため、Virtual Serverと何が違うのだろうか考えてしまう。実際、VMからの命令もホストになっているWindows経由になる。これは、マイクロカーネル型ハイパーバイザーというタイプで、ハイパーバイザーの層から物理ハードウェアとの命令に必要なドライバを排除しているため。インストールした時の感覚としては、ハイパーバイザーに見えないがちゃんとしたハイパーバイザーである。

    とりあえず、明日、Windows Server 2008をインストールして試してみる。

  • M16-PWRの検証

    機会があったので、松下のM16-PWRというPoEスイッチの借りて検証してみた。

    製品のスペック自体はスペックシートをみればわかるのだが、使ってみないと設定のしやすさとか、製品の癖はわからない。それに、日頃はCiscoのスイッチかH3Cのスイッチしか使っていないのでほかの世界を知らない。検証として借りられると、別の製品やOSに触れられるので意外とわかっていない自分の知識に気がつく。

    このM16-PWRを触ってみて思った率直な感想は・・・よくわからん!ってこと。

    基本の設定とかは、ウェブ画面がやっていくのがベターらしくCLIの使い勝手がとっても悪い。シリアルで接続したときも、ウィザード形式のメニューがでて最初はCLIの起動方法がわからなくて何回かリブートをさせた。対話型で設定をしていく方が、初心者などには便利だとは思う。でも、大量に設定をしないといけないときや、別の場所で作ったコンフィグを簡単に投入しようと思うとCLIが充実していたほうが楽だ。それに、なにかトラブルがあったときにCLIからシステム情報を引き出したりとか、通信状況を見れると便利。負荷が高い状況やトラブル時には、ウェブインターフェースはまともに動作しないことが多いからね。

    あとは、CLIのときのコマンドが若干Ciscoと似ている。が、ヘルプコマンドの使い勝手悪い。コマンドの途中からヘルプを起動させても、全体のヘルプが出てしまうため、その中から選ぶのが大変。コマンドのシンタックスしかないので、コマンドの名前から機能を推測しないといけないため、ある程度設定を知っていないとつらい。(まぁ、ウェブインターフェースが全体なんだろうし、当然か。)

    それに今回、気がつかれされたのは自分がCisco語に使っているってことだ。例えば、Trunkのコマンドを探していたり、実際には802.1Qで規定されている通信方式なのでTrunkじゃなくて、そっちで探さないといけないとか。あとは、VLANインターフェースごとにIPアドレスを持てると思って調べていたら、どうやら、その機能はないようで、管理用にIPアドレスを一つ持てるだけとか。スイッチなのにいろいろとできてしまうCisco製品になれてしまったため他の製品を使ってみたときのギャップに驚く。コマンドや用語の違いがわからないと、そもそも設定できないとかね。1つの製品に固執しておくと、スキルは高まっていくけど、ほかの製品も見ておくと世界が広がっていい。自分のかけている部分にも気がつくしね。

    いろいろと試したけど、そんなに悪いスイッチではないと思う。大量のVLANやVoice用のVLANが同じラインに流れているところはかなりきついと思うけど、PoEが必要なエッジスイッチとしては使えるはず。ポート数も8ポートとか、16ポートの製品があるので微妙なかゆいところに手が届くって感じだね。今回、検証しきれなかったのはCiscoのIPフォンとCUCMとつないでレジストされるかどうかを調べきれなかった。1つは、PoEの形式が旧方式であるCiscoの独自タイプに対応していないので、IPフォンが起動しない。あとは、Tag付きの設定はできたけど上位スイッチとの接続で戸惑ってしまったこと。ウェブで公開されているマニュアルを見たけれど、いまいちよくわからなかった。

    こういうことをしているとまだまだだねって感じがする。もう少し勉強をがんばらないと。あとは、がんばって勉強する時間も確保しないとね。いろいろといい勉強になった。

  • Parallels + Windows 7

    Parallelsを使って、Windows 7 RCをMac Book Proにインストールしてみた。えっと、圧倒的にメモリが足りない!実メモリを2GBしか積んでいないマシンでは動きが鈍すぎる。4GBはやっぱり必要だと思われる。

    あ、それでParallels上にWindows 7 RCをインストールするときの教訓?やたらと時間がかかって、そのままソフトがフリーズした。仕方がないのでMac OSごと再起動をかけてParallelsを起動させたらインストールがちゃんと進んでいたというか、windowsのリブート後の設定になっていた。RC版をインストールしているから、不安定なのだろうか。(ついでに、Parallelsも体験版だったりするw)インストール後は、ちゃんと動作しているので問題はない。

    が、Parallels ToolsをインストールするときにWindows 7 がフリーズした。これも、仮想マシンを再起動させたらインストールが終わっていた。ちゃんと終わっているのか?という疑問はあるけどね。一応、機能的には使えているみたいなので、問題は少ないと思う。

    Parallels上のWindows 7は、Coherenceモードで動作させている。これはめちゃくちゃ、動作が鈍い。鈍いというよりも、なかなか動かない。止まっている?んじゃないかと思うくらいに遅い。これがメモリの問題なのか、Windows 7との相性なのかは不明。最大化モードで使っているときは比較的動きがいいので満足。最大化すると、Mac OSの部分が見えなくなるのがいやかも。拡張モニタをつけて、そっちに表示させてしまえばいいのかもしれないけどね。アダプタを買わないとつかないけどね。

    Windows 7 RCをダウンロードしたのがゴールデンウィーク中だから、インストールとまともに使い始めるまで半月以上かけてしまった。休みの日とかじゃないとやる気がでないのがよくない。それに漸く新しいMacになれてきた感じもする。(使い始めるのに、何ヶ月かけているんだか・・・)

  • SearchFilterHost.exe

    SearchFilterHost.exeというプロセスがバックで走って、CPUリソースを100%使い切って動作が鈍い。

    このプロセスを調べてみると、Windowsデスクトップサーチで使用しているプロセスのようだ。こいつは、各ファイルを調べるという役割をもっているので、当然、CPUだけでなくディクスのI/Oも使っている。遅いPCにとっては、これだけでも致命的だ。

    PCを特に使用していないときであれば、CPUでもI/Oでもある程度、食いつぶしてくれて構わないのだが、大体は使い始めた時にCPUを食いつぶして動かない。まったく厄介なプロセスだ。

    実際には、このSearchFilterHostだけでなく、INDEXの作成を行うためのSearchIndexerもリソースを使う。Windowsデスクトップサーチは、なぜか知らないがPCの使用感をさらに遅くしてくれる機能が満載。動いてほしいときに、動かない。これじゃ何のための道具だかわからない。

    普通にサーチサービスを停止してもいいのだが、いちいち起動するのがめんどくさいので、コントロールパネルからサービスを開いて、Windows Searchというサービスの自動起動を手動に変更した。ついでに、サービスも停止した。

    その結果、Outlook2007についている検索機能がつかえなくなった。検索をすると、エラーになってしまい、結果がでない。Outlook2007などの検索機能は、デスクトップサーチを使っているのでサービスを起動しておかないといけない。

    結論としては、サービスも止められないので遅くても、重くても、PCを使えということか。

  • バージョン 2.2.1

    iPhone のOSバージョン 2.2.1にあげて見た。あげてから、数日使っているけど、たしかにSafariがさらに安定した感じ。数日使っているけど、落ちたのは2,3回だし。2.2に比べれば安定性が増しているようだ。

    あと、バージョンアップ前からだけど、iPhoneの動作がやたらと、もっさりしている・・・。曲もビデオも増やしていないし、アプリも1つくらいしか増やしていない。考えれる原因は、Exchangeと同期するメールの数を最新の100件に増やしたくらい。その程度で、遅くなるのか?メモリ?でも、これってHDDじゃないから影響はなさそうだが。じゃあ、CPUとか?なんでだろ。使っていくと、動作が鈍くなっていくのだろうか。

    余談だが・・・
    iPhoneはバージョンアップで安定性があがっていくからいいよね。なんとかMoblieは、バージョンアップをしようとするとめちゃくちゃ敷居が高いから。

  • 【FreeBSD 7.1】sshdの設定

    FreeBSD 7.1 (7系、6系も?)では、sshdのセキュリティ設定が高く、デフォルトの設定ではパスワード認証が禁止されている。そのため、パスワード認証でログインするためには/etc/ssh/sshd_configを修正する必要がある。

    最低限、必要な設定は3行。

    PasswordAuthentication yes
    PermitEmptyPasswords no
    PermitRootLogin no
    

    PasswordAuthentication がパスワード認証によるログインを許可するかどうかの設定。yes を設定することで、パスワードログインを許可する。

    PermitEmptyPasswords が空パスワードを許可するかどうかの設定。通常は許可しないので、noを指定。デフォルトの設定も no になっているため、実際には設定をしなくても問題はないが念のため。

    PermitRootLogin がrootによる直接ログインを許可するかどうかの設定。通常は許可しないので、noを指定。どうしても、rootによるログインが必要な場合にだけ、yesを指定する。※ 普通は何の制限もなく設定はしない。

    設定が終わったら、sshdをkill -HUPで再起動させて設定を読み込ませる。

    kill -HUP sshdのプロセスID
    

    SSHクライアントから、接続テストをしてみる。これでSSHによるログインができる。

  • FreeBSD 7.1 Release

    FreeBSD 7.1 Releaseがリリースされたので、VMware ESXi上にインストール。インストールまでは、何事もなく無事におわり。Xwindowも使っていないので、問題なく起動しているが・・・ネットワークにつながっていない。ESXi側の問題なのか、FreeBSD側の問題なのかはこれから調べる。