joppot

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

サーバ

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

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


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

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

関連記事

td-agent-uiのセットアップとfluent-catで動作確認

English 日本語 概要 みなさんこんにちはcandleです。今回はtd-agent-uiのセットアップと動作確認をしてみたいと思います。 td-agentはfluentdをよりサーバで運用しやす …

sshコマンドをaliasかssh configを使って短縮する

概要 みなさんこんにちはcandleです。今回はsshの接続先のホスト名を短くする方法です。 ssh接続は非常に強力なネットワークツールですが、接続先の指定がやや面倒ですね。それを単純にする方法をまと …

gitのリモートプライベートリポジトリを公開鍵認証を使って環境構築する

概要 みなさんこんにちはcandleです。 今回はgitのリモートプライベートリポジトリを作ってみたいと思います。 リモートリポジトリと言えば、Githubとかbitbucketが有名だと思います。会 …

awsのec2にtd-agentの環境を構築する

English 日本語 概要 みなさんこんにちはcandleです。 今回はec2にtd-agentの環境を構築したいと思います。 基本的には前回のCentOS6.5に構築するのと同じになります。 前提 …

macにmemcachedをインストールする方法と動作確認

概要 memcachedはrailsやphpのセッションを保持しておく時に使うソフトというかサーバ的なものです。一般にSNSやログイン式のサービスを提供する時はセッションというのを持ちます。セッション …

  • English
  • 日本語

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