アルカーナな日々 » 経営者とビジネスとのエントリーの
経営者は、組織を考え、人事を考え、事業の総体を考える。そして、その上に(あるいは下に)ビジネスがのっかってくる。多分、その上のような気もするが、どっちもどっちかもしれない。
という文章を読んで、はっと思う感じでした。事業を開発し育てる能力は確かに経営者に必要なスキルの一つだと思いますが、経営者は組織開発の能力にも長けている必要があると思います。組織開発というものは、自分の部下を育てたり、メンバーが気持ちよく仕事ができる環境を用意してあげたり、様々な方法で人を支援する仕事なのかなと。そういう組織の上で事業の成果が出て行くのではないでしょうか。
というようなことを最近ずっと考えていて、この不況でも業績を伸ばしている企業というのは、やっぱり組織開発がうまいのではないのかなぁと思っています。こういう成功要因について、企業が情報発信してくれるとそれを参考にすることで、日本の企業が活性化するのではないかのかなと思ったりしています。
Web上からチマチマ登録するのもあれだったので、CSVのユーザ情報を一括で users テーブルにぶち込むためのスクリプトを作りました。作った後にタイムゾーンとかの設定が users テーブルじゃなくて user_preferences にあることを知りましたが、あまり細かいことを追求する時間はなかったので、とりあえずcodereposにアップしました。ご自由にお使い下さい。
Redmine(というかRails)的にこういう類のスクリプトをどこに保存するべきかわからなかったので、codereposには platform/redmine/contrib というディレクトリをでっち上げています。「作法的にはここだろ」というものがあれば教えてもらえると嬉しいです。
Railsは ver 1.2以来さわっていなかったのですが、ActiveRecordは以外に変わっていなかったのですんなり書けました。でもPerl の手癖が抜けなくて 変数宣言に my つけたり、行末にセミコロンつけたり(これは動くけど)で大変でした。
ここ最近Nagiosを設定する機会があったのですが、なかなか設定を覚えるのに時間がかかったので備忘録的な自分へのメモ。
そもそもNagiosって?
サーバや特定のポートの死活監視を行うソフトウェア。死んでいる場合は設定した連絡先にメールを送ったりすることができます。昔はNetSaintという名前でした。
インストール
ソースからインストールする場合はNagios3.0xで監視サーバを作る – 02 Nagiosインストールの前準備を参考にすると良いでしょう。
用語
- host: 監視対象となるサーバ、ルータなど
- hostgroup: Webインターフェースでhostをグループ化して表示するためのもの
- service: hostで動いているサービス。HTTP, SMTP, FTPなどのポートでLISTENしているサービスであったり、pingの応答性やディスクの空き容量などが該当する。ようは監視する対象となるもの。
- servicegroup: Webインターフェースでserviceをグループ化して表示するためのもの
- contact: serviceに問題がある際の通知先の定義。
- contactgroup: 複数のcontactをグループ化したもの。serviceに問題がある場合、このcontactgroupで定義した連絡先に通知を送る。
- timeperiod: serviceの監視を行う時間帯や問題があった時に通知を送る時間帯の定義
- command: サービスをチェックする時のコマンドの定義
servicedependencyとかserviceescalationは必要性が良くわかってないので使ってません。
定義の継承
監視対象のホストやサービスを定義するために
define host {
name hoge
}
のように定義を書きますが、このhostやserviceの定義に必要な項目がけっこう多いです。そのためか、Nagiosでは「定義の継承」という仕組みがあって、テンプレート的に不完全な定義を作っておいてそれを継承する、ということができます。
と書いてもわかりにくいので実際の例を書くと
define host {
name myserver
notifications_enabled 1
event_handler_enabled 1
flap_detection_enabled 1
process_perf_data 1
retain_status_information 1
retain_nonstatus_information 1
check_command check-host-alive
max_check_attempts 3
notification_interval 20
notification_period 24x7
notification_options d,u,r
contact_groups mycontact-group
check_command check-host-alive
register 0 ; これが重要
}
な感じで host の定義のテンプレートを作っておくと、実際の host の定義は以下のように簡潔なものになります。
define host {
use myserver ; use で使用するテンプレートを指定
host_name localhost
alias localhost
address 127.0.0.1
}
Nagiosの設定項目は多岐にわたるので、このような定義の継承の仕組みは、設定の記述を簡略化する目的では非常に便利です。
設定ファイルの構造
Nagiosが例えば /usr/local/nagios にインストールされている場合、設定ファイルはetc/nagios.cfg になります。下記のように cfg_dir=hogehoge.cfg という感じで、このファイルからさらに色々なファイルをインクルードしています。
cfg_file=/usr/local/nagios/etc/objects/commands.cfg
cfg_file=/usr/local/nagios/etc/objects/contacts.cfg
cfg_file=/usr/local/nagios/etc/objects/timeperiods.cfg
cfg_file=/usr/local/nagios/etc/objects/templates.cfg
自分はデフォルトの設定ファイルを汚したくないので
- objects/mycommands.cfg: 独自のcommandを定義しているファイル
- myconfig.cfg: hostやserviceの定義のテンプレート+contactgroupの定義
- hosts/localhost.cfg: localhostのhost, serviceの設定
という風にファイルを作ってこれらを nagios.cfg からインクルードしています。
追加で定義しているコマンド
httpsとmemcached(ポート11211)を監視するコマンドを自分用に追加しています。
# 'check_https' command definition
define command {
command_name check_https
command_line $USER1$/check_http -I $HOSTADDRESS$ $ARG1$ -S
}
# 'check_memcached' command definition
define command {
command_name check_memcached
command_line $USER1$/check_tcp -H $HOSTADDRESS$ -p 11211 -t 5
}
まとめ
Nagiosは設定項目が複雑な分色々とカスタマイズできるので、あらゆる類のサービスの監視ができるでしょう。また、バージョンも3になって機能的にも非常に枯れたソフトウェアになっているので、割と安心して使えるものだなと感じました。

2年間使っていたau W43HをW63Hに機種変しました。W43Hに特に不満はなかったのですが、さすがに2年間変えてないのと変な強迫観念が生まれてきたので…
W63Hは最新機種の一つ前の世代ですが、普通に使う分には問題はない感じですが、幾つか特徴を書くとこんな感じ。
解像度が高い
3.1インチの液晶でかつ解像度が高いです。画面は非常に見やすいです。もちろんワンセグも綺麗に見えます。
日本語変換が優秀
W43Hと比べると、変換の予測の精度が高い気がします。
W43Hに比べると動作がもっさり
メールやezwebを開いたりキャンセルボタンを押したりした時に一瞬「うっ」っていう感じで待たされます。自分的にはギリギリストレスにはならないぐらいですが、これがKCP+の代償なんでしょう。
バッテリーの減りが早い
一日中ヘビーに使っていると、バッテリーのメモリが3から2になってしまうぐらい減りが早いです。
自分はメール+電話+Web見るぐらいにしか使わないので、今のところは満足です。正直iPhoneに変えようかとも思ったのですが、GoogleのAndroid携帯がauから出るはずなので、これに期待しています。
Now Loading...
↑を使ってMacBookにデルの20インチのモニタを接続してみました。マウスカーソルをメインウィンドウの左側に持っていくと2つ目のディスプレイにカーソルが移動する、いわゆる「デュアルディスプレイ」環境になったのでこの点は満足なのですが、Spacesとシームレスに統合できないのがちょっと残念です。というのは、普段MacBookを使っている場合はSpacesの2番目の領域にiTunes、3番目の領域にVMware Fusion、というように切り替えているのですが、2番目の領域に2つ目のモニタを割り当てられれば、モニタを外している場合でも特にそれを意識する必要がない、ということです。
とりあえず↓のようにSpaces開いてセカンドモニタに表示しておきたいアプリケーションを移動できることはわかったので、これでしのいでみようと思います。

発売されてから2ヶ月ぐらい経ってしまったのですが、ようやっと読み終わりました。雑誌ということで、普通の書籍より先端的な情報が入っていて非常に参考になる雑誌でした。
- バーティカル検索などの昨今の検索エンジンの状況
- 検索エンジンとユーザの消費活動の関係
- SEOの基礎(リンク構造、titleやmetaタグ、URLの構造)
- キーワードの選び方
- 専門家による検索結果順位決定の要因分析
などなど。個人的に「へぇ」と思ったのは、meta keywordsタグでのキーワードの使用はもはや検索結果の順位にはもはや影響ないとか、meta descriptionタグでのキーワードの使用も順位にはあまり関係ないとかそのあたりでした。この2つってわりとSEOの中では常套手段的なものだと思っていたのですが、小手先のテクニックでできることなのであまり意味がないのですね。
最近SEOをかじっていて思うことは、「検索してやってくる人のことを考えてページを作るべし」ということでした。至極当たり前のことですが、ユーザがどういうキーワードでランディングして、どのような動きをしてサイトを離れていくかを徹底的に分析することで1セッションあたりのPVにも大きく影響が出たりしますし、その結果として検索結果の順位もよくなっていくのかなと。meta descriptionが検索結果には影響がないと言っても、ここにキーワードを入れておくと検索結果一覧でキーワードがハイライトされるので、結果的にユーザは「おっ」と思ってクリックしてくれたりするわけです。
なので、やっぱりユーザビリティを考えれば自然とSEO効果っていうのは出てくるんじゃないかなぁと思っています。
はじめに – Phusion Passengerとは
Redmine 0.8.0をインストールの記事を書いた直後に0.8.1がリリースされていたので、アップデートがてらPhusion Passengerを使ってApacheでRemineを動かしてみたいと思います。Phusion Passengerとは、別名mod_railsとも呼ばれるApacheモジュールとして実装されたRailsの実行環境で、インストールや設定が簡単なのが特徴です。
Phusion Passengerのインストール
まずは passenger をビルドするために Apache の apxs などをインストールしておきます。例によって環境は Ubuntu 8.10 です。
$ su -
# aptitude install apache2-dev ruby1.8-dev
# export APXS2=/usr/bin/apxs2
終わったらpassengerのインストールです。といっても以下のコマンドを実行するだけですが。
# gem install passenger
# passenger-install-apache2-module
インストールが完了すると下記のように Apache の httpd.conf に書き込む設定内容が表示されるので、これを /etc/apache2/sites-available/default にコピペします。
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6
RailsRuby /usr/bin/ruby1.8
あとは DocumentRoot を Redmine のインストールディレクトリ下の public に設定します。
Redmineが/var/www/redmineにインストールされている場合は
DocumentRoot /var/www/redmine/public
と設定します。なお、DocumentRoot を /var/www に設定しておき、http://localhost/redmine/ のように Redmine をサブディレクトリとして扱いたい場合は以下のようにRedmine のインストールディレクトリにシンボリックリンクを張ります。
# ln -s $REDMINE_ROOT/public /var/www/redmine
そして Apache の設定ファイルに
を追加します。これで /redmine/ のURLでアクセスできるようになります。
というわけで設定が終わったら Apache を起動してみましょう。
# /etc/init.d/apache2 restart
今回は http://ホスト名/redmine/ でアクセスしてみます。どうでしょう?RedmineのTOPページが表示されたでしょうか?404や403エラーになる場合、Apacheのエラーログが /var/log/apache2/error.log にあるので、これを見てみると原因が分かるかもしれません。
Passengerの詳細な設定項目についてはPhusion Passenger users guideに詳しく書いてあるので一読してみると良いと思います。
コメント