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

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

関連記事

React + S3 + Route53 + CloudFrontでSSL使ってHTTPS化

概要 みさんさんこんにちはcandleです。今回はS3にデプロイしたReact webの通信をSSL化してみたいと思います。 最近はAPIサーバとReactフロントエンドを分離してwebサービスを提供 …

fabricでvagrantのデフォルトの秘密鍵を使ってサーバにアクセスする

概要 みなさんこんにちはcandleです。今回はfabricを使ってvagrant上のvmにアクセスする方法を紹介します。様々なサイトを閲覧すると、あまりvagrantのデフォルトの鍵を使用して、fa …

awsのec2上でredmineをnginxで使用する方法

概要 みなさんこんにちはcandleです。今回はredmineをec2上で使用する方法を紹介します。 redmineはrailsで作られたwebアプリケーションです。railsで作られているということ …

CentOS6.5にcomposerをインストールする

概要 みなさんこんにちはcandleです。cakephpではphpのライブラリ管理ツールcomposerと連帯して、便利に必要なライブラリを導入できます。 例えば、cakephpの標準テストツールph …

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

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

  • English
  • 日本語

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