joppot

コピペで絶対動く。説明を妥協しない

サーバ

centos6.5にdaemon toolsをインストールする

投稿日:2014年7月22日更新日:

Pocket

fjoi4tga

概要

みなさんこんにちはcandleです。今回はdaemon toolsというcent osのソフトウェアを入れてみましょう。

daemon toolsというのは簡単に言えば、サーバの電源をオンにしたら、自動的にソフトウェアを起動するものです。cent osにはchkconfigという便利なコマンドがあって、httpdやmysqldなどはそれを使って自動起動ができます。

しかし、gemやrvmやmakeを使ってソフトウェアを入れた場合、chkconfigが使えない事があります。

サーバが立ち上がったら、自動的にソフトウェアを動かすというすごく簡単なことなのですが、これをやろうとするとけっこう大変です。やっていきましょう。

今回も様々なサイトのやり方を参考にさせてもらいました。


前提

CentOSが自由に動かせる環境がある。
私はvagrantのCentOS6.5を使います。


必要なcentosのソフトウェアをインストールする

もしも、gccとwgetがまだCentOSに入っていなかったら、下のコマンドでインストールしましょう。

yum install gcc wget


デーモンツールをダウンロードする

それではdaemon toolsをダウンロードしましょう。
daemon toolsをダウンロードするpackageフォルダをルートディレクトリに作ります。
packageフォルダの権限を1755にします。

sudo mkdir /package
sudo chmod 1755 /package

mkdirpackage

今作成した/packageフォルダに移動します。

cd /package

wgetコマンドでtarファイルをダウンロードします。
tarファイルを解凍します。

sudo wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
sudo tar -xzvf daemontools-0.76.tar.gz

downloaddaemontool

解凍されるとadminというフォルダができます。tarファイルはもう不要なので削除しましょう。

ls
sudo rm daemontools-0.76.tar.gz

rmtarfile


daemon toolsをインストールする

adminフォルダのdaemontools-0.76フォルダに移動します。

cd admin/daemontools-0.76

srcフォルダがあると思います。

srcfolder

このフォルダの中にはdaemon toolsで使うソースコードが入っているのですが、そのsrcフォルダの中のconf-ccに対して書き込みを行います。私も参考サイトのコピペでやっているので、詳しい処理はわからないのですが、どうやら、errorに関する設定を上書きしているっぽいですね。

sudo echo gcc -O2 -include /usr/include/errno.h > src/conf-cc

confpatch

これでインストール準備が整いました。
srcフォルダのとなりに紛らわしいのですがpackageフォルダがありますね。packageフォルダの中のinstallコマンドを実行すればdaemontoolsがインストールされます。
インストールコマンドを実行します。

sudo ./package/install

installdaemontool

インストールが完了しました。


設定ファイルを記述する

上にも書いたように、daemontoolsはとても古いソースです。centos6以降ではsvscan.confにある設定を書かないと動かないとのことです。

編集しましょう。/etc/init/svscan.confをエディタで開きます。私は例によってemacsで開きますが、viでもvimでもなんでも良いです。

sudo emacs /etc/init/svscan.conf

下の内容を記述して保存しましょう。

start on runlevel [12345]
respawn
exec /command/svscanboot

svscanconf

最後に下のコマンドを実行すればdaemontoolsが使えるようになります。

sudo initctl reload-configuration
sudo initctl start svscan

startsvs

下のコマンドでsvscanが動いているか確認しましょう。

ps aux | grep svscan

runningsvscan

動いていますね。


まとめ

具体的な使い方は別の記事で紹介していと思います。今後、起動させるものとしてはmemcachedやfluentdをこのdaemontoolsを使って自動起動にしてみたいと思います。

スポンサードリンク

「為になったなぁ」と思ったら、シェアお願いします。

-サーバ
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

ElastiCacheのmemcachedとEC2上のrailsとdalli-elasticacheを使ってキャッシュ管理する

概要 皆さんこんにちはcandleです。今回はaws上にあるElastiCacheというサービスを使って railsのキャッシュを管理したいと思います。 キャッシュというのはwebサービス上でよく使う …

ubuntuでnginxの起動と最低限のコマンド

概要 今回は、nginxの起動と最低限のコマンドをまとめました。 前提 nginxがインストールされている nginxの起動と停止と再起動 nginxはインストールした当初の設定ではubuntuを起動 …

redmineにclose button pluginを入れて終了したチケットをボタン1つで閉じる

概要 みなさんこんにちはcandleです。今回はとても便利なチケットを終了させるボタンを、表示できるプラグンの導入の仕方を紹介します。 チケットは一般に以下のコマンドのみチケット詳細で表示されています …

MAMPでphpのshell_execを使用してunixコマンドを実行できない場合の対処(imagemagick,convert)

概要 みなさんこんにちはcandleです。今回はちょっと問題が起きてshell_execがうまくいかないときのトラブルシューティングをまとめます。 私はMAMPをバージョンアップする前は、phpのsh …

apache2.4でvirtualhost毎に環境変数を定義しphpで使用する方法

English 日本語 概要 みなさんこんにちはcandleです。 今回はapache2.4でバーチャルホスト毎に環境変数を定義して、それをphp側で受け取る方法を紹介します。 例えば、wordpre …

  • English
  • 日本語

プロフィール


ベンチャー企業のCTOをやってます。大学時代にプログラミングを始め、javaから入門し、C++へて、PHPへと進み、会社ではRailsを使用。自動化が大好きなプログラマー

スポンサードリンク

アーカイブ