タグ

ブックマーク / tkng.hatenablog.com (8)

  • sshを使いこなすための7つの設定 - 射撃しつつ前転 改

    五月病が抜け切らないIT系新入社員に贈るシリーズ第1段。 ~/.ssh/configにはいろいろな設定が書けるが、周囲を見渡した限り、あまり活用されているようには見受けられない。そこで、今回は便利な設定をいくつか集めてみた。 長いホスト名に短い名前をつける Host exp1 HostName verrrryyy.looooong.hostname.example.jp ssh verrrryyy.looooong.hostname.example.jpの代わりにssh exp1でログインできるようになる。 ちなみに、zshの場合、configファイルに登録されたホスト名はsshコマンドを打つときに補完されるので更に便利。 特定のホストへログインするときのユーザ名や鍵をカスタマイズする Host github.com User tkng IdentityFile ~/.ssh/id_rsa

    sshを使いこなすための7つの設定 - 射撃しつつ前転 改
    poppen
    poppen 2011/06/06
  • 【Firefox】JSONViewは神拡張【Google Chrome】 - 射撃しつつ前転 改

    JSONViewを知らない人が社内でいっぱいいたので、これは宣伝すると他にも幸せになれる人がたくさん居るだろう、ということで宣伝してみる。 近年、JSON形式でウェブAPIを作成する機会が増えてきた。しかし、JSONで出力された場合、日語の文字列はエスケープされる実装が多く(仕様的にはエスケープしてもしなくてもどっちでもいい)、結果を目視で確認することができなくて困るということがよくある。 そのため、JSON APIをたたいてパースして出力するだけのスクリプトをわざわざRubyで書く、というようなことを繰り返していた(前に書いたスクリプトを探すよりも新しく書いたほうが早いのだが、それでもAPIを調べ直したりで3分ぐらいはかかる)のだが、JSONViewという拡張を使うことで、ブラウザ上でのJSONを、XML風に見やすく整形してくれることがわかった。以下のスクリーンショットに、JSONVi

    【Firefox】JSONViewは神拡張【Google Chrome】 - 射撃しつつ前転 改
  • サルでも分かる多段ssh - 射撃しつつ前転 改

    仕事をしていると、お客さんの環境にログインするため、 踏み台マシンを経由する必要がある 踏み台マシンへのログインすら、特定範囲のIPアドレスからしか受け付けてくれない といった厳しい条件を満たさなければならない場合があり、多段にsshをしなければいけないことがある。しかし、単純な多段sshには、 毎回順繰りに多段ログインするのは結構めんどくさい scpでいちいち中継サーバーにコピーしていく必要があり、中間サーバーのディスク容量が足りない場合に大きなファイルがコピーできない といった問題がある。 実は、sshには設定ファイルがあり、設定を行うことで、間に何台のサーバーを挟んでいようとも、あたかも直接アクセスしているかのように接続することができるのであるが、世間的にはあまり知られていないようだ。知らないのは非常にもったいないので、簡単に説明しておく。 設定ファイルは~/.ssh/configに

    サルでも分かる多段ssh - 射撃しつつ前転 改
    poppen
    poppen 2011/02/25
  • 強烈に便利なzshrcの設定 3種盛り - 射撃しつつ前転 改

    タイトルはやや釣りぎみのような気もするが、この設定がないサーバで長時間作業したくない、と思う程度には便利なので、個人的には釣りではないと言える。 ctrl + 矢印で単語単位のカーソル移動 コマンドの真ん中あたりに間違いがあった場合、修正するためにカーソルを移動させるのはちょっとした苦痛である。デフォルトのキーバインドだと、emacsバインディングであればalt + bとかalt + nで単語単位で移動できるのだが、これは片手で打つと親指に無理がかかるキーバインドである。そこで、emacsと同じように、ctrl + ←→ で単語単位の移動を可能にしておく。ついでに、/は単語の一部と見做さない様に設定しておく。この設定により、長いパス名の中程に間違いがあった場合に修正するのが楽になる。 bindkey ";5C" forward-word bindkey ";5D" backward-wor

    強烈に便利なzshrcの設定 3種盛り - 射撃しつつ前転 改
    poppen
    poppen 2010/07/12
  • プログラミングHaskellでHaskellをもう一度勉強する - 射撃しつつ前転 改

    Programming in Haskellというがおすすめらしい、という話は以前に読んだことがあって、買おうかどうか迷ったりしたこともあったのだが、先日日語訳が出たので、そっちを買った。これは確かに良いだと思ったので感想を書いておく。 その日語訳というのが、プログラミングHaskell (Graham Hutton 著, 山和彦 訳) である。 まず、とても薄いである。付録まで入れても200ページちょっとしかない。だから、これを読んだからといってすぐにHaskellで実用的なプログラムが書けるようになるわけではない。書がサポートするのはあくまでもHaskellでプログラムがある程度書けるようになる、というところまでで、実のところ、それは既存のHaskellの入門書でも十分に可能だ。そして、大学の先生が書いたである(著者はノッティンガム大学の教授である)ので、なんというか、

  • Firefoxからsshのダイナミック転送を使って非公開サーバへアクセスする - 射撃しつつ前転 改

    sshにはダイナミック転送という機能がある。この機能を使うと、sshはアプリケーション側にはSOCKSプロクシとして振る舞うが、そこからsshの接続先までは暗号化された状態で通信が行われる。 これだけだと通常のトンネリングとどう違うのかよくわからないかもしれないが、ダイナミック転送の場合は転送ポートを指定する必要がない。ここがダイナミックと表現される所以だろう。 例えば、オフィスAにある開発サーバdev1にオフィス外からアクセスしたいとする。しかし、dev1はオフィス外には公開されておらず、踏み台サーバladd1を経由してしかアクセスするしかない。ladd1はsshのみが動いており、これまではsshのトンネリング機能を使ってアクセスしてきたのだが、ウェブアプリケーションをデバッグする際はいちいちウェブアプリケーションのポート毎にトンネルを掘るのが面倒くさい。オフィスに限らずデータセンターへ

    Firefoxからsshのダイナミック転送を使って非公開サーバへアクセスする - 射撃しつつ前転 改
  • Apacheのmod_proxy_balancerを使うときはretryを設定すべき - 射撃しつつ前転

    今作っているサービスは、Apacheのmod_proxy_balancerを使ってロードバランシングしている。しかし、バックエンドのサービスサーバを一旦落としてから復帰させると、コネクションがしばらくつながらないという問題に悩んでいた。1分ぐらい放置するとつながるようになるんだけど、1分は結構長い。 よくわからないのでソースを読んでみたところ、mod_proxy_balancer.cを眺めた感じ、ap_proxy_retry_workerという関数がコネクションの再確立をしているのではないかと思えた。しかし、関数の定義を眺めてみると、現在時刻がエラー発生時刻とworker->retryを足した数字よりも大きければworkerのstatusからPROXY_WORKER_IN_ERRORのビットを下ろしているだけで、コネクションの確立がどうのこうのなんて関数はまったく呼ばれてない。ここでなにが

    Apacheのmod_proxy_balancerを使うときはretryを設定すべき - 射撃しつつ前転
  • [Rails] query-reviewerでRailsアプリのボトルネックを見つける - 射撃しつつ前転 改

    query-reviewerはRails用のプラグインで、データベースにMySQLを使っている場合に、不適切な検索が行われていないかどうかを非常に簡単に調べることができる。(MySQL以外ではたぶん動かない。)使い方は非常に簡単で、 git clone git://github.com/dsboulder/query_reviewer.git vendor/plugins/query_reviewer  するだけ。設定等はまったくいらない。インストールすると、Railsアプリの左上に「SQL DISABLED」というボタンっぽいのが出てくるので、そこをクリックしてENABLEDに変えてからページにアクセスすると、SQLの実行結果を教えてくれる。 スクリーンショットは開発者のブログで見られる。 大体、以下のような情報が得られる。 SQL EXPLAINの結果 SQLの実行時間 どれだけのSQ

    [Rails] query-reviewerでRailsアプリのボトルネックを見つける - 射撃しつつ前転 改
  • 1